【ミニバッチこうばいこうかほう】
ミニバッチ勾配降下法 とは?
最終更新:
💡 少人数チームで素早く判断を積み重ねる、賢い会議スタイル
訓練データの小さなまとまりから損失の勾配を計算し、その勾配を使ってモデルのパラメーターを更新する最適化手法。バッチサイズや学習率を調整しながら、更新を繰り返す。
📌 このページのポイント
- 全データの一部を使って勾配を求め、パラメーターを更新する
- バッチサイズはデータ・モデル・メモリなどに応じて決める
- 複数サンプルをまとめると、並列計算を活用しやすい
- 速度や勾配のばらつき、学習結果のバランスを評価する
勾配降下法ってデータ全部使うんじゃないの?
ミニバッチって何件くらいのまとまりなの?
なんでわざわざ小分けにするの?
全データを使った勾配の計算を待たずに更新できるし、同時に扱うデータの量も抑えられるよ。複数の勾配を平均することで、独立にサンプルを選ぶなどの条件では1件だけよりばらつきが小さくなる。ただしバッチを大きくすれば必ずよい学習になるわけではないんだ。
GPUとも相性がいいって聞いたんだけど、それはなんで?
更新のたびに損失は下がるの?
必ずではないよ。選んだバッチによって勾配が変わるし、学習率が大きすぎると不安定にもなる。全体の損失や学習に使っていないデータでの結果を確認しよう。「少量ずつだからいつも速くて安定」とは言い切れないんだ。
📖 おまけ:英語の意味
「Mini-Batch Gradient Descent」 = ミニバッチ勾配降下法
💬 Gradient(勾配)とDescent(降下)で「損失の坂を下る」イメージ。Mini-Batchは「小さなまとまり」で、全データでも1件ずつでもなく中間の量を使う工夫から来ているんだよ。