スポンサーリンク

問題の解答・解説ページ

このページは解説の閲覧モードです。
実力試しをしたい方は、下のボタンからクイズに挑戦してください!

この問題をクイズ形式で解く
問題 No.2003
機械学習やディープラーニングの学習時において、訓練データを複数の小さなグループに分割し、そのグループごとに損失関数の勾配を計算してパラメータを逐次更新していく最適化手法の総称はどれか。

【正解の解説】

ミニバッチ学習

これは学校のテスト勉強で、全範囲を一度に総復習するのではなく、数ページずつの「小テスト」を何度も繰り返して着実に理解を深めていく勉強法に非常によく似ています。すべてのデータを一度に処理する「バッチ学習」の重さと、1問ごとに一喜一憂する「オンライン学習」の不安定さ、その両方のいいとこ取りをした最も現実的で効率的な手法です。

スポンサーリンク

【その他の選択肢の解説】

バッチ学習

ミニバッチ学習と混同しやすいですが、こちらは全データから計算した平均的な勾配で一度に学習を進めます。データ量が膨大になるとメモリがパンクしてしまう点や、計算に膨大な時間がかかるというデメリットがあり、実際のディープラーニングの現場ではあまり使われないという出題者の罠が潜んでいます。

オンライン学習

これは飲食店で料理を提供する際、お客さんの注文が入るたびにその都度1人前ずつ調理して即座に出すようなスタイルです。リアルタイムの変化に対応できるメリットがある反面、外れ値やノイズのデータに過剰に反応して学習が不安定になりやすいという特性があり、グループごとに処理するミニバッチ学習とは決定的に異なります。

アンサンブル学習

こちらはデータの分割と学習のサイクルに関するミニバッチ学習とは異なり、決定木やニューラルネットワークなど複数のモデル自体を合体させる手法です。「バッチ」という言葉の響きが似ているため混同しやすいため、データ処理の単位の話なのか、モデルの組み合わせの話なのかをしっかり区別して覚える必要があります。