阅读完相关论文自己的理解

ResNetv1:

(1)ResNetv1使用了残差单元,使得网络结构更加容易优化、验证了使用残差单元可以通过增加网络的深度来提高精度。

(2)该论文阐述了plain NetWork随着网络深度的不断提升,TrainError也不断提高,这不是梯度消失问题,由于网络的模型结构使用了BN,其保证了前向传播网络的输出分布为非0分布,并且反向传播的梯度也是一直存在的,所以不是梯度消失的问题,而是随着网络的不断加深,其收敛速度指数级的下降,但是如何解决这个问题,论文中并没有阐述。

(3)论文中训练的trick(分类):使用了wd为0.0001以及Momentum为0.9的动量SGD优化方法,并且使用了MSRA的优化方法,加入了BN层来防止梯度下降。做了Data Augumentation,每一个边都进行了Zero-Padding,并进行了随机Crop出一个32*32的图片;并且使用了Horizontal以及一些其他的数据增强方法。但是没有使用如Max-out,DropOut等正则化方法。

(4)残差网络的结构示意图如下:

ResNetv2:

    深度残差网络的出现展示了惊人的准确率以及很好的收敛表现,而ResNetv2提出了新的残差单元使得训练更加简单,并且模型的泛化能力也很好。其通过创造一个direct的Path直接传递信息,不仅在残差结构中传递而且还在整个网络中传递。此残差单元有效的避免了梯度消失的问题,如下图公式所示:

 

由上述公式的,对每一层的参数进行求导,此梯度可以decomposed为2个terms,即前面证明深层网络的梯度是可以传到任意的浅层网络中,并且另一个term是通过权重值来传递的。该函数证明了,使用残差网络不可能造成梯度消失的问题。

并且文章第三节主要介绍了IdenTify Skip Connection的重要性,并分别介绍了对Identify不同的处理后的结果,其不仅会使得梯度消失甚至会梯度下降,阻碍了(Impedding or Hanper)信息在整个网络中的传播并且加大了训练难度。通过对比试验验证了,虽然可以在IdentifyMapping处加入1*1卷积层或者1-g(x),其都包含了恒等映射机制,按照常理来说其效果应该比恒等映射要好,但是反之,并不如其,证明了退化问题不是表达能力的问题而是优化难度的问题。

第四节介绍了Activation的影响,在ResNetv1中,残差结构是先进性相加然后在使用激活函数,所以在下一个Block中的输入时,其影响了输入的两个Path。(1)BN在add后面时,由于BN更改了信息的分布并且阻碍了信息的传播。(2)Relu before Activation,由于在残差结构处,若使用Relu其输出的值域为(0-正无穷),而我们想要的输出值域为(-无穷到正无穷),正向传播的的信号数值一直增大,妨碍了网络的表达能力。(3)Pre-Activation,缓和了优化难度,由于f真正成为了恒等映射。在激活函数之前使用BN提升了模型的正则化效果,提高了模型收敛速度与泛化能力。。Ease of optimization:Relu使得一些信息失活,影响信息的完整性,随着Residual Units的不断增多,这个影响会逐步放大,甚至会阻碍网络的表达能力,而更新后的Residual Unit能够很好的避免此情况出现。Reducing overfitting:在原始的Residual单元中,通过BN后立即与shortcut处进行Add,这使得输入并没有很好地进行Normalized,而Pre-Activation保证了所有的weight都做了bn,保证了归一化效果。

在遇到对FeatureMap进行Size变换时,需要先进行BN+RELU,在进行卷积改变其Size。(若不进行BN或者RELU,假如一直更改Size,由于CONV是线性的,那么FeatureMap在一直进行线性变换,并不能提高非线性性能,反而会增加参数,浪费资源。)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值