内容摘要
增加深度网络的深度后,同时也会导致增加训练的难度。本文对此问题提出一个解决方案,也就是残差的学习框架。通过这个框架可以简化网络训练,但又可以适合在更深层次的网络使用。与过去传统的方法比较,这个方法是重新配置层为参考层并输入学习残差函数中,而不是只学习未参考的函数。通过研究和实验,这些残差网络更易于优化,且在增加深度的同时又可以获得其准确性。运用ImageNet的图像数据集,实现仅3.57%的误差。深度残差网也称为了ILSVRC和2015年的COCO的竞赛中,取得某些完成任务的第一名。
2.主要内容
(i)在卷积神经网络模型中,添加更多层会导致训练误差的提高,从而降低其准确性。如图1所示。
图1,带有20层和56层“普通”网络的CIFAR-10上的训练错误(左)和测试错误(右)。较深的网络具有较高的训练错误,从而导致测试错误的增加。这也就成为了模型训练退化问题。在本文中,通过引入深度残差学习框架来解决此退化问题。明确图层适合残差映射,而不是每个堆叠的层都直接适合所需的基础映射。形式上,将所需的基础映射表示为H(x),让堆叠的非线性层适合F(x):= H(x)− x的另一个映射。原始映射为F(x)+ x。假设优化残差映射比优化原始未引用映射要更容易。如果身份映射是最佳的,则将残差推到零比通过非线性层的堆栈拟合身份映射要容易。
图2所示,F (x) + x 可以通过前馈神经网络的”shortcut connections”(快捷连接)来实现,快捷连接是跳过一层或多层的连接。在这里,快捷方式连接仅执行身份映射,并将其输出添加到堆叠层的输出中(图2)。身份快捷连接既不会增加额外的参数,也不会增加计算复杂性。整个网络仍然可以通过SGD反向传播进行端到端训练,并且可