ミニバッチ学習とは?
読み方: ミニバッチガクシュウ
30秒まとめ
訓練データを小さなグループに分割して学習する手法。メモリ効率と学習速度のバランスを取る。
ミニバッチ学習の意味・定義
ミニバッチ学習(Mini-batch Learning)は、AIモデルの学習時に、全ての訓練データを一度に処理するのではなく、小さなグループ(バッチ)に分割して順番に処理する学習手法です。バッチサイズ(1回に処理するデータの数)は16、32、64、128、256などが一般的に使われます。 バッチサイズにはトレードオフがあります。バッチサイズが大きいと、勾配の推定が安定し学習が滑らかになりますが、GPUメモリの消費が増え、局所最適解に陥りやすくなります。バッチサイズが小さいと、勾配にノイズが加わることで局所最適解から脱出しやすくなり汎化性能が向上する傾向がありますが、学習が不安定になることがあります。全データを1バッチで処理する方式を「バッチ勾配降下法」、1サンプルずつ処理する方式を「確率的勾配降下法(SGD)」、その中間がミニバッチ勾配降下法です。現在のディープラーニングではミニバッチが標準的な学習方式です。