44. 含并行连结的网络(GoogLeNet)

GoogLeNet吸收了NiN中串联网络的思想,并在此基础上做了改进。 这篇论文的一个重点是解决了什么样大小的卷积核最合适的问题。 毕竟,以前流行的网络使用小到1 * 1,大到11 * 11的卷积核。

本文的一个观点是,有时使用不同大小的卷积核组合是有利的。

本节将介绍一个稍微简化的GoogLeNet版本:我们省略了一些为稳定训练而添加的特殊特性,现在有了更好的训练方法,这些特性不是必要的。

1. 最好的卷积层超参数?

2. Inception块:小学生才做选择题,我全要了

在GoogLeNet中,基本的卷积块被称为Inception块(Inception block)。这很可能得名于电影《盗梦空间》(Inception),因为电影中的一句话“我们需要走得更深”(“We need to go deeper”)。

44. 含并行连结的网络(GoogLeNet)_第1张图片

4个路径从不同层面抽取信息,然后在输出通道维合并。

Inception块由四条并行路径组成。

前三条路径使用窗口大小为 1×1 、 3×3 和 5×5 的卷积层,从不同空间大小中提取信息
中间的两条路径在输入上执行 1×1 卷积,以减少通道数从而降低模型的复杂性
第四条路径使用 3×3 最大汇聚层,然后使用 1×1 卷积层来改变通道数

这四条路径都使用合适的填充来使输入与输出的高和宽一致,最后我们将每条线路的输出在通道维度上连结,并构成Inception块的输出。在Inception块中,通常调整的超参数是每层输出通道数

3. Inception块

44. 含并行连结的网络(GoogLeNet)_第2张图片
图中白色区域可以看做基本上是改变通道数的,蓝色的卷积是用来抽取特征:第一条路径的1 * 1是用来抽取通道信息,而不抽取空间信息,中间两条路径是抽取空间信息,最后一条路径也是抽取空间信息。

跟单 3 * 3或 5 * 5卷积层相比,Inception块有更少的参数个数和计算复杂度。

44. 含并行连结的网络(GoogLeNet)_第3张图片

4. GoogLeNet模型

44. 含并行连结的网络(GoogLeNet)_第4张图片
最后的全连接层把通道数映射到标号所要的类别数,因此在这里,不强求经过全局平均汇聚层使得通道数等于类别数。

5. 段1 & 2

更小的宽口,更多的通道。

44. 含并行连结的网络(GoogLeNet)_第5张图片

6. 段3

7. 段 4 & 5

8. Inception 有各种后续变种

44. 含并行连结的网络(GoogLeNet)_第6张图片

9. Inception V3块,段3

44. 含并行连结的网络(GoogLeNet)_第7张图片

10. Inception V3块,段4

44. 含并行连结的网络(GoogLeNet)_第8张图片

11. Inception V3块,段5

44. 含并行连结的网络(GoogLeNet)_第9张图片

12. 实际效果


ps:图片中圈的大小越大,所耗内存越多

13. 总结

  • Inception块用4条有不同超参数的卷积层和池化层的路来抽取不同的信息

    • 它的一个主要优点是模型参数小,计算复杂度低
  • GoogleNet使用了9个Inception块,是第一个达到上百层的网络

    • 后续有一系列改进

你可能感兴趣的:(深度学习,网络,深度学习,cnn)