42. 网络中的网络(NiN)

LeNet、AlexNet和VGG都有一个共同的设计模式:通过一系列的卷积层与汇聚层来提取空间结构特征;然后通过全连接层对特征的表征进行处理

AlexNet和VGG对LeNet的改进主要在于如何扩大和加深这两个模块。 或者,可以想象在这个过程的早期使用全连接层。然而,如果使用了全连接层,可能会完全放弃表征的空间结构。

网络中的网络(NiN)提供了一个非常简单的解决方案:在每个像素的通道上分别使用多层感知机

1. 全连接层的问题


卷积层需要的参数 = 输入通道数 * 输出通道数 * 窗口的高 * 窗口的宽

全连接层需要的参数 = (输入通道数 * 窗口的高 * 窗口的宽)* (输出通道数 * 窗口的高 * 窗口的宽)

2. NiN块

42. 网络中的网络(NiN)_第1张图片

ps:1 * 1的卷积层等价于全连接层。

回想一下,卷积层的输入和输出由四维张量组成,张量的每个轴分别对应样本、通道、高度和宽度。 另外,全连接层的输入和输出通常是分别对应于样本和特征的二维张量。

NiN的想法是在每个像素位置(针对每个高度和宽度)应用一个全连接层。 如果我们将权重连接到每个空间位置,我们可以将其视为 1×1 卷积层,或作为在每个像素位置上独立作用的全连接层。 从另一个角度看,即将空间维度中的每个像素视为单个样本,将通道维度视为不同特征(feature)。

3. NiN架构

  • 无全连接层
  • 交替使用NiN块和步幅为2的最大池化层
    • 逐步减小高宽和增大通道数
  • 最后使用全局平均池化层得到输出
    • 其输入通道数是类别数

4. NiN Networks

42. 网络中的网络(NiN)_第2张图片

NiN块以一个普通卷积层开始,后面是两个 1×1 的卷积层。这两个 1×1 卷积层充当带有ReLU激活函数的逐像素全连接层。 第一层的卷积窗口形状通常由用户设置。 随后的卷积窗口形状固定为 1×1 。

5. 总结

  • NiN块使用卷积层加两个 1 * 1卷积层
    • 后者对每个像素增加了非线性层
  • NiN使用全局平局池化层来替代VGG和AlexNet中的全连接层
    • 不容易过拟合,更少的参数个数

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