ブートストラップサンプリングを繰り返して生成した判別器を合成して,より判別精度の高い判別器を生成する方法.
Bagging
- 以下の手続きを \(t=1,2,\ldots,T\) について反復
- 入力訓練データ集合 \(D\) から,事例の重複を許してブートストラップサンプル \(D_t\) を得る.
- \(D_t\) を弱学習器に与えて仮説 \(h_t\) を得る.
- 最終結果は,クラス分類問題の場合は \(h_1,\ldots,h_T\) の多数決投票で,回帰問題の場合は,平均 \(\frac{1}{T}\sum_t^T h_t\) とする.
- 名称は Bootstrap AGGregatING に由来
- ブースティングと違って,弱学習器が事例を重み付け出来なくても適用でき,また,回帰問題への適用も容易.
- 比較実験では,ブースティングに対して負けることが多い.
- 回帰問題での理由付け:ある真の入出力対 \((y,x)\) について考える.ある,訓練集合 \(S\) で学習した学習器の出力を \(f(x;S)\) で表す.
2乗誤差の,あらゆる訓練事例集合 \(S\) についての期待値 \(\mathrm{E}_S[(y-f(x;S))^2]\) に,\(\mathrm{E}[X^2]\ge(\mathrm{E}[X])^2\) を適用すると
\[\mathrm{E}_S[(y-f(x;S))^2]\ge(y-\mathrm{E}_S[f(x;S)])^2\]
ところで,バギングの出力は,いろいろな訓練事例集合に対する平均である.これは,\(\mathrm{E}_S[f(x;S)]\) に近づくことから,バギングの2乗誤差が右辺の下限に近づくことが分かる.
- クラス分類についての同様の議論はアンサンブル学習を参照.
- 他のアンサンブル学習と同様に,バリアンスを下げるための手法なので,弱学習器がFisher判別分析などの安定的な,高バイアスのものでは性能は向上しない.
- 訓練事例からサンプリングする代わりに,訓練事例の入力からカーネル密度推定した分布からサンプリングして,予測精度を上げる方法なども.
- ニューラルネットの分野では コミッティマシン (committee machine) ともいう.
-- しましま
関連項目†
リンク集†
関連文献†