スポンサーリンク

検定と確率の関係について ~確率密度関数の役割ってなんなの?~

記事内に広告が含まれています。

確率密度関数について色々と書いてる当ブログですが、僕は確率密度関数を勉強したての頃は、確率密度関数って概念と他の知識が上手く結びつかなくて、「確率密度関数ってなんか分かりづらいなぁ」と思っていました。

まぁ、他の知識と上手く結びつかないってのは僕だけの現象かもしれませんが、

  1. 確率密度関数の意味とか重要性が分かりやすくなる
  2. 結び付けた知識についても理解を深められる
  3. 複数の知識を結び付けるときにこの記事の考え方が応用できる

と思いまして、今回は検定と確率密度関数という二つの概念がどう関係してるのかって所に焦点を絞って解説してみました(知識を結び付けた解説をちゃんとできてるかどうかは謎ですが)。

まぁ、上のメリット3つは僕が勝手に思ってるだけなんで、そんな可能性もあるかもなぁって話半分に受け取っといてほしいことではありますが、知識が上手く結びついてないって方はこの記事を読んどいて損はないんじゃないかと。

スポンサーリンク

根拠のない主張など俗物の戯言にすぎない

この記事を読まれてる方であればすでに理解できてるって方も多いかもしれませんが、検定とは何かについて説明しておきます。

そんなにしっかりと理解してる必要はないものの、考え方くらいは理解しとかないと、話をまったく理解できないなんて事にもなりかねませんので。

検定ってのは、一言で言えば「データからある仮説が成り立つかどうかを確かめる作業」となります。

なので、検定の最終目的は「データから考えられる主張が正しいのかどうかを論理的かつ定量的に主張すること」となります。

一応、例を使った説明をしていきますが、以前の検定解説記事と今回の解説とを対比させた方が分かりやすいんじゃないかと思ったんで、今回も同じ例を使うことにします。

以前の記事では、「コイントスをやって、30回中21回が裏だった。その結果は偶然だと言えるだろうか?」という問題を考えていました。

さて、先ほど「検定とは、データからある仮説が成り立つかどうかを確かめる作業だ」と説明しました。

今回の例で言えば、データに当たるものは30回中、21回裏が出たという結果になります。ある仮説とは「その結果が偶然により発生したものである/ではない」になります。

なので、検定の最終的な目的はこの仮説が正しい(あるいは正しくない)と主張することになります。

ただし、仮説が正しいかどうかを何の根拠も論理も無しに主張してみても、その主張は信頼性のない個人の雑感にすぎないってことは、皆さんも納得していただけるかと思います。

というわけで、「偶然である(仮説は正しくない)」という主張にしても「偶然でない(仮説は正しい)」という主張にしても、主張が正しいと言えるだけの根拠と論理を明確に示してやりたいわけです。

で、仮説を客観的根拠のない雑感から信頼に値する科学的主張へと昇華させるときに、確率密度関数という概念が登場することになります。

確率密度関数は事象のレアリティを定義する

確率密度関数とはざっくりと言えば、事象の起こる確率を定義するための関数のことです。

ところで、そもそもの話ですが、統計学で言うところの「事象」というのは、数値で表されます。というより、統計学で扱えるようにするために数値で表現します。

例えば、オレンジの品質を検査したい場合なんかだと、重さとか、甘さ(糖度)、色合い(RGBコード)みたいな感じで数値化できます。で、「オレンジの重さがある重さxである」というようなことを事象と考えて統計分析をしていくわけです。

なので「確率密度関数とは、ある事象の起こる確率を定義した関数である」とは、別の言葉で言い表せば、「確率密度関数とは、ある数値の発生する確率を定義した関数である」となります。

ちょっと強引ですが、各数値(事象)に対する偶然性を定義する関数とも言えます。この「偶然性を定義している」という部分を検定で利用することになります。

平たく言えば、確率密度関数は事象のレアリティを表してるってことですな。

”レア”を具体的な数値で示すと・・・?

今は「データとしてコイントス30回中、21回が裏という結果が与えられている。これは偶然と言えるのだろうか?」という問題を考えていました。そして「偶然と言える/言えないが、最終的に主張したい仮説である」、「確率密度関数は事象のレアリティを表すものだ」といった説明をしました。

ここで、「レアリティが高いってのは数値で表すとどのくらいなの?」ってのを考える必要が出てきます。つまり、その事象が偶然に起こると考えて問題ないのか、それとも偶然に起こると考えるには無理があるのかを考える必要があるってことですな。

例えば「ソシャゲのガチャで100回中2回SSRが出た」というくらいなら、「まぁ確率的にはそんなもんかな」って気がしますけど、「ソシャゲのガチャを100回やったら57回SSRが出た」みたいなことが起こったら、「何か操作されてないか?」と疑いたくなりますよね。

じゃあ、その疑う/疑わないという境界はどれくらいなの?を議論するに当たっては客観的な数値として示しておく必要があるわけです。この疑う/疑わないの分水嶺が有意水準になります。

統計学では伝統的に、20回中1回とか100回中1回なんかを有意水準とすることが多いです。今回はその中の20回中1回(=5/100=5%)を偶然と定義します。

つまり、もしある事象の発生する確率が5%を下回っていれば、偶然ではなく何かしらの操作があると疑って、5%を上回っていれば、偶然的に発生し得るものだと判断すると決めたことになります。

ここまで考えられたら、あとは「30回中21回の裏」を計算して主張の正しさを示すだけです。このデータのレアリティ計算のときに確率密度関数が必要になります。

戯言と客観的主張の差は

確率密度関数はある事象の発生する確率を定義したものだと説明しましたが、その確率密度関数にも色々な種類があります。

事象の性質によって、妥当な確率密度関数の種類が変わってきます(確率密度関数の妥当性は長くなるので割愛)。

コイントスの場合、確率は二項分布と呼ばれる確率密度関数で与えられます(厳密には二項分布は確率密度関数ではありませんが)。その二項分布というのは、次のような形式で与えられます。この計算をすればレアリティが求められます。

$$ f(x) = {}_N \mathrm{C} _x \times P^x \times ( 1 – P )^{ N-x }$$

この式は、試行をN回行って、ある結果が発生する確率がPである場合に、その結果がx回発生する確率はどれくらいかを計算しています。要するに、試行を何回するか、成功確率がどれくらいかという条件が与えられた上で、ちょうどx回だけ発生する確率はどれだけかを表しています。

もうちょっと砕けた言い方をすれば、「排出率Pで、N回中x回排出されたというデータのレアリティはどれくらいかを計算してる」となります。

スポンサーリンク

今回の場合、試行はコイントスなのでPは0.5です(結果は表か裏のどちらかで、どちらの結果になる確率も本来なら同じはずなので)。「コイントスを30回行った」という条件が与えられているのでNは30です。

この条件下で、裏の発生回数xを0から30まで変化させて描いたグラフが下の図になります。

図1.試行回数30回、発生確率0.5%の二項分布

この内、どこまでが偶然と言えてどこからが偶然と言えないのかを求めます。どうするかと言うと、0から順番に累積確率密度を計算してきます。1、2、・・・と計算していって、累積確率密度がちょうど0.95(=95%)を超えるのは発生回数が何回のときかを計算します。

上の図を95%の確率で発生する部分と5%の確率でしか発生しない部分とに分けるってことですな。

実際にExcelで上の式に数値を代入して計算してみると、19回以上裏が出る確率は有意水準である5%を下回るという結果になりました。具体的な計算方法が知りたかったら本を読むなりググるなりしてしてください。

つまり、裏の出る回数が19回未満と19回以上で二分される結果となりました。図で表せば下図のような感じ。

図2.棄却域を図示した試行回数30回、発生確率0.5%の二項分布

この塗りつぶされている部分が、裏が19回以上出る確率を表していて、棄却域と呼ばれる領域になります。19回以上裏が出た場合は「偶然ではないんじゃないか?」と疑った方が妥当だということになります。

今回は30回中21回が裏だったというデータが与えられていました。上の結果と合わせて考えれば、これは偶然とは言えないという結論になります。つまり「コイントスを30回もやれば裏が21回出ることもある」という主張は否定されることになります。

統計学の言葉で言えば、データは棄却域に入っているために、仮説「コイントス30回中21回が裏という結果は偶然起こることもある」は棄却されることになります。

結果として「データとしてコイントス30回中、21回が裏という結果が与えられている。これは偶然と言えるのだろうか?」の答えは「No」つまり、「偶然とは言えない」となります。

ソシャゲのガチャと対応させるなら、「コイントス30回中21回が裏」というデータは「100回中2回SSRが出た」ではなく、「ソシャゲのガチャを100回やったら57回SSRが出た」みたいな状況に近いってことですな。

まとめ

つまり、確率密度関数の検定での役割は「検定を行う際の偶然である/偶然でないの境界を数値的に示して、結論に説得力を持たせること」になります。

検定の結論を主張できる根拠が確率密度関数だってことですな。

一応、この記事の一連の流れをまとめとくと、

  1. 検定はデータを基に主張が正しいかどうかを論理的かつ定量的に示すことが目的。
  2. なんだけど、何の根拠もなく「偶然だ(あるいは必然だ)」と主張をしてみても説得力は皆無。
  3. そこで、どんなデータなら偶然だと言えて、どんなデータなら偶然だと言えないのか?を確率密度関数を利用して数値的に示す。
  4. その数値とデータとを比較してみて、検定の結論を出す。

って感じになります。

確率密度関数の役割とか重要性が分からなくてあんま頭に入ってこないなって方は参考にしてみてください~。

ではでは~

タイトルとURLをコピーしました