04论文笔记《Deep Residual Learning for Image Recognition》
《Deep Residual Learning for Image Recognition》
作者:Kaiming He、Xiangyu Zhang、Shaoqing Ren、Jian Sun
【成绩】
ResNet——MSRA何凯明团队的Residual Networks,2015年,在ImageNet的classification、detection、localization以及COCO的detection和segmentation上均斩获了第一名的成绩,而且Deep Residual Learning for Image Recognition也获得了CVPR2016的best paper。
【创新点】
- 提出残差学习,解决了网络加深后发生的退化现象;
- 构建了更胜的网络(34/50/101/152层)
【现阶段的问题】
加深网络可以提取不同层级更丰富的特征,网络越深,提取到的特征越抽象,越具有语义信息,可以提高网络的性能;
加深网络回导致梯度消失或梯度爆炸;
引入ReLu**函数;正则化层;权值正则化约束等,避免上述问题;
网络加深到一定程度后,出现退化现象,即更深的网络训练误差和测试误差均高于浅层网络;
当模型的层次加深时,错误率却提高了
退化现象出现的原因:
- 首先考虑过拟合,由于training error增大,所以不是由于参数数量增大导致过拟合;
- 网络选择ReLu**函数以及BN等手段,一定程度上缓解了梯度消失现象,因此退化问题也不是由于梯度消失引起的;目前退化现象的原因还没有给出理论上的解释;
针对网络加深后出现的退化现象,提出残差网络来避免;
构建一个残差网络就是通过很多这样的残差块;
接下来,作者就设计实验来证明自己的观点。
首先构建了一个18层和一个34层的plain网络(普通网络),即将所有层进行简单的铺叠,然后构建了一个18层和一个34层的residual网络,仅仅是在plain上插入了shortcut,而且这两个网络的参数量、计算量相同,并且和之前有很好效果的VGG-19相比,计算量要小很多。这个模型最大的优势所在。
实验表明,在plain上观测到明显的退化现象,而且ResNet上不仅没有退化,34层网络的效果反而比18层的更好,而且不仅如此,ResNet的收敛速度比plain的要快得多。
残差学习为什么会起作用:
残差学习学习的是残差值,也就是除去相同部分的主要部分F(x)=H(x)-x;
如果F(x)=0(极端情况),则先前的网络已经达到最优,再加深无意义;