1 AlexNet

AlexNet 与letNet没有什么本质上的区别,只是增加了层数修改了一些细节。

alexnet

激活函数:采用了ReLU激活函数,取代sigmod。

复杂度控制:通过暂退法控制模型的复杂度,而不是采用权重衰减。

2 块搭建网络,VGGNeT

利用卷积层、激活函数、汇聚层构成卷积块,然后重复使用该卷积块构成卷积部分。

VGG 首先构建VGG块主要由多层卷积(每层有激活函数)以及一个汇聚层构成。然后重复使用VGG块,搭建VGG网络。

vgg

3 微网络构建网络,NiN

NIN提出一种新的方案,利用微神经网络替代卷积块,使用汇聚层进行最后的分类。传统的神经网络中MLP会破坏特征的空间结构。为此使用$1 \times 1$的卷积层对每个像素位置采用全连接,保证空间结构。

nin-compare

4 并行网络,GoogleNet

GoogleNet中的基本卷积块被称为Inception块,其将输入的特征图复制四份,并行处理,最后将结果进行连结。

inception

GoogleNet:

inception-full

5 批量规范化

批量规范化的引入是为了结局神经网络收敛速度。

5.1 问题

  • 数据预处理对最终结果会产生重要的影响,为此需要对数据进行标准化处理使其平均值为0,方差为1。
  • 对于深层网络,模型参数众多,且变换莫测,其会影响网络的收敛。
  • 深层网络容易过拟合。

5.2 基本原理

批量规范化主要对小批量进行:规范化输入;比例拉伸和比例偏移;

$\mathbf{x}\in \mathcal{B}$ 表示来自小批量 $ \mathcal{B}$ 的输入,规范化$BN$:

$\hat{\boldsymbol{\mu}}_\mathcal{B}$是小批量$\mathcal{B}$的样本均值,$\hat{\boldsymbol{\sigma}}_\mathcal{B}$是小批量$\mathcal{B}$的样本标准差。应用标准化后,生成的小批量的平均值为0和单位方差为1。由于单位方差是一个主观的选择,因此通常包含拉伸参数$\boldsymbol{\gamma}$和偏移参数$\boldsymbol{\beta}$,形状与$\mathbf{x}$相同。$\boldsymbol{\gamma}$和$\boldsymbol{\beta}$是需要与其他模型参数一起学习的参数。引入噪声确保除数不为0。

5.3 批量规范化层

5.3.1 全连接层

全连接层的输入为$\mathbf{x}$,权重参数和偏置参数分别为$\mathbf{W}$和$\mathbf{b}$,激活函数为$\phi$,批量规范化的运算符为$\mathrm{BN}$。
那么,使用批量规范化的全连接层的输出的计算详情如下:

5.3.2 卷积层

卷积层上的规范化是在每个通道上分别进行批量规范化。

6 残差网络

6.1 函数类

设神经网络框架$\mathcal{F}$,包含学习速率以及其它超参数设置。$\forall f \in \mathcal{F}$,存在的参数集(权重和偏重)都可以通过在合适的集合上训练获得。$f^$是理想函数,如果$f^ \in \mathcal{F}$我们可以轻易找到,但是通常我们只能找到近似$f^*$的$f_\mathcal{F}$。

为了寻找更接近$f^*$,唯一的办法是扩展$ \mathcal{F} \rarr \mathcal{F}’$。如果$ \mathcal{F} \not\subseteq \mathcal{F}’$结果存在变差的风险。所以$ \mathcal{F} \subseteq \mathcal{F}’$。

functionclasses

换言之,如果通过增加的网络层可以训练成恒等映射,就可以认为其可能比原网络更有效。

6.2 残差块

每个附加层都应该更容易地包含原始函数作为其元素之一。如下图所示,左面是直接拟合出映射$f(x)$,而右面则是拟合出$f(x)-x$。其中$f(x)$是理想映射。但是理想网络结构不能保证拟合结果一定是理想情况,右侧至少保证可以不会比$x$更差。

residual-block

因为需要进行相加,所以输出要与输入规模一致,如果想要改变通道数可以引入$1\times1$卷积层。

resnet-block

ResNet‐18:

resnet18

7 稠密连接网络

稠密神经网络是残差神经网络结合泰勒展开的产物。

泰勒展开形式如下:

而稠密连接网络DenseNet相比ResNet的区别在于将相加给位连接。

densenet-block

这样每经过一次稠密块,都可以保留之前的结果。

​​

densenet

但是稠密层也带来了一个问题随着使用次数的增加,其通道数快速增加。为此需要插入过渡层来控制模型的复杂度,一方面通过 $1 \times 1$ 卷积层来控制通道数,另一方面通过平均汇聚层减小特征图大小。

参考文献

[1] 《动手学深度学习》 — 动手学深度学习 2.0.0 documentation[EB/OL]. [2024-12-21]. https://zh.d2l.ai/.