深度學習基礎--正則化與norm--Layer Normalization 即層標準化

Layer Normalization 即層標準化

  Layer Normalization和普通的標準化類似,是將網絡中的層進行歸一化的操作。
  一般用於RNN。

原因

  對於RNN模型來說,歸一化的時候Batch Normalization不再適合,在RNN模型裏,sequence的長度是不一致的,正是由於這種不一致的問題,導致BN使用起來效果不佳,借用網上的一句話,RNN的深度不是固定的,不同的time-step需要保存不同的statics特徵,可能存在一個特殊的sequence比其sequence長,所以對sequence進行Batch Normalization計算起來比較麻煩。於是乎,Layer Normalization登場了。

優點

  跟BN類似,也具有Normalization的優點,但更適用於RNN模型。

計算和使用

  需要明確的是LN是對層進行歸一化的,但是也是對某一層所有的dataset進行歸一化的。
  LN中同層輸入擁有相同的均值和方差(即整個一層都共享同一個均值和方差),不同輸入(訓練樣本)擁有不同的均值和方差; 而BN是同一個minibatch中的輸入擁有相同的均值和方差,而不同minibatch的輸入擁有不同的均值和方差。

  1)一般的BN通式:
在這裏插入圖片描述

  2)LN的公式:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章