【论文笔记-ResNet】Deep Residual Learning for Image Recognition

      • 1. 简介
      • 2. 笔记
        • 2.1 网络深度的重要性
        • 2.2 梯度的消失/爆炸(vanishing/exposing)问题:
        • 2.3 退化问题
        • 2.4 残差(residual)结构
          • 2.4.1 shortcut连接方式

1. 简介

2. 笔记

2.1 网络深度的重要性

已经有一些论文证明,神经网络的深度(层数),能够在一定程度上提升模型的性能。

2.2 梯度的消失/爆炸(vanishing/exposing)问题:

通过规则化初始值和中间层规则化(Batch Normalization)来解决。由此,我们可以训练很深的网络。

2.3 退化问题

虽然上面的问题解决了,新的问题出现了:训练数据集准确率(train accuracy)的degradation。值得注意的是,这种退化不是由overfitting造成的,因为overfitting的话,训练集的表现应该更好。解决方案:残差

2.4 残差(residual)结构

为了解决上述问题,我们提出残差(residual)结构。该结构的核心是添加恒等映射(identity mapping)。
【论文笔记-ResNet】Deep Residual Learning for Image Recognition_第1张图片
假设我们要学习的映射为H(x),通过residual结构(shortcut connection),我们使 H(x)=F(x)+x H ( x ) = F ( x ) + x 。此时,网络需要学习的是映射F(x)。我们假设这种学习会更加简单。为什么?如果我们要学习的就是恒等映射,前者需要用堆叠的非线性网络层学习 H(x)=x H ( x ) = x ,后者只需把F(x)置零。后者会相对容易些。或者当我们要学习的映射接近于恒等映射时,若x不为0,学习干扰项F(x)会比直接学习恒等映射更容易。(从实验结果看,学习好的resnet有着比较小的激活值和参数,这说明我们学习的映射接近于identity mapping。)
另外,这种shortcut connection可以很容易地和原来一样用SGD学习,并且几乎不增加计算复杂度和参数数量。如上图所示,在每个shortcut connection之间会添加2-3个卷积层,除了最后一层卷积层,其他卷积层后都跟着BN,RELU。最后一层是在与X连接(element-wise addition)之后再使用BN,RELU。包含两层卷积的shortcut可以表示成:

F(x)=W2σ(BN(WT1X)) F ( x ) = W 2 σ ( B N ( W 1 T X ) )
在这里, σ σ 为RELU函数。

2.4.1 shortcut连接方式

shortcut连接是element-wise addition,这要求X和F(X)必须是相同size的。所以,当X和F(X)是不等size的时候,我们进行三种方式的处理:

  • A方式:使用0填充
  • B方式:对X进行projection变换: y=F(X,{Wi})+WsX y = F ( X , { W i } ) + W s X ,这里的 Ws W s 通过1x1的卷积实现。1x1
  • C方式:所有的X都用shortcut

【论文笔记-ResNet】Deep Residual Learning for Image Recognition_第2张图片
上图展示了部分vgg深层plain结构深层redisual结构的区别。
如下图实验结果证明:
1)residual结构很好地解决了训练集准确率的degradation问题
2)34层的residual结构比34层的plain结构效果更好
3)18层的residual结构比18层的plain结构更快收敛
【论文笔记-ResNet】Deep Residual Learning for Image Recognition_第3张图片

其他参考链接:
- 残差网络ResNet笔记

你可能感兴趣的:(【论文笔记-ResNet】Deep Residual Learning for Image Recognition)