ResNetV1和ResNetV2

文章目录

  • ResNet-V1
  • ResNet-V2

写在前面,最近看论文,看到好多ResNet的结构名词,ResNet-V1,ResNet-V2,ResNet50, ResNet101等等,这里来对ResNet的发展进行一个介绍。

ResNet是近年来CNN结构发展中最为关键的一个结构,后面非常多的insight都是在ResNet基础上进行改进,也有非常多的论文旨在分析残差结构的有效性。

ResNet-V1

论文:Deep residual learning for image recognition
随着网络层数的加深,出现训练集准确率下降的问题,我们来分析一下出现该问题的可能性。
(1)梯度消失或者梯度爆炸。
由于我们引入了batch-norm层,已经可以很大程度上解决梯度消失和梯度爆炸的问题,所以将该可能性排除。
(2)过拟合
过拟合的话训练集准确率应该很高的,所以将该可能性排除。
我们找到问题:深层次网络训练无法收敛
对于无法收敛的问题,我们引出ResNet。它使用了一种连接方式,叫做“shortcut connection”。

ResNetV1和ResNetV2_第1张图片
对于“随着网络加深,准确率下降”的问题,Resnet提供了两种选择方式,也就是identity mapping和residual mapping,如果网络已经到达最优,继续加深网络,residual mapping将被push为0,只剩下identity mapping,这样理论上网络一直处于最优状态了,网络的性能也就不会随着深度增加而降低了。
ResNet提供了两种模块结构,分别是“building block”和“bottleneck design”,如下:
ResNetV1和ResNetV2_第2张图片
左图是小于50层的ResNet所使用的结构如:ResNet-18,ResNet-34;右图是ResNet-50/101/152所使用的结构。后者是为了减少网络参数和降低计算量而设计的,主要用于更深层的网络结构中。
从网络的结构可以看出,ResNetV1是采用的“post-activation”结构,即relu层是放在卷积层之后的。
以下是ResNet-18/34/50/101/152的网络结构,备查:
ResNetV1和ResNetV2_第3张图片

ResNet-V2

论文:Identity Mappings in Deep Residual Networks
这篇论文是ResNetV1的升华,通过大量的对比实验来验证自己的理论推倒的正确性,作者把ResNet分成三个部分h(skip connection),f(after-addition activation),F(residual function),ResNetV1对F进行了深入的研究,本文对h与f进行分析讨论,得出了足够简单,有效的结论与实验结果。两者的结构如下:
ResNetV1和ResNetV2_第4张图片
ResnetV2采用的是“pre-activation”的方式,预激活的影响具有两个方面。第一,由于f也是恒等映射,优化变得更加简单(与原始ResNet相比)。第二,在预激活中使用BN能够提高模型的正则化。
具体的关于实验的部分,建议去查看论文。

你可能感兴趣的:(深度神经网络)