ResNet论文总结

ResNet要解决的问题

       \space\space\space\space\space\space        在很多论文中,以及很多比赛如ImageNet的前几名使用的算法中,表现出网络深度的重要性。许多任务都从深层的网络中得到了效果提升。那么问题来了:简单的堆叠更多的层是否就能得到性能更好的网络?
       \space\space\space\space\space\space        首先,随着网络层数的增加,随之而来的一个问题就是梯度消失\爆炸,梯度消失\爆炸会阻碍网络的收敛。然而这一问题,通过合理的初始化以及中间层的归一化(如BN层),已经在很大程度上得到了改善。
       \space\space\space\space\space\space        第二个问题就是网络性能的退化(degradation)。随着网络层数的增加,准确率会慢慢增加达到饱和,然后迅速退化。网络层数增加,网络的复杂度也随之增加,我们自然想到这一退化现象是否由过拟合引起?答案是否定的,因为网络在训练集上的表现也在变差。文章中给出了如下图的实验结果。ResNet要解决的就是退化(degradation)问题。
在这里插入图片描述

残差结构(building block)

       \space\space\space\space\space\space       假设我们想要学得的映射函数是 H ( x ) H(x) H(x) H ( x ) H(x) H(x)不一定代表整个网络的最终映射,也可以是中间某几层的最终映射),残差学习的思想不是直接让网络学习 H ( x ) H(x) H(x),而是学习残差 F ( x ) : = H ( x ) − x F(x)\coloneqq H(x)-x F(x):=H(x)x,也就是说将想要得到的最终映射 H ( x ) H(x) H(x)分为两部分,即残差 F ( x ) F(x) F(x)和恒等映射 x x x(这些层的输入)。残差结构(building block)如下图所示。恒等映射没有引入多余的参数和计算量。
在这里插入图片描述
       \space\space\space\space\space\space       残差结构的思想,是受网络性能退化(degradation)这个问题的启发:给浅层的网络不断堆叠非线性层,网络性能会发生退化,那么如果堆叠的层被构建成恒等映射,就可以保证再深的网络也不会比其对应的浅层网络的结果差,退化的问题也就解决了。所以ResNet通过短路连接(shortcut)构建恒等映射解决退化问题。
       \space\space\space\space\space\space       对于残差结构,如果此时恒等映射是最优的,即 H ( x ) = x H(x)=x H(x)=x,那么直接将残差 F ( x ) F(x) F(x)中的权值置为0即可,而对比让 H ( x ) H(x) H(x)调整非线性层的参数学习恒等映射,要容易得多。更一般地,此时恒等映射不是最优,相比 H ( x ) H(x) H(x)既要学习输入输出前后的差别(残差),又要保留原始输入有用的信息,残差结构只需要学习输入输出前后的差别即可,降低了学习的难度。

残差结构的一些注意事项

1、对于残差结构(building block)中的残差 F ( x ) F(x) F(x)部分,注意残差 F ( x ) F(x) F(x)部分从最后线性层(weight layer(如图所示))出来,先与恒等映射 x x x对应元素相加后,再用非线性函数激活。所以恒等映射一定要跨过2个及以上的weight layer,因为如果只有一层的话,残差 F ( x ) F(x) F(x)部分是没有非线性函数激活的,所以 F ( x ) + x F(x)+x F(x)+x也只是一个线性函数,然后再一起送到后面的非线性函数激活,这其实和直接堆叠非线性层(没有残差结构)没有本质差别。

2、在 F ( x ) F(x) F(x) x x x对应元素相加时,一定要保证 F ( x ) F(x) F(x) x x x维数相同,如果不相同,可以在恒等映射部分添加一个线性映射(如1x1的卷积),使得 F ( x ) F(x) F(x) x x x维数相同。

ResNet网络结构

ResNet的网络结构如下图所示
在这里插入图片描述
       \space\space\space\space\space\space       网络中用到两种building block,如下图所示。左边的残差部分是两个3x3的卷积层的堆叠。右边的残差部分是1x1,3x3,1x1三个卷积层的堆叠。右边的设计叫做bottleneck,先用1x1的卷积压缩维度,最后再用1x1的卷积恢复维度,这样的设计可以减少模型参数,节省计算时间。
在这里插入图片描述

论文地址Deep Residual Learning for Image Recognition

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值