ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

27、梯度消失与梯度爆炸

2020-09-24 10:33:01  阅读:217  来源: 互联网

标签:初始化 zn 27 函数 爆炸 梯度 消失


梯度消失经常出现在深层网络、采用了不合适的损失函数,比如sigmoid。

梯度爆炸一般出现在深层网络、权值初始化值太大的情况下。

1、梯度消失、梯度爆炸的原因:

对激活函数进行求导,如果求导的每个部分部分小于1,那么随着层数增多,求出的梯度更新信息将会以指数形式衰减,即发生了梯度消失

如果此部分大于1,那么层数增多的时候,最终的求出的梯度更新将以指数形式增加,即发生梯度爆炸。

2、梯度爆炸的原因:
当我们将w初始化为一个较大的值时,例如>10的值,那么从输出层到输入层每一层都会有一个s‘(zn)*wn的增倍,当s‘(zn)为0.25时s‘(zn)*wn>2.5,同梯度消失类似,当神经网络很深时,梯度呈指数级增长,最后到输入时,梯度将会非常大,我们会得到一个非常大的权重更新,这就是梯度爆炸的问题,在循环神经网络中最为常见。

总结:从深层网络角度来讲,不同的层学习的速度差异很大,表现为网络中靠近输出的层学习的情况很好,靠近输入的层学习的很慢,有时甚至训练了很久,前几层的权值和刚开始随机初始化的值差不多。因此,梯度消失、爆炸,其根本原因在于反向传播训练法则,属于先天不足。

3、解决方案

梯度消失:

非饱和的激活函数(如 ReLU)

批量规范化(Batch Normalization)

LSTM

残差结构

梯度爆炸:

梯度剪切、正则

非饱和的激活函数(如 ReLU)

批量规范化(Batch Normalization)

梯度截断(Gradient Clipping)

好的参数初始化方式,如He初始化

标签:初始化,zn,27,函数,爆炸,梯度,消失
来源: https://www.cnblogs.com/ai-learning-blogs/p/13722818.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有