什么是梯度爆炸?怎么解决?
Posted pacino12134
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是梯度爆炸?怎么解决?相关的知识,希望对你有一定的参考价值。
梯度的衰减是有连续乘法导致的,如果在连续乘法中出现一个非常大的值,最后计算出的梯度就会很大,就想当优化到断崖处是,会获得一个很大的梯度值,如果以这个梯度值进行更新,那么这次迭代的步长就很大,可能会一下子飞出了合理的区域。
解决的方法是:
梯度裁剪:
把沿梯度下降方向的步长限制在一个范围之内,计算出来的梯度的步长的范数大于这个阈值的话,就以这个范数为基准做归一化,使这个新的的梯度的范数等于这个阈值就行了。
梯度检查:
梯度计算很不稳定,使用梯度检查来检查梯度计算是否出了错误。
通过解析的梯度值与计算得到的梯度值进行对比计算相对误差,如果这个误差小于一个很小的下限值,那么就没什么问题。
以上是关于什么是梯度爆炸?怎么解决?的主要内容,如果未能解决你的问题,请参考以下文章
梯度爆炸是什么?有什么后果?如何判断梯度爆炸?如何避免梯度爆炸?
机器学习面试题:LSTM长短期记忆网络的理解?LSTM是怎么解决梯度消失的问题的?还有哪些其它的解决梯度消失或梯度爆炸的方法?