weight decay(權值衰減)、momentum(沖量)和normalization



一、weight decay(權值衰減)的使用既不是為了提高你所說的收斂精確度也不是為了提高收斂速度,其最終目的是防止過擬合。在損失函數中,weight decay是放在正則項(regularization)前面的一個系數,正則項一般指示模型的復雜度,所以weight decay的作用是調節模型復雜度對損失函數的影響,若weight decay很大,則復雜的模型損失函數的值也就大。
二、momentum是梯度下降法中一種常用的加速技術。對於一般的SGD,其表達式為 x \leftarrow  x-\alpha \ast dx, x沿負梯度方向下降。而帶momentum項的SGD則寫生如下形式:
v=\beta \ast v -a\ast dx\\
x \leftarrow  x+v
其中 \beta 即momentum系數,通俗的理解上面式子就是,如果上一次的momentum(即 v)與這一次的負梯度方向是相同的,那這次下降的幅度就會加大,所以這樣做能夠達到加速收斂的過程。
三、normalization。如果我沒有理解錯的話,題主的意思應該是batch normalization吧。batch normalization的是指在神經網絡中激活函數的前面,將 wx+b按照特征進行normalization,這樣做的好處有三點:
1、提高梯度在網絡中的流動。Normalization能夠使特征全部縮放到[0,1],這樣在反向傳播時候的梯度都是在1左右,避免了梯度消失現象。
2、提升學習速率。歸一化后的數據能夠快速的達到收斂。
3、減少模型訓練對初始化的依賴。
 
 
 
作者:陳永志
鏈接:https://www.zhihu.com/question/24529483/answer/114711446
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。


免責聲明!

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



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