論文: https://arxiv.org/pdf/1607.06450v1.pdf
課代表的總結:
https://zhuanlan.zhihu.com/p/33173246
https://www.jiqizhixin.com/articles/2018-08-29-7
詳細的介紹可以參見上述的參考資料,本文簡單的做個概括:
layer normalization和batch normalization類似,緩解Internal Covariate Shift問題,可以將數據分布拉到激活函數的非飽和區,具有權重/數據伸縮不變性的特點。起到緩解梯度消失/爆炸、加速訓練、正則化的效果。
二者原理上有些不同:
batch normalization對一個神經元的batch所有樣本進行標準化,layer normalization對一個樣本同一層所有神經元進行標準化,前者縱向 normalization,后者橫向 normalization。
batch normalization的缺點:因為統計意義,在batch_size較大時才表現較好;不易用于RNN;訓練和預測時用的統計量不同等。
layer normalization就比較適合用于RNN和單條樣本的訓練和預測。但是在batch_size較大時性能時比不過batch normalization的。
類似的normalization方法還有weight / Instance / group normalization