ResNet深度残差(论文理解)

本文探讨了深度神经网络在增加层数时出现的误差增大问题,即梯度消失和梯度爆炸现象。ResNet通过引入深度残差连接解决了这一问题,使得即使在网络很深的情况下,梯度也能有效传播。ResNet的结构允许网络在不增加复杂性的情况下进行更深层次的学习。文章还提到了在特征图尺寸变化时如何保持通道匹配的策略,如使用零填充、1x1卷积或全连接层,并指出在实践中B方法(使用1x1卷积)更为常见。
摘要由CSDN通过智能技术生成

今日学习了深度残差连接模块的概念(ResNet)

问题提出的背景为:

1. 随着网络层的加深,模型在测试集和训练集上的误差也随之增大具体如下图表示

                                          56层的网络模型误差明显高于20层的网络模型误差

2. 网络层数的加深会带来梯度爆炸与梯度消失的问题

梯度消失:在神经网络的训练过程中会产生误差梯度,而有时误差梯度会非常小,这就会导致权重值更新会受到阻碍,甚至达到停滞的阶段。

梯度爆炸:与梯度消失问题相反,在深层网路的训练过程中梯度误差会不停的累加,这会导致权重动荡的幅度很大,极端情况下权重值会异常大。

3:下降的原因不是因为过拟合(过拟合情况模型在训练集上的表现应该更好),而且在加深网络层后并没有减少误差

问题解决方法:

1.非该论文提出的方法:添加本征映射层,其他层复制已经学习过的浅层。 SGD无法找出最优2  该论文提出的方法: 

从梯度更新的角度

无残差模块梯度更新:\frac{\partial f(g(x))))}{\partial g(x)}\cdot \frac{\partial g(x))}{\partial x}+\frac{\partial f(g(x))))}{\partial g(x))}

 有残差模块的梯度更新:相对于无残差模块,有残差模块添加了固有的梯度+{\frac{\partial f(g(x))}{\partial x}}所以在训练时即使权重过小,但是固有梯度任然可以使网络不断训练.

 网络结构

1.对于输出feature map大小相同的层,有相同的filter 即channel即可,当feature map大小减半时(池化层)channel数量翻倍   

2.维度相匹配时使用实线连接,相反使用虚线连接。维度不相互匹配时有三种方案可供选择

        A:zero padding操作增加维度

        B:使用  1*1的卷积核,直接设置channel 数

        C:所有的shortcuts使用全连接层映射

原论文中对比了三种操作方法,C方法在数值上变现更好,但是会增加计算复杂度,所以一般使用B方法 .

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值