深度学习梯度爆炸与梯度消失
背景
了解深度学习中的梯度爆炸与消失的原因,及如何处理梯度爆炸与消失。
梯度消失
梯度消失是激活函数和权重矩阵初始化值,这两个因素决定的。
sigmoid函数,求导的最大值为0.25
根据链式求导法则:导数小于0.25,如果初始化的W值,再小于1,这样逐个相乘后,会导致偏差为0,最终导致网路中的参数无法优化
梯度爆炸
依然根据链式求导法则:如果初始化的W值>10,则每一层的乘积大于1,这样逐个相乘后,会导致一个非常大权重更新,这就是梯度爆炸
解决方案
- 好的参数初始化方式,如He初始化
- 非饱和激活函数 ReLU
- 批量规范化
- 梯度截断
- 更快的优化器
参考
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步