Web教科書

バギング

バギング(Bagging)

1. 解説

バギング(Bagging)は、正式名称を「Bootstrap aggregating」と言い、その名の通り「ブートストラップサンプリング」と「アグリゲーティング(集約)」を組み合わせたアンサンブル学習の手法です。

最大の特徴は、複数のモデルを「並列(Parallel)」に独立して学習させる点です。それぞれのモデルは少しずつ異なるデータで学習するため、予測結果にバラつきが出ますが、最後にそれらの結果を「多数決(分類)」や「平均(回帰)」で統合することで、外れ値の影響を薄め、安定した予測を実現します。

バギングの3ステップ

バギングは以下の手順で行われます。

  1. ブートストラップサンプリング(Bootstrap Sampling):
    元のデータセットから、「復元抽出(重複を許してランダムに選ぶ)」を行い、N個の新しいデータセットを作ります。
    ※復元抽出とは:くじ引きで、引いたくじを箱に戻してから次のくじを引く方式。同じデータが何度も選ばれることもあれば、一度も選ばれないデータもある。
  2. 並列学習(Parallel Learning):
    作成したN個のデータセットを使って、N個のモデル(弱学習器)を独立して学習させます。
  3. 集約(Aggregating):
    N個のモデルの予測結果をまとめます。

    • 分類問題なら → 多数決
    • 回帰問題なら → 平均値

バギングの効果:分散(Variance)を下げる

決定木のようなモデルは、学習データが少し変わるだけで結果が大きく変わる(=分散が大きい)性質があります。
バギングは、あえて異なるデータで学習させた「多様なモデル」の平均をとることで、この分散を抑え、過学習(Overfitting)を防ぐ強力な効果があります。


2. G検定対策

出題ポイント

  • 用語の定義:「ブートストラップサンプリング(復元抽出)」+「アグリゲーティング(集約)」= バギング。
  • 並列処理:モデル同士に関連性がないため、同時に計算(並列処理)が可能で、計算時間を短縮しやすい。
  • ランダムフォレストとの関係:
    • バギング = 手法(枠組み)の名前
    • ランダムフォレスト = バギングを用いて決定木を学習させる具体的なアルゴリズム

ひっかけ対策・注意点

  • × ブースティングとの混同
    (解説)バギングは「並列」で「過学習抑制(分散を下げる)」が目的。ブースティングは「直列」で「精度向上(バイアスを下げる)」が目的です。
  • × 常に精度が上がるとは限らない
    (解説)元のモデル(弱学習器)の性能があまりにも低すぎる場合や、データに偏りが強すぎる場合は、バギングを行っても効果が薄いことがあります。
タイトルとURLをコピーしました