前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >图解十大CNN架构(下)

图解十大CNN架构(下)

作者头像
AiTechYun
发布2019-10-10 11:47:23
7550
发布2019-10-10 11:47:23
举报
文章被收录于专栏:ATYUN订阅号

编辑 | sunlei

发布 | ATYUN订阅号

在昨天的学习中我们已经了解了5中常见的CNN架构,今天我们将继续用图解的方法了解其余的5种架构。

前文回顾:图解十大CNN架构(上)

6

ResNet-50 (2015)

ResNet-50 网络架构

对,这就是对文章开头问题的回答。

在上面的几个 CNN 中,我们只是看到设计时增加了层数,就达到了更好的性能。但是,“网络深度不断增加,精度达到了饱和(这一点并不奇怪),因此网络性能开始快速下降”。微软研究院的专家在构建更深的网络时,采用 ResNet ( 残差网络 ) 解决这个问题,可以不再采用全连接的方式。

ResNet 是最早采用批量正则化( Ioffe 和 Szegey 在2015提交给 ICML 的批量正则化论文)的网络之一。上图中是 ResNet-50 的网络架构,采用了 26 M 个参数。

ResNet 的基本建构单元是 conv 层和识别板块。因为它们看上去很相似,你可以把 ResNet 简化成下图:

有哪些创新?

  1. 大量避免使用全连接(他们不是第一个这么做的)。
  2. 设计更深的 CNN 网络(最大可达 152 层),而不必损失网络的生成能力。
  3. 首先采用批量正则化的网络架构之一。

相关论著

论文: Deep Residual Learning for Image Recognition

链接:https://arxiv.org/abs/1512.03385?source=post_page

作者: Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun. Microsoft

发表在: 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)

7

Xception (2016)

Xception 网络架构 注:深度可分解卷积用 conv sep 指代

Xception 是 Inception 网络结构的一个应用,其中 Inception 模块被替换成深度可分解卷积。它和 Inception-v1 有大致相当数量的参数(23M)。

Xcpetion 采用了对 eXtreme 的 Inception 假设:

  • 首先,交叉信道(或交叉特征图)相关性可以被 1×1 卷积探测到。
  • 因此,每个信道的空间相关性可以通过常规的 3×3 或 5×5 卷积探测到。

把这个思想推到极致,意味着对每个信道进行 1×1 卷积,对每个输出进行 3×3 卷积。这等同于将 Inception 模块替换成深度可分解卷积。

有哪些创新?

完全基于深度可分解卷积层,引入 CNN。

相关论著

论文: Xception: Deep Learning with Depthwise Separable Convolutions

链接:https://arxiv.org/abs/1610.02357?source=post_page

作者: François Chollet. Google.

发表在: 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)

8

Inception-v4 (2016)

Inception-v4 网络架构 这个 CNN 有两个辅助网络(在推理时会被丢弃)。注: 所有卷积层采用 batch norm 和 ReLU 激活

Google 的研究人员再次提出了 Inception-v4(43M个参数)。这是对 Inception-v3 的一次改进,主要的差别是 Stem 组和对 Inception-C 模块的小改动。该论文的作者也“对每种网格大小的 Inception 板块增加了 Uniform 选择”。他们也提到采用“残差连接可以大幅度提高训练速度”。

总之,值得注意的是,论文提到 Inception-v4 因为模型规模增大效果更好。

与之前的 Inceptio-v3 版本相比,有哪些改进?

  1. 改变了 Stem 模块。
  2. 增加了更多的 Inception 模块。
  3. 采用了 Inception-v3 的 Uniform 选择,意味着在每个模块中采用了相同数量的过滤器。

相关论著

论文: Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning

链接:https://arxiv.org/abs/1602.07261?source=post_page

作者: Christian Szegedy, Sergey Ioffe, Vincent Vanhoucke, Alex Alemi. Google.

发表在:Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence

9

ResNet-V2(2016)

Inception-ResNet-V2 网络结构。注:所有卷积层采用 batch norm 和 ReLU 激活

在提出 Inception-v4 的同一篇论文中,作者们也提出了 Inception-ResNet:Inception-ResNet-v1 和 nception-ResNet-v2 网络系列,v2 系列有 56M 个参数。

与之前的 Inception-v3 版本相比,有哪些改进?

  1. 把 Inception 模块转换为残差 Inception 模块。
  2. 增加了更多的 Inception 模块。
  3. 在 Stem 模块后面,增加了一种新型的 Inception 模块(Inception-A)。

相关论著

论文: Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning

链接:https://arxiv.org/abs/1602.07261?source=post_page

作者: Christian Szegedy, Sergey Ioffe, Vincent Vanhoucke, Alex Alemi. Google

发表在: Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence

10

ResNeXt-50 (2017)

ResNeXt 网络架构

如果你想起了 ResNet,对,它们是相关的。ResNeXt 有 25 M 个参数(ResNet-50 有 25.5M 个)。它们之间的差别是 ResNeXt 在每个模块上增加了并行塔/分支、路径。上图总计有 32 个 tower。

有哪些创新?

在一个模块中增加了并行塔的数量(基数)。

相关论著

论文: Aggregated Residual Transformations for Deep Neural Networks

链接:https://arxiv.org/abs/1611.05431?source=post_page

作者: Saining Xie, Ross Girshick, Piotr Dollár, Zhuowen Tu, Kaiming He. University of California San Diego, Facebook Research

发表在: 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)

附录:Network In Network (2014)

我们注意到,在一个卷积中,像素的值是过滤器中权重和当前滑动窗口的线性组合。考虑一个只有 1 个隐藏层的 mini 神经网络。这是他们为什么把它叫做 Mlpconv 的原因。我们要处理的网络就是一个只有 1 个隐藏层的(卷积神经)网络。

Mlpconv 的思想和 1×1 卷积核密切相关,成为 Inception 网络架构的主要特征。

有哪些创新?

  1. MLP 卷积层, 1×1 卷积。
  2. 全局平均池化(对每个特征图进行平均,把结果向量反馈到 Softmax 层)。

相关论著

论文: Network In Network

链接:https://arxiv.org/abs/1312.4400?source=post_page

作者: Min Lin, Qiang Chen, Shuicheng Yan. National University of Singapore

发表在:arXiv preprint, 2013

下面列出了可以让你对神经网络可视化的相关资源:

  • Netron
  • TensorBoard API by TensorFlow
  • plot_model API by Keras
  • pytorchviz package

参考文献

作者在文中使用了提出这些 CNN 网络结构的论文作为参考文献。除了这些论文,作者列出了一些本文中的其它参考文献:

https://github.com/tensorflow/models/tree/master/research/slim/nets

(github.com/tensorflow)

Implementation of deep learning models from the Keras team

(github.com/keras-team)

Lecture Notes on Convolutional Neural Network Architectures: from LeNet to ResNet (slazebni.cs.illinois.edu)

Review: NIN — Network In Network (Image Classification)

(towardsdatascience.com)

原文链接:

https://towardsdatascience.com/illustrated-10-cnn-architectures-95d78ace614d

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-10-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ATYUN订阅号 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档