ブートストラップ法
統計学におけるブートストラップ法(ブートストラップほう、bootstrap method)とは、様々な目的に用いられる統計的推論の手法であり、再標本化法に分類されるもののひとつである。モンテカルロ法の一つ。
ブートストラップ法は母集団の推定量(分散など)の性質を、近似分布にしたがって標本化したときの性質を計算することで推定する手法である。近似分布としては、測定値から求められる経験分布を用いるのが標準的である。また仮説検定に使う場合もある。仮定される分布が疑わしい場合や、パラメトリックな仮定が不可能ないし非常に複雑な計算を必要とするような場合に、パラメトリックな仮定に基づく推計の代わりに用いられる。
ブートストラップ法の利点は解析的な手法と比べて非常に単純なことである。母集団分布の複雑なパラメータ(パーセンタイル点、割合、オッズ比、相関係数など)の複雑な推定関数に対して標準誤差や信頼区間を求めるために、単にブートストラップ標本を適用するだけで済む。
一方ブートストラップ法の欠点として、漸近的に一致する場合には有限標本が保証されず、楽観的になる傾向がある。
この手法の基本概念と価値を示すため、やや人工的な例を用いる。フィッシャーによる有名なアヤメの計測値(Iris flower data setを参照)を用い、iris-virginica と iris-versicolor の2種を判別するモデルを構築することを考える。
この2種を、がく片の長さのみを説明変数として判別するロジスティック回帰モデルを考え、最尤法を用いると、次表のとおりパラメータの最尤推定値と標準誤差が得られる。
2.01×がく片長-12.57≧0のとき virginica と判別
2.01×がく片長-12.57<0のとき versicolorと判別
(このモデル式では、virginica は標本50個中37個、versicolor は50個中36個が正しく判別されている。)
最尤推定値は漸近的には正規分布することが知られている。今回の標本50個ずつのデータで出した最尤推定値(切片:-12.57、がく片長の係数:2.01)が、どの程度正規分布に近いか、ブートストラップ法で以下のように調べることができる。
元データからn個の標本を復元抽出する。このときnは元データの標本数である。
最尤法でロジスティック回帰モデルに当てはめる。
このブートストラップ抽出を何度も(B回)繰り返す。
こうして計算された「推定量の標本分布」は、本来の標本分布の近似になっている。
下図は10000回のブートストラップ抽出により推定された2つのパラメータのカーネル密度プロットである。
これらのパラメータの分布は当然のことながら正規分布ではない。これは、標本数が有限であり、漸近的にしか正規分布にならないためである。最尤推定値について正規分布の仮定を置かなくても、ブートストラップを用いて得た分布を使えば、最尤推定値の信頼区間の推定や仮説検定を行うことができるようになる。
ブートストラップ標本から信頼区間を推定する方法として、推定量の変位値(\alpha;と1-\alpha)を使う方法がある。これをブートストラップパーセンタイル区間と呼ぶ。この例では、切片とがく片長の係数のブートストラップ95%パーセンタイル区間は、それぞれ(-20.02, -7.08)と(1.26, 3.20)となる。
一方、正規分布を仮定した95%信頼区間は最尤推定値プラスマイナス1.96倍標準誤差で求められ、それぞれ(-18.26, -6.87)と(1.10, 2.93)となる。漸近理論を用い正規分布を仮定して求めた信頼区間は対称になっており、ブートストラップを用いた信頼区間と比較すると狭い。
非復元抽出によるもの、2標本問題、回帰、時系列、階層的抽出、mediation analysis などの統計的問題を取り扱うような、より複雑なブートストラップ法がある。
一変量の解析では、普通は復元抽出で再標本化して構わない。しかし標本数が少ない場合にはパラメトリックなブートストラップ法の方が適切な場合もあるし、問題によっては平滑化ブートストラップ法が適切になるだろう。回帰問題の場合には様々な代替法がある。
これは毎回の繰り返しごとにわずかな(ふつうは正規分布の)ゼロ平均ランダムノイズを加える方法である。これはデータのカーネル密度推定量から再標本化することと等価である。
パラメトリックなモデルを(たいていは最尤法により)データに当てはめ、このモデルからランダムな個数の再標本化を行う方法である。
回帰問題において、個々のケース(たいていはデータセットの各行)について再標本化を行う単純な方法をいう。データセットが十分大きければ、たいていこういう単純な方法でも構わない。しかし議論の余地はある。
説明変数はたいてい固定されているか、少なくとも従属変数よりも支配的である。また説明変数の範囲がそこから引き出される情報を規定する。したがって個々のケースを再標本化することは、ブートストラップ標本は何らかの情報を失っていることを意味する。したがって他のブートストラップ法を考慮すべきである。
回帰問題におけるブートストラップを行うもう一つの方法は、残余を再標本化するものである。すなわち、
モデルを当てはめ、当てはめた値を\hat\mu_i、残余をr_i(i = 1, \dots, n)とする。
説明変数x_iと従属変数y_iの組(x_i, y_i)のそれぞれについて、ランダムに標本化した残余r_iを従属変数y_iに加える。
モデルを再度当てはめ、目的の量(たいていは推定したパラメータ)を記録する。
2と3のステップをB回繰り返す。
この方法は説明変数の持つ情報を保持しているという利点がある。しかしどの残余を標本化するのかという疑問が起こる。そのままの残余を用いる手もあるし、(線形回帰では)スチューデント化残差を用いることもできる。スチューデント化残差を使う方が好ましいという議論はあるのだが、実際にはほとんど差がでない上、双方を用いて互いに結果を比べることは容易である。
前項と同様だがランダムに標本化した残余の符号をさらにランダムに変えるものである。これは残余の分布が対称なことを仮定しており、元の標本数が少ない場合に利点がある。
ブートストラップ法は正規性を要求せず少ない標本数(N < 20)でも効果的であるため、メディエーションを検定する手法として一般的になりつつある。しかしバロンとケニーの論理やSobel検定により(もしかしたら不適切に)決定されることがいまだに多い。
ニューカムの光速のデータを用いる。このデータセットには2つの明白な外れ値が含まれており、このため推定する場所としては平均値よりも中央値が好ましい。ブートストラップ法は中央値の信頼区間を推定するのに採用されることが多い。しかし中央値は離散統計量であり、このことはブートストラップ標本の分布で際立って明らかになる。
中央値の離散性を平滑化するために、毎回のブートストラップ標本にN(0,\sigma^2)にしたがうわずかなランダムノイズを加えることができる。標本数nに対して\sigma = 1/\sqrt nとする。
ブートストラップ標本と平滑化ブートストラップ標本のヒストグラムを以下に示す。ブートストラップ標本では中央値として取り得る値が限られているため非常にギザギザした分布になっている。平滑化ブートストラップ標本ではこの点が克服されている。
ブートストラップ分布の方は見づらく直感的には誤っているように見えるが、しかしこれから得られる信頼区間はさほど悪くない。95%パーセンタイル区間はブートストラップ分布で(26, 28.5)、平滑化ブートストラップ分布で(25.98, 28.46)である。
ジャックナイフ法は外れ値の検出に、クロスバリデーションは再現性の確認に用いられるものである。