TensorFlow-similarity 学习笔记7

TensorFlow-similarity 学习笔记7

2021SC@SDUSC
接下来学习笔记将学习介绍后5个最常见的CNN架构

内容(按出版年份排序

    • TensorFlow-similarity 学习笔记7
  • ResNet-50(2015)
  • Xception(2016)
  • Inception-v4(2016)
  • Inception-ResNets-V2(2016)
  • ResNeXt-50(2017)

你是如何跟上不同的卷积神经网络 (CNN) 的?近年来,我们见证了无数CNN的诞生。这些网络已经变得如此之深,以至于很难将整个模型可视化。我们不再跟踪它们,而是将它们视为黑盒模型。
本文是 10 种常见 CNN 架构的可视化。这些插图提供了整个模型的更紧凑的视图,而不必为了查看 softmax 层而向下滚动几次。除了这些图像,还附上了一些关于它们如何随着时间“进化”的注释——从 5 到 50 个卷积层,从普通卷积层到模块,从 2-3 个塔到 32 个塔,从 7⨉7 到 5 ⨉5——但稍后会详细介绍。
“常见”是指那些预训练权重通常由深度学习库(例如 TensorFlow、Keras 和 PyTorch)共享以供用户使用的模型,以及通常在课堂上教授的模型。其中一些模型在 ImageNet 大规模视觉识别挑战赛 (ILSVRC) 等比赛中取得了成功。
将讨论的 10 种架构及其论文发表的年份:
TensorFlow-similarity 学习笔记7_第1张图片
Keras 中 6 种架构的预训练权重。 改编自 Keras 文档中的表格:
TensorFlow-similarity 学习笔记7_第2张图片

我们看到的大量 CNN 架构是许多因素的结果——改进的计算机硬件、ImageNet 竞争、解决特定任务、新想法等等。 谷歌研究员 Christian Szegedy 曾提到:
“大部分进步不仅仅是更强大的硬件、更大的数据集和更大的模型的结果,而且主要是新思想、算法和改进网络架构的结果。” (塞格迪等人,2014 年)
现在我们继续研究这些模型并观察网络架构如何随着时间的推移而改进!

TensorFlow-similarity 学习笔记7_第3张图片

ResNet-50(2015)

TensorFlow-similarity 学习笔记7_第4张图片
从过去的几个 CNN 中,我们只看到设计中的层数越来越多,并获得了更好的性能。 但是“随着网络深度的增加,准确度会饱和(这可能不足为奇)然后迅速下降。” 微软研究院的人用 ResNet 解决了这个问题——使用跳过连接(又名快捷连接、残差),同时构建更深层次的模型。
ResNet 是批标准化的早期采用者之一(由 Ioffe 和 Szegedy 撰写的批规范论文于 2015 年提交给 ICML)。 上图是 ResNet-50,有 26M 参数。
ResNets 的基本构建块是 conv 和 identity 块。 因为它们看起来很像,你可以像这样简化 ResNet-50:
TensorFlow-similarity 学习笔记7_第5张图片
什么创新?

  1. 普及的跳过连接(他们不是第一个使用跳过连接的人)。
  2. 在不影响模型泛化能力的情况下设计更深的 CNN(最多 152 层)
  3. 最早使用批量标准化的人之一。
    发布
    Paper: Deep Residual Learning for Image Recognition
    Authors: Kaiming He, Xiangyu Zhang, Shaoqing Ren, Jian Sun. Microsoft
    Published in: 2016 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)

Xception(2016)

TensorFlow-similarity 学习笔记7_第6张图片
Xception 是对 Inception 的改编,其中 Inception 模块已替换为深度可分离卷积。 它的参数数量也与 Inception-v1 (23M) 大致相同。
Xception 将 Inception 假设带到了一个极端。 什么是初始假设? 这篇论文中明确而简洁地提到了这一点。

  1. 首先,跨通道(或跨特征图)相关性由 1×1 卷积捕获。
  2. 因此,通过常规的 3×3 或 5×5 卷积捕获每个通道内的空间相关性。
    将这个想法发挥到极致意味着对每个通道执行 1×1,然后对每个输出执行 3×3。 这与用深度可分离卷积替换 Inception 模块相同。

什么创新?

  1. 引入了完全基于深度可分离卷积层的 CNN。

发布
Paper: Xception: Deep Learning with Depthwise Separable Convolutions
Authors: François Chollet. Google.
Published in: 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)

Inception-v4(2016)

TensorFlow-similarity 学习笔记7_第7张图片
谷歌的人再次发起了 Inception-v4,43M 的参数。 同样,这是对 Inception-v3 的改进。 主要区别在于 Stem 组和 Inception-C 模块中的一些细微变化。 作者还“为每个网格大小的 Inception 块做出了统一的选择”。 他们还提到,拥有“剩余连接可以显着提高训练速度”。
总而言之,请注意有人提到 Inception-v4 由于增加了模型尺寸而效果更好。
与之前的版本 Inception-v3 相比有什么改进?

  1. Stem模块的变化。
  2. 添加更多 Inception 模块。
  3. Inception-v3 模块的统一选择,意味着对每个模块使用相同数量的过滤器。

发布
Paper: Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning
Authors: Christian Szegedy, Sergey Ioffe, Vincent Vanhoucke, Alex Alemi. Google.
Published in: Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence

Inception-ResNets-V2(2016)

TensorFlow-similarity 学习笔记7_第8张图片
在与 Inception-v4 相同的论文中,同样的作者还介绍了 Inception-ResNets——一个 Inception-ResNet-v1 和 Inception-ResNet-v2 的家族。 该家族的后一个成员有 56M 参数。
与之前的版本 Inception-v3 相比有什么改进?

  1. 将 Inception 模块转换为 Residual Inception 块。
  2. 添加更多 Inception 模块。
  3. 在 Stem 模块之后添加了一种新型的 Inception 模块(Inception-A)。

发布
Paper: Inception-v4, Inception-ResNet and the Impact of Residual Connections on Learning
Authors: Christian Szegedy, Sergey Ioffe, Vincent Vanhoucke, Alex Alemi. Google
Published in: Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence

ResNeXt-50(2017)

TensorFlow-similarity 学习笔记7_第9张图片
如果您正在考虑 ResNet,是的,它们是相关的。 ResNeXt-50 有 25M 参数(ResNet-50 有 25.5M)。 ResNeXts 的不同之处在于在每个模块中添加了平行的塔/分支/路径,如上所示“总共 32 个塔”。
什么创新?

  1. 扩大模块内平行塔的数量(“基数”)(我的意思是 Inception 网络已经对此进行了探索,只是在此处添加了这些塔)

发布
Paper: Aggregated Residual Transformations for Deep Neural Networks
Authors: Saining Xie, Ross Girshick, Piotr Dollár, Zhuowen Tu, Kaiming He. University of California San Diego, Facebook Research
Published in: 2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR)

经过文献阅读学习总结,深刻了解了CNN卷积神经网络、其发展历程以及演化。

你可能感兴趣的:(tensorflow,深度学习,keras)