Research / 基盤技術 · 評価

バッチに依存せず層を整える Layer Normalization

Layer Normalizationは一つの入力の層内で平均と分散を計算し、学習時と推論時に同じ処理を行う。再帰型モデルでの安定性と、Batch Normalizationとの差が何に由来するかを読む。

論文初公開(arXiv)
参照版
v1
TRAIL公開
  • Layer Normalizationは、各入力について同じ層のユニット全体から平均と分散を計算する。
  • Batch Normalizationと違い、学習時と推論時に同じ計算をし、バッチサイズ1にも適用できる。
  • 論文は再帰型ネットワークなどで学習の安定性と速度を比較したが、あらゆる構造で一律の改善を示したわけではない。

何を確かめた研究か

ニューラルネットワークでは各層に入る値の大きさが変わると学習が難しくなる。Layer Normalizationの論文は、平均と分散をどの範囲から計算するかを変え、再帰型ネットワークでも扱いやすい正規化を提案した。Batch Normalizationが複数の学習例を使うのに対し、一つの例の同じ層にあるユニットから統計を作る。

どう検証したか

各層の活性化前の値に対して、層内の平均と分散で正規化し、ユニットごとに学習可能な倍率とバイアスを加える。再帰型ネットワークでは各時刻で統計を計算する。バッチ全体の統計や移動平均を使わないため、学習時と推論時で同じ計算になる。

論文はMNIST分類、言語モデル、手書き文字列の生成など異なる設定で、正規化なしや既存法と学習曲線・性能を比べた。比較する構造によって相手と指標が違うため、一つの改善率を全実験へ当てはめない。再帰型モデルの隠れ状態が安定するかが特に重要な観察点である。

何が分かったか

論文の式は、統計を一例内で計算するため、バッチサイズを1にしても同じ定義で動くことを示す。Batch Normalizationでは訓練時にバッチの統計を用い、推論時には推定した統計を使う場合があるが、Layer Normalizationにはその切り替えがない。実験では再帰型ネットワークの学習曲線や隠れ状態に改善が見られた。

ただし「バッチに依存しない」というのは正規化の統計計算についてであり、勾配推定や学習速度がバッチサイズに全く影響されないという意味ではない。層のユニット数や活性化関数、実装によって効果は変わる。

限界は何か

論文の実験は当時のネットワークと課題で、後年のモデルの最適な正規化位置や実装を決定するものではない。単一入力から統計を作るため、異なる入力同士の情報はこの操作には入らない。数式上の性質と実際のタスク精度は分けて評価する必要がある。

仕事との接点

系列モデルの学習を設計するなら、バッチサイズを変えたときの収束、推論時の挙動、メモリを測る。これは論文の比較から導くTRAIL編集部の提案であり、論文が現代の全モデルでの優位を示したわけではない。

01

出典

Research の一覧へ戻る