第三周学习任务

目录

论文阅读与视频学习

ResNet

论文阅读

ResNet网络讲解

Pytorch搭建ResNet网络

ResNeXt

论文阅读

ResNeXt网络讲解

Pytorch搭建ResNeXt网络

代码作业

思考题


论文阅读与视频学习

ResNet

论文阅读

Deep Residual Learning for Image Recognition,CVPR2016

在深度神经网络中存在网络模型难以训练的问题,该论文提出了残差块来解决此问题。

网络的深度对于网络模型的效果来说非常重要,但是当更深的网络模型开始收敛时,产生退化问题,即随着深度增加,准确率达到饱和后下降。

 在一个合适的深度模型上增加层数,会使得错误率提升。

此文通过利用残差学习来解决退化问题,对于每一组堆叠的若干层,无需直接拟合期望的底层映射H(x),而是让这些堆叠的分线性层去拟合F(x)=H(x)-x,则H(x)=F(x)+x。

在本文的残差网络结构层中,通过shortcut直接把输入x传到输出作为初始结果,输出结果为H(x)=F(x)+x,当F(x)=0时,H(x)=x,也就是上边的恒等映射,于是ResNet相当于改变学习目标,学习所谓的残差F(x)=H(x)-x,后边的训练目标是将残差结果逼近于0,使随着网络加深,准确率不下降。

如果添加额外的层可以构造恒等映射,那么更深的模型的training error应该不大于浅的模型,退化问题表明求解器难以利用多个非线性层逼近恒等映射,但是利用残差学习,求解器可以通过将多个非线性层的权值趋近于0来逼近恒等映射。

论文中一个残差块定义如下:

x和y分别为残差块的输入和输出向量,函数F(x, {Wi})代表要学习的残差映射,公式(1)中的F和x的维度必须相同,如果不同的话,可以用一个额外的矩阵Ws与x相乘,以匹配F的维度:

网络架构:

Plain Network是基于VGG来进行设计的,卷积核大小几乎都是3×3大小,对于每一个输出特征图大小相同的卷积层,其卷积核数目相同,每当输出特征图大小减半时,该卷积层卷积核数目增加为原来的二倍。

Residual Network是在Plain Network的基础上增加残差结构,这里有实线和虚线两种方式,实线表示的情况是该在经过主分支后的输出特征矩阵的大小和channel与block输入矩阵相同,可以直接相加,直接进行跳转,虚线表示的是主分支的输出特征矩阵大小或channel与该block的输入矩阵不同,所以需要0作为padding进行填充或者利用Ws映射即利用大小为1×1的卷积和适当的stride来对原始输入矩阵进行调节,使其形状与主分支输出的特征矩阵相同。

通过实验证明Residual Network相较于Plain Network可以更好的解决退化问题,因为在Plain Network使用了BN,所以可以证明退化问题不是因为梯度消失引起的,而可能是因为收敛速度低而导致难以优化。在对跳接方式进行实验时,可以发现对所有跳接都使用Ws映射的效果要优于使用0作为padding填充和仅维度增加时使用Ws映射的效果。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值