什么是梯度爆炸?怎么解決?


梯度的衰減是有連續乘法導致的,如果在連續乘法中出現一個非常大的值,最后計算出的梯度就會很大,就想當優化到斷崖處是,會獲得一個很大的梯度值,如果以這個梯度值進行更新,那么這次迭代的步長就很大,可能會一下子飛出了合理的區域。

解決的方法是:

梯度裁剪:

把沿梯度下降方向的步長限制在一個范圍之內,計算出來的梯度的步長的范數大於這個閾值的話,就以這個范數為基准做歸一化,使這個新的的梯度的范數等於這個閾值就行了。

梯度檢查:

梯度計算很不穩定,使用梯度檢查來檢查梯度計算是否出了錯誤。

通過解析的梯度值與計算得到的梯度值進行對比計算相對誤差,如果這個誤差小於一個很小的下限值,那么就沒什么問題。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM