1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Batch normalization(バッチ正規化)の役割

Last updated at Posted at 2022-10-31

Batch normalization(バッチ正規化)の役割

  • Batch normalization(バッチ正規化)

    • ミニバッチ毎に、平均0分散1になるよう正規化を行う

      →出力が適度に分散され、勾配消失などの問題が起こりにくくなり、ネットワークの学習プロセスを全体的に安定化させて学習速度を高める
    • ディープラーニングでは、レイヤを何層にも積み重ねるため、パラメータが変わるとそのアウトプットが変わり、レイヤのインプットの分布が大きく変わることがある(Internal Covariate Shift)

      →ミニバッチごとの統計量を使って、ミニバッチごとにに正規化し、解決する
    • 毎回違うバッチごとの平均・分散で正規化するため、ノイズを生み、ネットワークを汎化させる正則化の効果がある
      ドロップアウトの必要性を減らせる
    • 推論時は学習時とは違い、バッチ毎の平均ではなく、学習データのバッチ毎の平均と分散の期待値を使用して、各次元の学習済みパラメータγ、βを用いて変換を行っていく
    • 深めのネットワークを作ったときに、フィルタや重みの演算とバイアスの演算の後、活性化関数の前などに数カ所挟むのが良い
  • Batch normalizationのメリット

    • 大きな学習係数が使える
    • 正則化効果がある
    • 初期値にそれほど依存しない
    • 学習が安定する。
    • ドロップアウトの必要性を減らすことができる
  • Batch normalizationのデメリット

    • パラメータが多くなりメモリや演算量が多くなる



参考サイト

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?