【深度学习论文学习笔记】Deep Residual Learning for Image Recognition【2015】

Deep Residual Learning for Image Recognition 残差网络框架

论文链接:https://arxiv.org/abs/1512.03385

1 面临的问题

直觉上来说,随着越深的网络层数,则模型拟合数据的能力更强,然而事实上,随着网络层的加深,会面临梯度爆炸和梯度消失,是对模型拟合的一大障碍。
归一化初始化和中间层的归一化已经在一定程度上消除了梯度消失和爆炸的问题。

degradation problem(退化问题):
随着网络层越来越深,准确率会趋向于饱和,然后迅速下降,并且此问题不是由过拟合造成的,因为到达一定的深度后,导致了更高的训练数据的错误率。

【深度学习论文学习笔记】Deep Residual Learning for Image Recognition【2015】_第1张图片

图中表明:56层的网络层(更深的网络层)的拟合效果比20层(更浅的网络层)还差

 

2 探讨方法

将原始网络的映射变为

若要拟合出一个恒等映射,即输出等于输入,则以上只需将f(x)变为零,比通过一堆非线性网络层拟合的更容易

以上函数通过“shortcut”连接实现,即没有增加多余的参数,也没有增加计算复杂度

假如增加的网络可以被构建成恒等映射,则一个更深网络层的模型的训练错误率不应该比较浅网络层的模型更高,而退化问题表明,很难通过多层的非线性网络层来近似恒等映射。从极端考虑,对于残差网络来说,若恒等映射是理想的,则只需简单地将网络的权重置零来接近恒等映射。

 

3 残差网络块

【深度学习论文学习笔记】Deep Residual Learning for Image Recognition【2015】_第2张图片

其中f函数就是要被学习的残差映射

若f和x的维度不一致,则可通过在shortcut连接上执行一个投射Ws来匹配两者的维度:

考虑到训练时间的有限,因此将原来跨越两层的结构改为跨越三层的结构,其中最后一层的卷积层负责恢复维度,使其输入和输出的维度匹配,不用添加额外的参数,时间复杂度相同。

【深度学习论文学习笔记】Deep Residual Learning for Image Recognition【2015】_第3张图片

 

4 实验结果

实验通过比较“plain”网络(基于VGG19)和残差网络:

【深度学习论文学习笔记】Deep Residual Learning for Image Recognition【2015】_第4张图片

【深度学习论文学习笔记】Deep Residual Learning for Image Recognition【2015】_第5张图片

残差网络对于深层网络的拟合有益,能够从更深的网络中获得更高的准确率;并且残差网络拟合的更快

 

【深度学习论文学习笔记】Deep Residual Learning for Image Recognition【2015】_第6张图片

表现残差网络的优势:残差网络层输出,对于输入的变化更小的层反应,比普通网络输出值更接近于零,表明:当更多的网络层时,单个残差网络层倾向于较少地修正信号,更稳定。

 

 

你可能感兴趣的:(深度学习论文)