当前位置:   article > 正文

Deep Learning tips(1) -- ResNet的残差连接为什么是有用的?_resnet残差连接好处

resnet残差连接好处

一、前言

都知道何凯明大神的ResNet是为了解决“网络退化”问题,所谓的“网络退化”是指随着网络层次的加深,到达一定深度后,网络模型的性能不升反降,这被称为“网络退化”。如下图所示。
随着网络层次的加深,网络变得难以训练,不易收敛,原因在于随着网络层次的加深,深层梯度难以反向传播到浅层,即使传播到浅层,浅层的梯度值也小的可怜。
而ResNet利用残差连接,为什么能将网络做到很深的呢?其背后的原理是怎样的呢?刚入门深度学习时,没有认真考虑背后的原理,只是单纯地知道ResNet中残差连接到引入是为了解决“网络退化”问题,是为了网络更好的收敛。
在这里插入图片描述

二、背后的数学原理

首先回顾一下经典的残差结构,到现在为止,残差结果仍然广泛地应用于深度学习中,足以看出残差连接的重要性。
在这里插入图片描述
我们尝试对一个残差模块做前向传播的推导:
在这里插入图片描述
前向传播:
在这里插入图片描述
后向传播:
我们求loss function L对输入x的偏导数,即:
在这里插入图片描述
可以看到,如果没有残差结构,3个偏导数的乘积随着网络层次的加深会非常小,梯度到达饱和状态,网络不容易收敛。
在这里插入图片描述
而加入残差连接后,即使3个偏导数的乘积再小,但+1的操作使梯度值大大增加,非线性激活函数也到达非饱和区,这样做的好处在于:即使网络做的非常深,网络也是容易收敛、容易训练的!
-------------------------------------------------------------------------------------------------------------------------------

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/从前慢现在也慢/article/detail/863146
推荐阅读
相关标签