- 「正規化」について理解しているか不安・・・
- 正規化は「Batch-Normalization(バッチ正規化)」しか知らないけど他の正規化手法があるの?
- 「Batch-Normalization(バッチ正規化)」以外の正規化手法について分かりやすく教えて!
「正規化」には「Batch-Normalization」以外に「Layer-Normalization/Instance-Normalization」があります。これは、レイヤー間を流れるデータの分布を、ミニバッチ単位で平均が0、分散が1になるように正規化するもので学習時間の短縮や初期値への依存低減、過学習の抑制など効果がある便利な技術ですが、興味があっても難しそうで何から学んだらよいか分からず、勉強のやる気を失うケースは非常に多いです。
私は過去に基本情報技術者試験(旧:第二種情報処理技術者試験)に合格し、また2年程前に「一般社団法人 日本ディープラーニング協会」が主催の「G検定試験」に合格しました。現在、「E資格」にチャレンジ中ですが3回不合格になり、この経験から学習の要点について学ぶ機会がありました。
そこでこの記事では、「Layer-Normalization/Instance-Normalization」のポイントについて解説します。
この記事を参考にして「Layer-Normalization/Instance-Normalization」が理解できれば、E資格に合格できるはずです。
<<「Layer-Normalization/Instance-Normalization」のポイントについて今すぐ見たい方はこちら
1.Batch-Normalization(バッチ正規化)とは(復習)
- 詳細な説明は→【深層学習】学習の安定化(未学習・過学習の回避)の方法とは?
- レイヤー間を流れるデータの分布を、ミニバッチ単位で平均が0・分散が1になるように正規化
- Batch-Normalization はニューラルネットワークにおいて学習時間の短縮や初期値への依存低減、過学習の抑制など効果がある。
- Batch Sizeが小さい条件下では、学習が収束しないことがある
⇒ 代わりにLayer-Normalizationなどの正規化手法が使われることがある。
2.Batch-Normalization 以外の正規化
- Batch-Normalization
ミニバッチに含まれるsampleの同一チャンネルが同一分布に従うよう正規化 - Layer-Normalization
それぞれのsampleの全てのpixelsが同一分布に従うよう正規化 - Instance-Normalization
さらにchannelも同一分布に従うよう正規化
Batch-Norm Layer-Norm Instance-Norm


N:ミニバッチ数
C:Channel
H,W:Heigth/Widthをまとめた
参照元論文:https://arxiv.org/pdf/1803.08494.pdf
2.1 Batch-Normalization(バッチ正規化)
- H×W×C のsampleがN個あった場合に、N個の「同一チャンネル」が正規化の単位
- RGBの3チャンネルのsampleがN個の場合は、それぞれのチャンネルの平均と分散を求め正規化を実施(下図の青い部分に対応)
⇒ チャンネル毎に正規化された特徴マップを出力。 - ミニバッチのサイズを大きく取れない場合には、効果が薄くなってしまう。


参照元論文:https://arxiv.org/pdf/1803.08494.pdf
2.2 Layer-Normalization(レイヤー正規化)
- N個のsampleのうち1つに注目。H×W×Cの全てのpixelが正規化の単位。
- RGBの3チャンネルのsampleがN個の場合は、あるsampleを取り出し、全てのチャンネルの平均と分散を求め正規化を実施(下図の青い部分に対応)。
⇒ 特徴マップごとに正規化された特徴マップを出力 - ミニバッチの数に依存しないので、上記の問題を解消できていると考えられる。


参照元論文:https://arxiv.org/pdf/1803.08494.pdf
Layer-Normalizationは、入力データや重み行列に対して、以下の操作を施しても、出力が変わらないことが知られている。
- 入力データのスケールに関してロバスト
- 重み行列のスケールやシフトに関してロバスト
詳細は下記のスライドを参照
■https://www.slideshare.net/KeigoNishida/layerーnormalizationnips
2.3 Instance-Normalization(インスタンス正規化)
- 各sampleの各チャンネルごとに正規化
- コントラストの正規化に寄与・画像のスタイルや転送やテクスチャ合成タスクなどで利用
■ https://blog.cosnomi.com/posts/1493/
■ https://gangango.com/2019/06/16/post-573/
Instance-Norm


3.まとめ
最後まで読んで頂きありがとうございます。
皆様のキャリアアップを応援しています!!
コメント