ResNet-学习记录

引入:本次学习内容基本来自于Kaiming He,Xiangyu Zhang,Shaoqing Ren等编写的的《Deep Residual Learning for Image Recognition》,以及部分讲解视频,本学习记录仅为个人学习收获,部分内容存在纰漏烦请各位大佬批评指正。

(一)文章摘要:主要解决了深度卷积神经网络在训练过程中出现的梯度消失和模型退化问题。作者提出了残差学习的思想,通过引入跨层连接(skip connections)来构建深层网络。该网络结构被称为ResNet(Residual Network)。

(二)发表时间:2015

(三)关键词:深度残差学习,残差网络

(四)学习感想:

作者观点:提升网络性能的方法不仅仅只是增加网络的深度,因为增加深度会可能导致梯度爆炸的问题。解决办法就是初始化的权重不要太大或太小,中间也可以加入一些归一化等操作,能勉强训练。

退化问题:当网络加深时,性能反而会变差,但不是因为模型变复杂而产生的过拟合问题,是因为训练误差也变大的问题,因此虽然网络看起来是收敛的,但是实际效果并不好。

于是作者假设一个表现还不错的浅层网络,里面再加一些层(这些层叫恒等映射,输入与输出保持一致性,比如前面层学的很好,那么我再加一些y=x,输入输出保持一致的层,从理论上讲,虽然深度增加了,但是最差也不会比原来的效果差,因为输入输出基本一致,没什么影响),那么深一点的网络是不应该比浅层网络更差的。但实际上通过SGD是检测不到。因此它提出了一种方法来解决这个问题。

假设原来期望的底层表示为F(x),按照原来的逻辑,就会一直以F(x)的形式传递下去,当然F(x)肯定是一直在改变的。但是此处将期望的底层表示为H(x),那么经过一个非线性拟合,再将结果重新表示为F(x)=H(x)-x,最后再直接加上x,则新的表示就为F(x)+x。而且这个方法实际效果不错,并且只涉及一些加法,没有添加什么参数。

通过这个方法。“网络越深,效果越强”这句话实现了,甚至它最后把网络整到了1000层,效果也还不错。

而作者在后文中介绍到也可以在加深网络层数时使用此方法,例如可以先将输入的256通道数利用64通道数的1×1卷积核处理,再进行相应的卷积运算,最后在输出时恢复到256层,这样就可以大大减少相应的计算量,因为如果直接是256通道数进去运算,会产生很大的数值,但是改变后去运算,通道数少了,计算量也少了。但是我有个疑问,如果通道数少了,那么信息的完整性该如何保证呢?

(五)总结:主要介绍了残差网络对模型的好处和优点,能够有效的避免梯度消失或爆炸,参数量过大等问题,非常实用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值