unet网络详解

这篇具有很好参考价值的文章主要介绍了unet网络详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Unet

  • 参考文献:U-Net: Convolutional Networks for Biomedical
    Image Segmentation
  • 作者:Olaf Ronneberger, Philipp Fischer, and Thomas Brox

什么是Unet模型

Unet是一个优秀的语义分割模型,其主要执行过程与其它语义分割模型类似。与CNN不同的之处在于CNN是图像级的分类,而unet是像素级的分类,其输出的是每个像素点的类别。

Unet损失函数

主要部分:softmax激活函数 + 带权重的交叉熵损失函数 + 权重计算函数

softmax激活函数

softmax激活函数将每个像素点的输入特征与权重做非线性叠加。每个像素点经过softmax的处理后产生的输出值个数等于标签里的类别数。softmax将每个像素点的输出值变换成值为正且和为1的概率分布,从而得到每个像素点中每个类的置信度。

unet网络模型,网络,人工智能,机器学习

交叉熵损失函数

交叉熵损失函数:用来衡量两个概率分布差异的测量函数

unet网络模型,网络,人工智能,机器学习

在上式中,yc表示样本的真实分布,其值要么为0,要么为1,Pc表示样本的预测分布。

本论文使用的是带边界权重的交叉熵损失函数

unet网络模型,网络,人工智能,机器学习

p是经softmax处理后的输出值;

l :Ω → {1, . . . , K},是每个像素的真实标签;

pl(x)(x):点x在对应的label给出的那个类别的输出的激活值。

w : Ω → R 是在训练过程中添加给每个像素的权重 。

权重计算函数

unet网络模型,网络,人工智能,机器学习

w(x)这个公式主要参考正态分布的式子。
wc(x)是预先计算每个地面真值分割,用来补偿训练数据集中每个类别的像素的不同频率;
d1是距离最近细胞边界的距离
d2是距离第二近细胞边界的距离

当d1、d2都等于0时,后面部分有最大值,且d1、d2越小,后面部分越大,即整个权重越大。当d1、d2越小,意味着越靠近细胞边界,细胞边界所占的权重越大,可以迫使网络学习。

权重的作用:权重可以调整图像中某个区域的重要程度,在计算损失的过程中,给两个细胞重合的边缘部分增加了损失的权重,以此让网络更加注重这类重合的边缘信息。

总结:首先使用softmax操作得到每个类的置信度,然后使用交叉熵来衡量预测和标号之间的差距。

Unet主要结构

unet网络模型,网络,人工智能,机器学习

Unet可以分为三个部分,如上图所示:

第一部分是主干特征提取部分,我们可以利用主干部分获得一个又一个的特征层,Unet的主干特征提取部分与VGG相似,为卷积和最大池化的堆叠。利用主干特征提取部分我们可以获得五个初步有效特征层,在第二步中,我们会利用这五个有效特征层可以进行特征融合。

第二部分是加强特征提取部分,我们可以利用主干部分获取到的五个初步有效特征层进行上采样,并且进行特征融合,获得一个最终的,融合了所有特征的有效特征层。

第三部分是预测部分,我们会利用最终获得的最后一个有效特征层对每一个特征点进行分类,相当于对每一个像素点进行分类。

主干特征提取网络

Unet的主干特征提取部分由卷积层+最大池化层组成,整体结构与VGG类似。

unet网络模型,网络,人工智能,机器学习当输入的图像大小为512x512x3的时候,具体执行方式如下:
1、conv1:进行两次[3,3]的64通道的卷积,获得一个[512,512,64]的初步有效特征层,再进行2X2最大池化,获得一个[256,256,64]的特征层。
2、conv2:进行两次[3,3]的128通道的卷积,获得一个[256,256,128]的初步有效特征层,再进行2X2最大池化,获得一个[128,128,128]的特征层。
3、conv3:进行三次[3,3]的256通道的卷积,获得一个[128,128,256]的初步有效特征层,再进行2X2最大池化,获得一个[64,64,256]的特征层。
4、conv4:进行三次[3,3]的512通道的卷积,获得一个[64,64,512]的初步有效特征层,再进行2X2最大池化,获得一个[32,32,512]的特征层。
5、conv5:进行三次[3,3]的512通道的卷积,获得一个[32,32,512]的初步有效特征层。
unet网络模型,网络,人工智能,机器学习

为什么是572x572,不是512x512?

unet网络模型,网络,人工智能,机器学习

因为图像边界的图像块没有周围像素,卷积会使图像边缘处的信息丢失,因此要对周围像素采用了镜像扩充。

加强特征提取结构

利用第一步我们可以获得五个初步的有效特征层,在加强特征提取网络这里,我们会利用这五个初步的有效特征层进行特征融合特征融合的方式就是对特征层进行上采样并且进行堆叠

为了方便网络的构建与更好的通用性,我们的Unet和上图的Unet结构有些许不同,在上采样时直接进行两倍上采样再进行特征融合,最终获得的特征层和输入图片的高宽相同。

unet网络模型,网络,人工智能,机器学习

利用特征获得预测结果

利用特征获得预测结果的过程为:
利用一个1x1卷积核进行通道调整,将最终特征层的通道数调整成num_classes。

unet网络模型,网络,人工智能,机器学习

代码复现

数据集:ISBI

模型训练:

unet网络模型,网络,人工智能,机器学习

测试集:
unet网络模型,网络,人工智能,机器学习
unet网络模型,网络,人工智能,机器学习文章来源地址https://www.toymoban.com/news/detail-784057.html

到了这里,关于unet网络详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 数据预处理与模型评估【机器学习、人工智能、实际事例】

    在机器学习领域,数据预处理和模型评估是两个至关重要的步骤。它们确保我们构建的机器学习模型能够从数据中有效地学习并做出准确的预测。本文将详细介绍数据预处理和模型评估的概念,并通过现实中的例子来阐述它们之间的密切关系。 什么是数据预处理? 数据预处

    2024年02月07日
    浏览(69)
  • 人工智能|机器学习——循环神经网络的简洁实现

    循环神经网络的简洁实现 如何使用深度学习框架的高级API提供的函数更有效地实现相同的语言模型。 我们仍然从读取时光机器数据集开始。 定义模型 高级API提供了循环神经网络的实现。 我们构造一个具有256个隐藏单元的单隐藏层的循环神经网络层 rnn_layer 。 事实上,我们

    2024年02月04日
    浏览(64)
  • 模型训练:优化人工智能和机器学习,完善DevOps工具的使用

    作者:JFrog大中华区总经理董任远 据说法餐的秘诀在于黄油、黄油、更多的黄油。同样,对于DevOps而言,成功的三大秘诀是自动化、自动化、更高程度的自动化,而这一切归根结底都在于构建能够更快速地不断发布新版软件的流程。 尽管人们认为在人工智能(AI)和机器学习

    2024年02月10日
    浏览(42)
  • 【AI】了解人工智能、机器学习、神经网络、深度学习

    一、深度学习、神经网络的原理是什么? 深度学习和神经网络都是基于对人脑神经系统的模拟。下面将分别解释深度学习和神经网络的原理。 深度学习的原理: 深度学习是一种特殊的机器学习,其模型结构更为复杂,通常包括很多隐藏层。它依赖于神经网络进行模型训练和

    2024年02月06日
    浏览(79)
  • 探索人工智能 | 模型训练 使用算法和数据对机器学习模型进行参数调整和优化

    模型训练是指 使用算法和数据对机器学习模型进行参数调整和优化 的过程。模型训练一般包含以下步骤:数据收集、数据预处理、模型选择、模型训练、模型评估、超参数调优、模型部署、持续优化。 数据收集是指为机器学习或数据分析任务收集和获取用于训练或分析的数

    2024年02月12日
    浏览(59)
  • 机器学习模型的可解释性:增加对人工智能系统的信任和理解

            为了以道德和值得信赖的方式使用人工智能,研究人员必须继续创建平衡模型复杂性和易于解释的方法。         机器学习模型在各个领域的使用都取得了重大进展,包括自然语言处理、生成式人工智能和自主系统等。另一方面,随着模型复杂性和规模的增加

    2024年02月13日
    浏览(44)
  • 【人工智能与机器学习】基于卷积神经网络CNN的猫狗识别

    很巧,笔者在几月前的计算机设计大赛作品设计中也采用了猫狗识别,目前已推国赛评选中 但当时所使用的方法与本次作业要求不太一致,又重新做了一遍,下文将以本次作业要求为主,介绍CNN卷积神经网络实现猫狗识别 猫狗识别和狗品种识别是计算机视觉领域中一个重要

    2024年02月13日
    浏览(54)
  • 【人工智能】使用Python构建神经网络模型预测房价

    目录 一 、实验目的 二 、实验内容 三 、实验原理 四 、实验过程 数据处理 1.1数据读入 1.2缺失值处理 1.3数据归一化 1.4数据集乱序 1.6数据集分批次 模型设计与配置 2.1 构建前向网络结构,定义假设空间 2.2初始化参数w和b,使用标准正态分布随机生成 训练网络 3.1外层循环

    2024年02月03日
    浏览(47)
  • OpenAI的人工智能语音识别模型Whisper详解及使用

            拥有ChatGPT语言模型的OpenAI公司,开源了 Whisper 自动语音识别系统,OpenAI 强调 Whisper 的语音识别能力已达到人类水准。         Whisper是一个通用的语音识别模型,它使用了大量的多语言和多任务的监督数据来训练,能够在英语语音识别上达到接近人类水平的鲁

    2024年02月09日
    浏览(64)
  • 人工智能(Pytorch)搭建模型2-LSTM网络实现简单案例

     本文参加新星计划人工智能(Pytorch)赛道:https://bbs.csdn.net/topics/613989052  大家好,我是微学AI,今天给大家介绍一下人工智能(Pytorch)搭建模型2-LSTM网络实现简单案例。主要分类三个方面进行描述:Pytorch搭建神经网络的简单步骤、LSTM网络介绍、Pytorch搭建LSTM网络的代码实战 目录

    2024年02月03日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包