深度学习之卷积神经网络学习笔记二

news2025/3/10 14:45:20

1. 引言

在学习笔记一中,我们介绍了几种常用的分类模型框架,如VGGNet,GoogleNet,和ResNet,并且介绍了几种简单的分割模型。如FCN,UNet,SegNet和Deeplab。从深度学习兴起到现在,模型一直朝着以下几个方向发展:

1模型特征提取能力;

2深层次模型构建问题;

3模型效率和模型体量问题。

2. 分割模型

1. Deeplab系列

学习笔记一中,我们介绍了Deeplab-v1版本,Deeplab-v1使用了空洞卷积,减少池化层的同时,扩大模型的感受野,可以在很大程度上还原了图像的低层特征。

在Deeplab-v2中,受到SPP-Net的金字塔结构启发,采用多级金字塔结构,使用多尺度空洞卷积,构成ASPP结构,在v1和v2结构中,还使用了条件随机场CRF来优化分割结果。Deeplab-v3优化了ASPP结构,在v2版本中,由于空洞卷积的rate设置过大(论文中使用的是6,12,18),3×3的空洞卷积未能考虑邻域信息,会退化成1×1的卷积核。于是v3版本中加入了一个并行1×1的卷积核分支,再加上原来rate=6,12,18的卷积核并行,最后使用concat函数进行特征融合。在Deeplab-v3+中,传统卷积网络被替换成了深度可分离卷积,Encoder继续使用了Deeplab-v3的编码器,在后面又加入了传统分割的上升采样Decoder结构

在传统卷积计算中,每个卷积核与输入层特征图相乘后再相加,输出特征图是由卷积核个数决定,如此实现特征提取。深度可分离卷积的卷积核个数和输入特征图相等,每个卷积核和相对应的特征图相乘,即输入特征图与输出特征图相等,如此减少了相乘后相加的操作,大大减少了计算量。在框架上,Deeplab-v3+使用了Xception结构,并用步长为2的深度分离卷积替代了最大池化层,减少特征的损失

2. Global Convolutional Network(GCN)

为了解决感受野问题,GCN参考了FCN的网络结构,在每个池化层操作后,GCN使用了与特征图大小一致的卷积核进行全局卷积,并与经过反卷积的特征图融合。全局卷积操作在池化之前,扩大了模型的感受野,并借助FCN的思想,将全局感受野与反卷积结果融合,减少信息损失的同时,增强了分割结果图的细节信息。然而,FCN参数过多,训练较慢,GCN加入的大卷积操作会进一步增大计算量,影响模型的效率

3. Discriminative Feature Network(DFN)

DFN主体框架是ResNet,主要包括两个子网络SmoothNetwork和BorderNetwork。SmoothNetwork网络负责解决类内不一致问题,即类内部出现一些噪音和错误。BorderNetwork网络用于判别类间差距,强化类别间判别效果。在SmoothNetwork网络中,使用了改进的Residual模块进行训练。BorderNetwork中加入了Attention模块,优化了各个通道的权重,提高了特征分类的准确性。对于网络训练,两个模块的loss同时计算,通过一个参数K调整其占的权重。

4. ExFuse架构

在之前的网络结构中,低级特征并不具有语义信息,而一般的模型直接将不具备语义信息的低级特征和经过多层卷积的高级语义特征进行融合,这种方式虽然在一定程度上考虑了低级特征,缺没有顾及到低级特征和高级特征融合时存在的特征不一致问题。ExFuse在结构上参考了U-net的编码-解码结构,在编码结构中,每层低级特征中引入多层语义监督(SS)模块,在编码前期使用辅助监督的方式完善低级特征。在特征融合模块,使用了高级语义嵌入(SEB)模块,将高层语义信息进行上采样并与低层特征图进行点乘融合,使得特征图既具有语义的同时,还具备低层特征的细节信息。在经过特征融合后,加入了GCN,提高感受野的同时嵌入更多的邻域信息。

5. Bilateral Segmentation Network(BiseNet)

分割网络一直在探究低层特征和高层特征的融合问题。在BiseNet中,提取全局细节信息的Spatial Path的模块和提取语义信息的Context Path模块并不是通过简单的相加进行融合,而是通过一个Feature Fusion Module(FFM)模块整合后接入一个训练模型,让其进行自训练,从而达到融合效果。在特征融合后,同样引入了注意力机制。特别地,在Loss function中,Context Path的Loss是作为辅助判别函数来进行计算。

6. Deep Feature Aggregation Network(DFANet)

DFANet是一种轻量级网络结构,在Encode结构中,同样使用的深度可分离卷积网络减少卷积参数。整个DFANet的特征处理网络有两种方法:子网特征聚合和子阶段聚合。子网特征聚合负责将每个backbone(图中虚线框)输入到下一个backbone进行特征聚合。子阶段聚合负责将本阶段经上采样后高级语义特征和本阶段正常下采样的特征聚合(图中C字母部分)。为了维持模型的感受野, 在模型的fc-attention模块,使用的是分类模型的预训练参数。此操作的原因是分类数据集远远多于分割数据集,因此全连接参数训练得更为彻底。

7. RefineNet

RefineNet在总体结构上延续了Unet的思路,但是在特征融合上并不是像U-net网络中直接将下采样的特征图和上采样后的语义特征图进行特征融合,而是使用了一个Refine模块进行处理。在RefineNet的下采样阶段使用了ResNet作为模型的框架,对于每次下采样后,都会有一个Refine模块进行特征融合处理。Refine模块总共包括三个子模块:第一个RCU模块用于预训练调整权重;MRF模块则是特征融合模块,主要作用是将经过预训练的特征图和上采样模块的特征进行融合。CRP模块是为了通过大池化窗口捕捉语义信息,最后通过一个RCU模型进行融合训练。

3. 总结

本篇主要讲了各种分割模型的优缺点,深度学习中每年会有模型的创新,但是在其思想上还是会有类似的地方,理解这些模型的内核思想,是了解深度学习模型,构建自己模型的重要方法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/386197.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

UML1——用图说话

目录 一、前言 二、使用工具 三、UML面对对象 四、UML图标 4.1 事物 4.2 关系 4.3 关系线数字 4.4 关系图示例 五、UML开发思路 一、前言 不管是系统项目工程师,还是开发人员,熟悉使用UML都必不可少。UML 是一种为面向对象开发系统的产品进行说明…

2月刚上岸字节跳动测试岗面经

这时候发应该还不算太晚,金三银四找工作的小伙伴需要的可以看看。 一、测试工程师的工作是什么? 测试工程师简单点说就是找bug,然后反馈给开发人员,不要小看这个工作。 首先很明显的bug开发人员有时候自己就能找到,测…

一文2000字从0到1学习接口自动化测试必备知识(建议收藏)

在所有的测试中,接口测试是必不可少的一项。有效且覆盖完整的接口测试,不仅能保障新功能的开发质量,还能让开发在修改功能逻辑的时候有回归的能力,同时也是能优雅地进行重构的前提。编写接口测试要遵守哪些原则?测试代…

Python读取文字并点击对应的图片

本来想写了一大堆今天遇到的需求,想想还是删了,我直接说出本文的功能,读取A列的Excel(全是名字),然后点击名字所对应的图片: 名字所对应的图片 直接看视频,是不是你想要的结果! 我循环了三次&a…

【JAR包打包为EXE】javafx/java项目(适用jdk1.8)通过Gradle插件打包为exe,包含jre,客户机无需安装JDK(含代码)

前言: 通常在采用javafx或tornadofx等框架编写的桌面软件后,若要分发给客户机进行使用,就需要先在目标客户机安装合适版本的JDK,对于客户机来说并不需要关注这一步骤,这也增加了多台客户机分发及使用的成本&#xff0…

宾语从句it做形式主语的句子

It代替从句作形式主语的常见句型 一、it 代替连词 that 引导的从句作形式主语。 1、it be 过去分词 that 从句: It’s said that Tom has come back from abroad . It was reported that dozens of children died in the accident . 可用于该句型的过去分词还有&#xf…

Qt学习2-Qt Creator新建项目小tips(哔站视频学习记录)

放送两个小tips: 1、MinGW和MSVC的区别 QT学习笔记(二):QT MinGW 和 MSVC 编译方式_Leon_Chan0的博客-CSDN博客 2、如何安装QT对应版本的MSVC (1)问题描述:Qt5.12.8支持MSVC2015和MSVC2017,但是系统安装的是Visual…

大数据技术——函数式编程基础

函数定义与使用定义函数最通用的方法是作为某个类或者对象的成员,这种函数被称为方法。其定义的基本语法为:def 方法名(参数列表):结果类型方法体}字面量包括整数字面量、浮点数字面量、布尔型字面量、字符字面量、字符串字面量、符号字面量、函数字面量…

hdfs的读写数据流程

读: (1)客户端通过DistributedFileSystem向NameNode请求下载文件,NameNode通过查询元数据,找到文件块所在的DataNode地址。 (2)挑选一台DataNode(就近原则,然后随机&…

学习机器学习应该看哪些书籍?

机器学习是一种人工智能技术,它通过利用计算机算法和数学模型,使计算机系统能够自动从数据中学习,从而不断改进其性能。它是一种数据驱动的方法,可以让计算机从经验中学习,而无需明确地编程。具体来说,机器…

python学习——【第一弹】

前言 Python是一种跨平台的计算机程序设计语言,是ABC语言的替代品,属于面向对象的动态类型语言,最初被设计用于编写自动化脚本,随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。 从这篇…

怎样成为一名黑客:六个方法让你无所不能

黑客这个名字一直是伴随着互联网发展而来,给大家的第一印象就是很酷,而且技术精湛,在网络世界里无所不能。目前几乎所有的公司企业甚至国家相关部门都会争相高薪聘请技术精湛的黑客作为互联网机构的安全卫士,所以黑客也是很多人比…

【老王读Spring Transaction-7】一个数据源的事物管理配置 与 多数据源的事物管理配置

前言 大多数 Spring 应用程序只有一个数据源,只需要一个事务管理器(TransactionManager)。 但是在多个数据源的情况下,我们就需要在一个应用程序中配置多个独立的事务管理器。 我们可以通过 Transactional 的 value 或 transactionManager 属性来指定让…

shell数值计算

P23 回顾shell基础知识 shell执行多条命令 一行内,分号分割多条命令。比如cd /tmp ;echo hello ;cd - 其中cd -为回到此行命令开始前的目录多行echo和转义字符 双引号里输出$n等特殊字符时,实用\转义,来原样输出字符单引号中字符不进行替换&…

ES6的简单使用

1.ES6基本介绍1996 年 11 月,JavaScript 的创造者 Netscape 公司,决定将 JavaScript 提交给标准化组织 ECMA,希望这种语言能够成为国际标准。次年,ECMA 发布 262 号标准文件(ECMA-262)的第一版,…

Vue表单数据修改与删除

学习来源:视频p6 书接上文 目录页面修改修改对话框视频教程的做法后端提供接口前端调用接口修改完成后提交删除功能后端开设接口前端调用最终成果展示页面修改 将之前的 BookManage 页面的按钮改为想要的功能 可以注意到修改按钮的标签以及绑定了事件 handleClick…

RK3568核心板以太网大数据测试报告-万象奥科

1. 测试对象HD-RK3568-IOT 底板基于HD-RK3568-CORE工业级核心板设计(双网口、双CAN、5路串口),接口丰富,适用于工业现场应用需求,亦方便用户评估核心板及CPU的性能。适用于工业自动化控制、人机界面、中小型医疗分析器…

docker环境下docker-compose一键式搭建fastdfs文件存储服务系统

前言 本节内容我们使用docker-compose一键式搭建一套fastdfs服务,实现docker环境下的文件存储服务,在开始本节内容之前,我们需要提前安装好docker和docker-compose环境。fastdfs是一套分布式的文件存储服务系统,主要有tracker和s…

pipenv的基本使用

一. pipenv 基础 pipenv安装: pip install pipenvpipenv常用命令 pipenv --python 3 # 创建python3虚拟环境 pipenv --venv # 查看创建的虚拟环境 pipenv install 包名 # 安装包 pipenv shell # 切换到虚拟环境中 pip list # 查看当前已经安装的包&#xff0…

地方征信平台第2讲:河北省征信

河北省征信有限公司,注册成立于2022年12月25日,注册资本6330万元人民币。股东及持股比例如下:河北省惠信大数据科技服务有限公司、35.1975%。唐山国控集团有限公司、14.22%。石家庄城控投资集团有限责任公司、 10.8215%。石家庄市国有资本经营…