ResNet论文记录

简介

ResNet在2015的ImageNet比赛上的分类任务获得第一名。
在这里插入图片描述
由上图可以看出随着网络的加深,训练集和测试集的准确率下降,可以确定不是由于过拟合引起的(过拟合情况的训练集准确率很高,测试集的准确率不太好),所以提出了一种深度残差网络,它允许网络尽可能的加深。它通过使用多个有参层来学习输入输出之间的残差表示,不像一般的CNN网络(AlexNet,VGGNet等)那样使用有参层来直接学习输入输出之间的映射。

ResNet结构

理论上,对于“随着网络加深,准确率下降”的问题,Resnet提供了两种选择方式,也就是identity mapping和residual mapping。
在这里插入图片描述
Identity mapping指的是本身的映射,也就X,就是那条弯弯的线,其余的就是residual mapping。输入为X,所以输出为y=F(x)+x,residual mapping指的就是,也就是y-x,即F(x)。
输入为x,将某一有参网络层设为H,那么以x为输入的此层的输出将为H(x),所以H(x) -x为有参网络要学习的输入输出之间的残差,即学习x->(H(x)-x)+x的过程。
ResNet结构使用连接shortcut connection,也就是‘抄近道’的意思。对每层的输入做一个reference(x),学习形成残差函数,而不是学习一些没有reference的函数.
残差块有两层,
在这里插入图片描述
再通过一个shortcut和第二个ReLU,获得输出y,
在这里插入图片描述
当对输入输出维数进行变化时,可以在shortcut时对x做线性变换Ws,
在这里插入图片描述
一般用F(x,Wi)来表示残差映射。
‘’随着网络加深,准确率下降‘’的问题,如果网络已经达到最优,那么继续加深网络,训练就很容易将residual mapping优化为0,这样就剩下了identity mapping,理论上不管怎样增加深度,模型将一直处在最优状态,网络性能不会随着深度增加而降低。

building block

在这里插入图片描述
整个结构叫做‘’building block‘’。在一个浅层网络的基础上叠加y=x的层(称identity mapping恒等映射),可以让网络随深度增加而不退化,这反映了多层非线性网络无法逼近恒等映射网络。
左图的两层结构,适用于ResNet34或比34层更少的网络中。
右图针对ResNet50/101/152。也叫做bottleneck design,为了降低参数的数目,用于更深的网络,比如101这样的网络中,目的是为了减少计算和参数量。先使用11的卷积,将256维的通道降到64维的通道,最后通过一个256通道的11卷积来恢复。

在这里插入图片描述
残差网络的确解决了网络的退化问题,在训练集和验证集上都证明了更深的网络误差越小

然后自下表中,我们可以看到常规Resnet网络与其它网络如VGG/Googlenet等在Imagenet validation dataset上的性能比较:
在这里插入图片描述
在这里插入图片描述

残差网络和朴素网络结构

采用了两种shortcut connection方式。
在这里插入图片描述
实线:执行都是3364的卷积,他们F(x)和x的channel数一致,所以y=F(x)+x。
虚线:connection部分都是3364,33128卷积操作,它们的channel数不同,所以y=F(x)+wx,w是卷积操作,用来调整x的channel的维度的。
当x与y通道数目不同时,作者尝试了两种identity mapping的方式。第一种是将x相对y缺失的通道直接补零,从而使其能够相对齐的方式。第二种是使用11的卷积来表示Ws映射从而使的最终输入与输出的通道达到一致的方式。
在这里插入图片描述
以101层网络为例,前面有有一个7
7的卷积,后面3+4+23+3=33,33*3=99。最后有一个全连接层,1+99+1=101层。101层网络仅仅指的是卷积或者全连接层,激活层或池化层并没有计算在内。

高速网络

高速网络(highway networks)和快捷连接有相似之处,但是高速网络中含有参数。高速网络中的gate在训练过程中可能关闭,相反,残差网络中的连接不会关闭,残差网络可以被学习。

CIRAR10上更深的ResNet网络

作者进一步在小的CIFAR10数据集上尝试了更深的Resnet网络,其深度最多达到了1202层。不过却发现分类性能终于开始有了一定下降。作者分析认为可能是层数过多,导致模型过于复杂,而CIFAR-10较小的数据集造成了它的过拟合吧。下图为其疯狂的实验结果。
在这里插入图片描述

总结

ResNet的作者想到常规计算机视觉邻域常用的residual representation的概念,并将它应用在CNN的模型中。ResNet通过改变学习目标,即不再学习完整的输出F(x),而是学习残差H(x)-x,解决了传统卷积层或全连接层在进行信息传递时存在的丢失,损耗问题,通过直接将信息从输入绕道传输到输出,一定程度上保护了信息的完整性。

优秀博客链接:https://www.jianshu.com/p/93990a641066
代码https://blog.csdn.net/kongshuchen/article/details/72285709

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值