1行定義
ブートストラップサンプリングとは、手元のデータから重複を許して無作為にデータを抜き出し、元と同じ件数の標本を何組も作る方法のことです。
くわしく
ブートストラップサンプリングは、1組しかないデータから、少しずつ違うデータの組を何通りも作る方法です。箱からくじを1枚引いて記録したら箱に戻し、また引く、という手順を繰り返すイメージです。このように、抜き出したものを戻してから次を抜き出す方法を復元抽出といいます。
手順と性質
n件のデータから復元抽出でn件を抜き出し、1つの標本(ブートストラップ標本)を作ります。これを何十回、何百回と繰り返します。戻してから引くので、同じデータが何度も選ばれたり、一度も選ばれなかったりします。
小さな例で確かめます。データがA、B、Cの3件なら、3回引いてAが一度も選ばれない確率は(2/3)^3 = 8/27で、約30%です。件数nが大きくなると、この確率(1 - 1/n)^nは約36.8%に近づきます。つまり1つの標本に含まれるのは、平均すると元のデータのうち約63%で、残りの約37%は一度も選ばれません。
何に使うか
- 推定のばらつきを見積もる:各標本で平均などを計算し、その値の散らばりから、推定値の誤差や信頼区間を求めます。統計学者エフロンが1979年に提案した、もともとの使い道です。
- バギング:各標本で別々のモデルを学習させ、予測を多数決や平均でまとめます。ランダムフォレストは、これに特徴量の無作為な選択を加えた手法です。
- OOB検証:ある標本で一度も選ばれなかったデータ(OOBデータ)を、その標本で学習したモデルの検証に使います。
似た方法との違い
交差検証は、データを重ならないように分けて、学習用と検証用を入れ替える方法で、復元抽出はしません。また、データ拡張のように新しいデータを作るわけでもなく、元のデータを選び直しているだけです。
覚え方
「引いたら戻す、だから重複と漏れが出る」と覚えます。
G検定での出題
出題のされ方
重複を許して無作為に抜き出す復元抽出であることや、バギングやランダムフォレストで少しずつ違う学習データを作るために使われること、選ばれなかったデータの扱いが問われます。
混同しやすい用語
| 用語 | 意味 |
|---|---|
| ブートストラップサンプリングこのページの用語 | 手元のデータから重複を許して無作為にデータを抜き出し、元と同じ件数の標本を何組も作る方法 |
| 交差検証 | データを複数のグループに分け、検証用のグループを入れ替えながら学習と評価を繰り返して、モデルの汎化性能を見積もる方法 |
◯×チェック
次の文が正しいか、誤りかを選んでください。
-
ブートストラップサンプリングは、もともと、平均などの推定値がどの程度ばらつくかを、手元の1組のデータだけから見積もるために考案された方法である。
答えを見る
答え ◯ 正しい
統計学者エフロンが1979年に提案しました。機械学習では、バギングやランダムフォレストで、少しずつ違う学習データを作るのにも使われます。
-
4件のデータから復元抽出で4件を抜き出すとき、特定の1件が一度も選ばれない確率は81/256(約32%)である。
答えを見る
答え ◯ 正しい
1回の抽出で選ばれない確率は3/4で、これが4回続くので(3/4)^4 = 81/256 ≈ 0.316です。件数が増えると、この確率は約36.8%に近づきます。
-
ブートストラップサンプリングは、元のデータにない新しい値を作り出して、データの件数を増やす手法である。
答えを見る
答え × 誤り
元のデータの中から選び直すだけで、新しい値は作りません。各標本の件数も、通常は元のデータと同じです。画像を回転・反転させて新しいデータを作るのはデータ拡張です。
この用語の練習問題
出典
- G検定 試験出題範囲(シラバス2024)第1.4版 (技術分野 項目7 教師あり学習)
- B. Efron, Bootstrap Methods: Another Look at the Jackknife, The Annals of Statistics 7(1), 1–26 (1979)
- Leo Breiman, Bagging Predictors, Machine Learning 24(2), 123–140 (1996)
- scikit-learn User Guide, Ensembles: Gradient boosting, random forests, bagging, voting, stacking