He K, Zhang X, Ren S,et al. Deep Residual Learning for Image Recognition[J]. 2015:770-778.


[1]He K, Zhang X, Ren S,et al. Deep Residual Learning for Image Recognition[J]. 2015:770-778.

1.  文章要解决的问题:

随着神经网络的深度加深,带来的其中一个重要的问题就是梯度消失和梯度爆炸,它会使得训练难以收敛,通过归一化或者batch normalization方法可以得到有效的缓解。然而,收敛问题得到解决之后,又存在另一个问题:随着深度加深,网络的准确度趋向于饱和了,然后当我们继续加深网络,网络的准确度却降低了,并且出现这种问题并不是因为过拟合导致的。如下图所示,56层的网络比20层的网络准确度还低。

从该图可以看出,出现这种问题并不是过拟合导致的,因为过拟合的情况下训练集的准确率应该很高。

 

2.  文章的解决方法:

使用一个残差网络结构来代替原来的非线性网络结构。

此图是以往的神经网络使用的非线性函数,H(x)是一种理想的映射,我们希望图中两层中的权值能够得到调整以适应H(x),但是实验证明,随着层数加深,求解器很难找到正确的求解途径,所以文章提出了深度残差学习的方法,它的结构如下图所示:

这里H(x)仍然是一种理想的映射,但是这里不再调整权值去适应H(x),而是适应另外一个F(x),然后让H(x) = F(x) + x, x是输入。之所以这么做是基于这样一个先验条件:就是深层的神经网络完成的是一种恒等映射,或者是一种接近于恒等的映射。即增加一个identity mapping(恒等映射),将原始所需要学的函数H(x)转换成F(x)+x,而作者认为这两种表达的效果相同,但是优化的难度却并不相同,作者假设F(x)的优化会比H(x)简单的多,这一想法也是源于图像处理中的残差向量编码。最终,每层的输出就不是传统神经网络当中输入的映射,而是映射和输入的叠加。

 

3.  模型设置:

通常情况下,会出现F(x)和x的维度不匹配的问题,因此,本文采用这样一个公式:

左图为VGG-19模型,中间是一个34层的Plain Network,右图为34层的残差网络。

Plain Network 主要是受 VGG 网络启发,主要采用3*3滤波器,遵循两个设计原则:1)对于相同输出特征图尺寸,卷积层有相同个数的滤波器,2)如果特征图尺寸缩小一半,滤波器个数加倍以保持每个层的计算复杂度,通过步长为2的卷积来进行降采样。残差网络是在Plain network的基础上加了shortcut connection。

 

4.  实验及结果

作者认为,残差网络结构中的加法并不会给网络增加额外的参数和计算量,同时却可以大大增加模型的训练速度、提高训练效果,并且当模型的层数加深时,这个简单的结构能够很好的解决退化问题。接下来,作者设计实验来证明自己的观点。

首先构建了一个18层和一个34层的plain网络,然后构建了一个18层和一个34层的残差网络,仅仅是在plain上插入了shortcut,而且这两个网络的参数量、计算量相同,并且和之前有很好效果的VGG-19相比,计算量要小很多。

模型构建好后进行实验,由上图可以看出,在plain上观测到明显的退化现象,而且残差网络上不仅没有退化,34层网络的效果反而比18层的更好,而且不仅如此,残差网络的收敛速度比plain的要快得多。

 

进一步实验,作者提出了更深的残差块(residual block), 即将两个3x3的卷积层替换为1x1 + 3x3 + 1x1, 如下图。新结构中的中间3x3的卷积层首先在一个降维1x1卷积层下减少了计算,然后在另一个1x1的卷积层下做了还原,既保持了精度又减少了计算量。

5.  体会:

本文提出的深度残差网络可以在实现一个152层的深度神经网络,它不仅不会出现退化现象,而且参数相较于其他深度网络模型来说较少。在网络训练过程中,加入先验信息

指导非常重要,合理的先验往往会取得较好的结果。

 

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
deep residual learning for image recognition是一种用于图像识别的深度残差学习方法。该方法通过引入残差块(residual block)来构建深度神经网络,以解决深度网络训练过程中的梯度消失和梯度爆炸等问题。 在传统的深度学习网络中,网络层数增加时,随之带来的问题是梯度消失和梯度爆炸。这意味着在网络中进行反向传播时,梯度会变得非常小或非常大,导致网络训练变得困难。deep residual learning则使用了残差连接(residual connection)来解决这一问题。 在残差块中,输入特征图被直接连接到输出特征图上,从而允许网络直接学习输入与输出之间的残差。这样一来,即使网络层数增加,也可以保持梯度相对稳定,加速网络训练的过程。另外,通过残差连接,网络也可以更好地捕获图像中的细节和不同尺度的特征。 使用deep residual learning方法进行图像识别时,我们可以通过在网络中堆叠多个残差块来增加网络的深度。这样,网络可以更好地提取图像中的特征,并在训练过程中学习到更复杂的表示。通过大规模图像数据训练,deep residual learning可以在很多图像识别任务中达到甚至超过人类表现的准确性。 总之,deep residual learning for image recognition是一种利用残差连接解决梯度消失和梯度爆炸问题的深度学习方法,通过增加网络深度并利用残差学习,在图像识别任务中获得了突破性的表现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值