深度卷积神经网络各种改进结构块汇总

 更新时间:2022年05月06日 17:30:17   作者:Bubbliiiing  
这篇文章主要为大家介绍了深度卷积神经网络各种改进结构块汇总,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪

学习前言

看了好多代码呀,看了后面忘了前面,这个BLOG主要是记录一些神经网络的改进结构,比如残差结构那种,记录下来有助于自己设计一些轻且好的网络。

1、残差网络

这个网络主要源自于Resnet网络,其作用是:

将靠前若干层的某一层数据输出直接跳过多层引入到后面数据层的输入部分。

意味着后面的特征层的内容会有一部分由其前面的某一层线性贡献。

实验表明,残差网络更容易优化,并且能够通过增加相当的深度来提高准确率。

最终可以使得网络越来越深,Resnet152就是一个很深很深的网络。

残差网络的典型结构如下:

2、不同大小卷积核并行卷积

这个结构主要是在Inception网络结构中出现。

Inception网络采用不同大小的卷积核,使得存在不同大小的感受野,最后实现拼接达到不同尺度特征的融合。

不同大小卷积核并行卷积的典型结构如下:

3、利用(1,x),(x,1)卷积代替(x,x)卷积

这种结构主要利用在InceptionV3中。

利用1x7的卷积和7x1的卷积代替7x7的卷积,这样可以只使用约(1x7 + 7x1) / (7x7) = 28.6%的计算开销;

利用1x3的卷积和3x1的卷积代替3x3的卷积,这样可以只使用约(1x3 + 3x1) / (3x3) = 67%的计算开销。

下图利用1x7的卷积和7x1的卷积代替7x7的卷积。

下图利用1x3的卷积和3x1的卷积代替3x3的卷积。

4、采用瓶颈(Bottleneck)结构

这个结构在Resnet里非常常见,其它网络也有用到。

所谓Bottleneck结构就是首先利用1x1卷积层进行特征压缩,再利用3x3卷积网络进行特征提取,再利用1x1卷积层进行特征扩张。

该结构相比于直接对输入进行3x3卷积减少了许多参数量。

当输入为26,26,512时,直接使用3x3、filter为512的卷积网络的参数量为512x3x3x512=2,359,296‬。

采用Bottleneck结构的话,假设其首先利用1x1、filter为128卷积层进行特征压缩,再利用3x3、filter为128的卷积网络进行特征提取,再利用1x1、filter为512的卷积层进行特征扩张,则参数量为 512×1×1×128 + 128×3×3×128 + 128×1×1×512 =‬ 278,528。

可以看出来确实时下降了很多呀。

5、深度可分离卷积

深度可分离卷积主要在MobileNet模型上应用。

其特点是3x3的卷积核厚度只有一层,然后在输入张量上一层一层地滑动,每一次卷积完生成一个输出通道,当卷积完成后,在利用1x1的卷积调整厚度。

假设有一个3×3大小的卷积层,其输入通道为16、输出通道为32。具体为,32个3×3大小的卷积核会遍历16个通道中的每个数据,最后可得到所需的32个输出通道,所需参数为16×32×3×3=4608个。

应用深度可分离卷积,用16个3×3大小的卷积核分别遍历16通道的数据,得到了16个特征图谱。在融合操作之前,接着用32个1×1大小的卷积核遍历这16个特征图谱,所需参数为16×3×3+16×32×1×1=656个。

6、改进版深度可分离卷积+残差网络

这种结构主要存在在Xception网络中。

改进版深度可分离卷积就是调换了一下深度可分离的顺序,先进行1x1卷积调整通道,再利用3x3卷积提取特征。

和普通的深度可分离卷积相比,参数量也会有一定的变化。

改进版深度可分离卷积加上残差网络的结构其实和它的名字是一样的,很好理解。

如下图所示:

7、倒转残差(Inverted residuals)结构

在ResNet50里我们认识到一个结构,bottleneck design结构,在3x3网络结构前利用1x1卷积降维,在3x3网络结构后,利用1x1卷积升维,相比直接使用3x3网络卷积效果更好,参数更少,先进行压缩,再进行扩张。

而Inverted residuals结构,在3x3网络结构前利用1x1卷积升维,在3x3网络结构后,利用1x1卷积降维,先进行扩张,再进行压缩。

这种结构主要用在MobilenetV2中。

其主要结构如下:

8、并行空洞卷积

这个结构出现在Deeplabv3语义分割中。

其经过并行的空洞卷积,分别用不同rate的空洞卷积进行特征提取,再进行合并,再进行1x1卷积压缩特征。

空洞卷积可以在不损失信息的情况下,加大了感受野,让每个卷积输出都包含较大范围的信息**。如下就是空洞卷积的一个示意图,所谓空洞就是特征点提取的时候会跨像素。

以上就是深度卷积神经网络各种改进结构块汇总的详细内容,更多关于卷积神经网络改进结构块的资料请关注脚本之家其它相关文章!

相关文章

  • 从学习到接单赚钱 十大网络技术人员推荐收藏的网站

    从学习到接单赚钱 十大网络技术人员推荐收藏的网站

    这篇文章主要介绍了从学习到接单赚钱 十大网络技术人员推荐收藏的网站,需要的朋友可以参考下
    2015-08-08
  • lambda 表达式导致 Arthas 无法 redefine 的问题

    lambda 表达式导致 Arthas 无法 redefine 的问题

    这篇文章主要介绍了lambda 表达式导致 Arthas 无法 redefine 的问题,本文通过图文实例相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • Terraform集成简单Gitlab CI方案详解

    Terraform集成简单Gitlab CI方案详解

    这篇文章主要为大家介绍了Terraform + Gitlab CI简单集成方案,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • curl和wget检测网页状态的区别

    curl和wget检测网页状态的区别

    curl和Wget在linux日常使用中非常常见,它们都可以向服务器发出请求,curl和Wget的一个最明显的区别是:默认情况下Wget将查询的网页保存到系统,而 curl将其显示在终端输出中但不保存它,curl的使用率比Wget多得多
    2025-04-04
  • 微信公众平台开发——群发信息

    微信公众平台开发——群发信息

    本文主要介绍微信公众平台开发群发信息,这里整理了详细的资料来说明微信公共平台群发信息的流程,有需要的小伙伴可以参考下
    2016-09-09
  • 256种编程语言大汇总

    256种编程语言大汇总

    这篇文章主要介绍了256种编程语言大汇总,想学编程语言的同学可以看一下,需要的朋友可以参考下
    2014-09-09
  • csv文件容错处理方法

    csv文件容错处理方法

    这篇文章主要介绍了csv文件容错处理方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • 从Chrome App看微信小程序的发展前景

    从Chrome App看微信小程序的发展前景

    App的了解也许对我们对小程序的发张和前景的分析带来一定的帮助。接下来本教程给大家分享从Chrome App看微信小程序,感兴趣的朋友可以参考下
    2016-09-09
  • Git的基础文件操作初始化查看添加提交示例教程

    Git的基础文件操作初始化查看添加提交示例教程

    这篇文章主要为大家介绍了Git的基础文件操作初始化查看添加提交示例教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-04-04
  • 最新IntelliJ IDEA 2020.2永久激活码(亲测有效)

    最新IntelliJ IDEA 2020.2永久激活码(亲测有效)

    今天一大波朋友反馈idea2020激活码失效的问题,小编快马加鞭给大家找到解决方案,本文以IDEA 2020.2.4激活码破解教程为例给大家详细介绍,需要idea2020激活码的朋友快来参考下本文吧
    2020-11-11

最新评论