背景
一个信念: “越深越强!”
理论基础
假设一个层数较少的神经网络已经达到了较高准确率,我们可以在这个神经网络之后,拼接一段恒等变换的网络层,这些恒等变换的网络层对输入数据不做任何转换,直接返回(y=x),就能得到一个深度较大的神经网络,并且,这个深度较大的神经网络的准确率等于拼接之前的神经网络准确率,准确率没有理由降低
退化现象
按照上述理论来说,深度越深,性能应该越来越强才对,但是实际上随着网络层数的并不断加深,模型准确率毫无征兆的出现大幅度的降低,这个现象称为“退化”
Resnet网络架构
- 快捷连接
- 降采样
左图适用于层数较少的resnet网络,右图适用于层数较多的resnet网络
残差块工作原理
残差块中的跳跃连接有助于缓解梯度消失问题,因为即使卷积层的权重更新不佳,输入仍然可以通过跳跃连接直接传播到后面的层。这使得网络在进行反向传播时,不容易出现梯度消失现象。
具体来说,假设我们有一个理想的浅层网络,随着网络深度的增加,理论上网络的表达能力应该增强,即训练误差应该减少。然而,实验表明,深层网络的误差反而增大了。这是因为深层网络难以训练,而不是因为浅层网络比深层网络更好。
ResNet通过残差学习,使得网络层数的增加不再必然导致退化,反而能够更好地利用深度网络的潜力。