Resnet的一些思考

9月17日-9月18日看了一下Resnet那篇论文《Deep Residual Learning for Image Recognition》他这个基本思路倒是掌握了,但是有几个小问题:

第一个问题是:Resnet拟合的是残差,如果把这个过程比作F(x),x是输入,那么F(x)产生的特征图和x这个特征图相应位置的感受野一不一样?,我觉得大概率会不一样,但是他是直接相加的,感觉可解释性很差;

第二的问题是他说可以解决梯度消失这个问题,因为最后求梯度变成了F(x)+x对某个w求偏导,如果F(x)得到的梯度较小还有之前的输入x可以支撑梯度使梯度不至于消失,如果是不使用resnet的话是直接F(x)对w求导,我的意思是前一个F(x)是对往残差上做映射,后一个F是往残差上做映射,但是所有的讲解都是将这两个F写成一个F,这么做是否妥当?

第三个问题是:创作者的意思是说如果把一个浅层网络映射成深层网络 它的性能至少不应该更差 一些人说就是把每一步的x加上下一步的处理结果 就是假如下一步的处理结果不好就把他当成0 但是这种解释吧 感觉有点牵强 因为实际网络中并没有上述所说的这种处理机制

第四个问题是:如果残差学的相反效果怎么办,也直接加吗?

经过一些思考后有了一些自己的理解:

这个说是对残差网络进行学习,确实也是对残差网络进行学习,但不是就是直接拿当前预测值与真实值的差在与这一步的残差预测计算一个损失,这么显然很麻烦,观察之后得知,就是假如经过一个残差块之后的输出是F(x)+x的话,拿F(x)+x与真实值做差 梯度下降反向传播使得F(X)自然学到的就是残差,所以第一个问题的话,这个感受野并不值得考虑,因为这个F(x)输出的特征就是按照目前状况的残差学的,理应对应的上,而且的话从结果提升也能表明是对应上了,再者,像Transformer这种模型,里边的注意力机制可以将多模态的信息全部整合起来,这里进行一个相同类型信息的加法也不足为奇了,

至于第二个问题的话,他就是这么去卷积的,这么去学的,也没有把标准残差和拟合残差再做一个损失,所以一直用F是很自然地

至于第三个问题的话,首先要知道一个事实,就是深层网络学习能力不强的原因是梯度下降,就是层太多,后边w参数梯度太小,更新的慢,可能在极小值的位置出不来了,而如果改成这种残差的话,每次更新将最新的残差块的w更新成0比不用残差的更新所有w调参要快的多,所以隐式的实现了第三个问题(而且shortcut的直接相连就等于显示的实现了“至少不比原来次”,这一个思想)

至于第四个问题,细想了一下感觉不太可能,梯度下降法咋可能只用于最后一层更新的话咋可能越学越差呢?这个问题不成立

经过这一系列思考后感觉这个论文提出的方法真的是比较巧妙的 他首先有个想法就认为深层网络不因该比浅层网络的效果更差因为如果一个浅层网络无限叠加恒等变换也不会效果更差,(但是随机梯度下降学不明恒等变化关系)然后阐明了深层网络效果不好的原因是因为梯度消失 之后他就直接一个神来执笔 用一个shortcut connection直接把输入和输出连接在了一起 用它想法的方式解决了深层网络效果不好的根本原因,同时隐式的实现了学习残差和残差若为0这种恒等映射的关系 简直是不能再巧妙!

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值