統計学

ブートストラップ法

2022年7月15日


ブートストラップ法とは、取得できたサンプルデータが少ないときに、統計的な分析をするのに全然データが足りない場合に使用できる方法になる。
その少ないデータの中に外れ値と呼ばれるようなデータが含まれている場合は、そのデータがブートストラップ法によって算出される可能性が高くなるので、そうなる場合は処理を除くなどの必要性が高まる。
ここではそんなブートストラップ法について簡単に説明をしていこうと思います。

ブートストラップ法とは


 

取得したデータから、平均の分布を構築していくイメージになります。

真の分布(真の事象)からよく出るデータ(確率変数)は、
もちろん採れたデータにもよく含まれるはずなので、
その後そのデータに対してのブートストラップ処理をかましても、結局よく出るよねということになる。
 

簡単にブートストラップについて具体的なデータを用いて説明します。
例として取れたデータを、
1,1,2,2,2,3,3,3,3,3,3,4,4,4,5の15個とします。(あくまで例なのでめちゃ少ないですが、、)
このデータを分布にしてみると、3が多いので、3あたりが平均値としてはあり得そうなグラフができますね!
(ただ偶然15個とったらこういうデータが取れて、本当は20とかがめちゃくちゃ確率的には出るのかもですが、それは今回置いておきます。数増やせばいいだけなので。)
ここで真の平均を考えていきたいと思います。

そして上で取れたデータ15個からランダムでサンプリングをしていきます。
袋に上の15個の数字が入ったと見立てて、そこから値を取ると、当然ながら3が一番多いので、3が出やすいです。
それを同じように15回くらい復元でサンプリングしていくと、
1,1,1,2,2,2,3,3,3,3,4,4,4,5,5の15個取れたとします。
これがいわゆるブートストラップになります。
元々取れたデータに対してサンプリングをしていく手法になります。

これを実際に理論的に考えていきたいと思います。
 

ブートストラップ法を理論的に捉える

まず得られたデータを\( {\lbrace x_{i} \rbrace}_{i=1,2,...,n} \)とします。\(・・・①\)

ここから仮の真の平均(標本平均)を出すと、\(\hat\theta = \displaystyle \frac{1}{n} \sum_{i=1}^{n} x_{i}\)となります。

そして次にブートストラップ処理を行います。
1回目で\(①\)から\(n\)回サンプリングを行い、取れたデータを\( {\lbrace x_{1i} \rbrace}_{i=1,2,...,n} \)とします。そしてこのデータからの平均値を\(\theta_{1}\)とします。そしてx
2回目で\(①\)から\(n\)回サンプリングを行い、取れたデータを\( {\lbrace x_{2i} \rbrace}_{i=1,2,...,n} \)とします。そしてこのデータからの平均値を\(\theta_{2}\)とします。
3回目で\(①\)から\(n\)回サンプリングを行い、取れたデータを\( {\lbrace x_{3i} \rbrace}_{i=1,2,...,n} \)とします。そしてこのデータからの平均値を\(\theta_{3}\)とします。
...
を繰り返し行っていき、
\(m\)回目で\(①\)から\(n\)回サンプリングを行い、取れたデータを\( {\lbrace x_{mi} \rbrace}_{i=1,2,...,n} \)とします。そしてこのデータからの平均値を\(\theta_{m}\)とします。
 

これにより、ブートストラップ処理により、
\(\theta_{1}\), \(\theta_{2}\), \(\theta_{3}\), ..., \(\theta_{m}\)の\(m\)個のブートストラップ平均値が取得できました。
これはまさに平均の分布図が書けそうですね!
ブートストラップ標本から得られた各種平均\( {\lbrace \theta_{i} \rbrace}_{i=1,2,...,m} \)を小さい順に並び替えます。
 

ブートストラップ法の要注意ポイント

少ないデータだからと全ての取得できたデータを用いるのではなく、これは普通あり得ない数値だなとか、疑わしき値があればそれは除くなどのデータクレンジングをした上で、ブートストラップ法を行う必要があります。

やる場合は外れ値も考える必要があるので、外れ値は必ず左か右かになるので、極端に値が大きい、かけ離れているものがあれば、それを除くのは1つの手段かなと思います。
少ないデータの中に外れ値が混ざってしまっていると、その数値がブートストラップを行った後かなり外れ値が紛れ込んだ平均となってしまうので、要注意です。

そして求めた平均値を小さい順にならべることで、分布関数を導くことも可能になります。
分布関数と確率密度関数は1対1なので、分布関数が求まってしまえば、平均の確率密度関数(正式には連続ではないので、確率関数)を求めることもできます。

-統計学
-

© 2022 Yosshi Blog Powered by AFFINGER5