ResNet-2015

ResNet

Introduction

深度卷积神经网络引领了一系列对于图像识别任务的突破。深度网络可以很自然地将 低/中/高 级的特征和分类器整合为一个端对端(end-to-end)的模式,特征的"level"会随着网络层数的增加而更加丰富。最近的研究发现网络的深度尤为重要,对于在ImageNet数据集上取得突破性成果的网络都在探索和开发“非常深”的网络。
受深度重要性的驱使,我们不禁提出一个问题:学习一个更好的网络是不是就是简单地堆叠更多层?回答这个问题的一个阻碍就来自于梯度弥散/梯度爆炸问题,这个问题从一开始就会阻碍我们的模型收敛。然而这个问题已经很大程度上被归一化解决(初始值归一化以及中间层归一化,batch normalization),使用归一化可以使得几十层的网络开始收敛。
当更深的网络能够开始收敛时,一个新的问题出现了 degradation:随着网络深度增加,当accuracy达到饱和后会迅速出现退化的情况。出乎意料的是,这个问题并不是由 overfitting 造成的,增加更多的层数反而会导致更高的training error。如下图:
这里写图片描述
图一,左图为training error,右图为test error,数据集为CIFAR-10,两种网络结构,20层和56层。
这个退化(training accuracy)问题说明了并不是所有的系统都能够轻松的优化的。现在我们考虑两个模型,一个是较浅的网络,一个是根据这个较浅网络加入更多层得到的一个较深网络。一种构建这个较深的网络方式是:增加的层进行恒等map,其他层就直接从较浅网络复制过来。这个构建从以往的经验看来,更深的网络应该得到比较低的网络更低的training error,然而上面的实验显示这种构建网络的方式,不能取得一个更好的效果。
那么在本篇论文中,我们提出一种deep residual learning框架来解决退化问题。不再寄希望于每个堆叠的网络层能够直接匹配学习一个理想的潜在映射,而是让网络来学习一个残差映射。一般,将理想潜在映射标记为 H ( x ) \mathcal H(\mathbf x) H(x),让堆叠的非线性层去拟合另一个映射 F ( x ) : = H ( x ) − x \mathcal F(\mathbf x):=\mathcal H(\mathbf x)-\mathbf x F(x):=H(x)x。那么原始的映射就应该修正为 F ( x ) + x \mathcal F(\mathbf x) + \mathbf x F(x)+x。我们假设相比于原始的映射,残差映射更加容易优化。考虑极端情况,如果一个恒等map是最优的,那么推动残差等于0将比使用非线性的堆叠去匹配一个恒等map还要容易。
F ( x ) + x \mathcal F(\mathbf x) + \mathbf x F(x)+x 的构成可以通过带有 “shortcut connections” 的前向网络来实现。如下图。
这里写图片描述
图二,捷径连接
所谓 shortcut connections 就是跳过一层或多层的一种连接。在我们的结构中,捷径连接简单地进行恒等映射,它们的输出与堆叠层的输出进行叠加。恒等捷径连接并没有增加额外的参数和计算量。整个网络依然可以使用通过SGD的反向传播算法进行端对端的训练。
我们在ImageNet上进行综合的实验,发现(1)我们的非常深的残差网络能够很容易的进行优化,但是对应的“plain”网络(简单的网络堆叠)随着深度增加training error也随着增加。(2)深度残差网络随着网络增加,accuracy会增加,稳定地得到比之前网络都要好的结果。
对CIFAR-10数据集进行测试也得到同样的结果,这说明优化难度和我们方法的效果并不只适用于特定数据集。
在ImageNet分类数据集上,我们的152层残差网络是应用于ImageNet上最深的网络,尽管层数如此之多,其复杂度却低于VGG网络。

Related Work

Residual Representations
在图像识别中,VLAD (vector of locally aggregated descriptors,局部特征聚合描述符)是一种通过关于字典的残差向量来编码的特征表达,Fisher Vector可以被理解为VLAD的概率学模型。对于图像检索和分类来说,它们都是有力的浅层特征表达。对于矢量量化,编码残差向量会比编码原始向量更加有效。
对于低层次的视觉和计算机图像,求解偏微分方程,一般都是使用Multigrid method将系统重新表示为多尺度的子问题,每个子问题分别负责求解粗糙到精细尺度的残差结果。一种代替多重网格的方法是级联基预处理,它是依赖于表示两个尺度间的残差的参数。文献表明这样的方法将比不考虑的残差的标准方法收敛的更快。这样的方法表明一个好的模型重构或者预处理能够有利于模型的优化。
Shortcut Connections
关于捷径连接的理论和实践的研究已经进行了很长一段时间。一个早期的训练多层感知机的尝试是增加一个线性层直接连接网络的输入和输出。在GoogLeNet中,还有直接在中间层连接辅助分类器来处理梯度弥散/爆炸问题。还有文献提出运用捷径连接来置中层响应,梯度和传播的误差。在GoogLeNet中,"Inception"层也是有一个捷径分支也一些较深的分支组成。

Deep Residual Learning
Residual Learning

考虑使用 H ( x ) \mathcal H(\mathbf x) H(x)表征一个通过一些网络层(不需要是整个网络)学习到的一个潜在映射, x \mathbf x

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值