Layer Normalization


Ba, Jimmy Lei, Jamie Ryan Kiros, and Geoffrey E. Hinton. "Layer normalization." arXiv preprint arXiv:1607.06450 (2016).

Batch Normalization是對每個神經元做歸一化(cnn是對每個feature map做歸一化),主要是為了解決internal covariate shift的問題。

作者提出,對於RNN這種沒法用mini-batch的網絡,沒辦法用BN,所以提出了Layer Normalization。 

 

公式為:

 

兩個repo:https://github.com/pbhatia243/tf-layer-norm 和 https://github.com/ryankiros/layer-norm

 

感覺不管BN還是LN,都是為了限制神經元的輸出值,使其符合一定的分布。可以看出,為了得到均值和方差,BN采用了不同batch中不同的輸入數據來計,LN采用了同一層上神經元來計算。那么,是否可以通過歷史時間數據來計算呢,感興趣的同學可以自己去實現一個TN(time normalization或者叫temporal normalization ),似乎也是支持RNN的(即獨立於mini-batch的)。


免責聲明!

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



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