【あんさんぶるがくしゅう】

アンサンブル学習 とは?

💡 複数のモデルの「合議制」で予測精度を高める手法
📌 このページのポイント
アンサンブル学習の仕組み 入力データ モデルA 決定木 モデルB SVM モデルC ニューラルネット 予測: A 予測: B 予測: A 多数決 / 平均 最終結果: A 複数モデルの予測を統合し、単体より高精度・安定な結果を得る
複数モデルの予測を組み合わせて精度を高めるアンサンブル学習
ひよこ ひよこ

なんで複数のモデルを使うと精度が上がるの?

ペンギン先生 ペンギン先生

「三人寄れば文殊の知恵」と同じ発想だよ。1人の専門家の意見より、複数の専門家の多数決の方が正しい判断になりやすいよね。各モデルが異なるパターンを学習して、お互いの弱点をカバーし合うから、結果として精度が上がるんだ。

ひよこ ひよこ

バギングとブースティングってどう違うの?

ペンギン先生 ペンギン先生

バギングは複数のモデルを独立に学習させて、最後に多数決や平均で結果をまとめる「並列型」。ランダムフォレストが代表格だね。ブースティングは前のモデルの誤りを次のモデルが修正していく「直列型」。XGBoostやLightGBMが代表格。一般的にブースティングの方が精度が高いけど、過学習しやすいという特徴があるよ。

ひよこ ひよこ

どういう場面で使うの?

ペンギン先生 ペンギン先生

精度を少しでも上げたいときに使うよ。Kaggleのコンペでは、複数の異なるアルゴリズムXGBoost、LightGBM、ニューラルネットなど)の予測を組み合わせる「スタッキング」というテクニックが定番。0.001%の精度差で順位が変わる世界だから、アンサンブルは必須テクニックなんだ。

ひよこ ひよこ

アンサンブルのデメリットってある?

ペンギン先生 ペンギン先生

計算コストが跳ね上がるのと、モデルが複雑になりすぎて何が起きているか理解できなくなるのが大きな課題だよ。特にKaggleでは数十モデルのスタッキングで優勝することもあるけど、実際のビジネスでそんなモデルを運用するのは現実的じゃない。予測に1秒かかるモデルを10個重ねたら10秒かかるからね。さらに根深いのが「多様性のパラドックス」で、アンサンブルは各モデルが異なる間違い方をすることで効果を発揮するんだけど、精度の高いモデル同士は似た予測をする傾向がある。つまり「精度が高いモデルを集めても多様性が低いのでアンサンブル効果が薄い」という矛盾が生まれるんだ。精度と多様性のバランスをどう取るかは、実はかなり奥深い問題なんだよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「アンサンブル学習」って出てきたら「複数のモデルを組み合わせて予測精度を上げる手法のことだな」と思えればだいたいOK!
📖 おまけ:英語の意味
「Ensemble Learning」 = 合奏による学習
💬 Ensembleはフランス語で「一緒に・合奏」。複数の楽器が合奏するように、複数のモデルが協力して予測する手法だよ
← 用語集にもどる