読者です 読者をやめる 読者になる 読者になる

【統計】仮説検定のロジックを追いかける(1)二項分布を使った例題

統計検定準一級を受けるぞ、という話を前に書きました。

wanko-sato.hatenablog.com

勉強を進めているところでして、ひとまずは

統計学入門 (基礎統計学)

統計学入門 (基礎統計学)

東大出版会の基礎統計学シリーズの統計学入門を読み終えました。入門とはいえ微積の計算がそこそこ出てくるので、微積にまったく触れたことのない、特に文系で数学を選択しなかった人にはちょっと辛い本かもしれません。
で、二冊目として基礎統計学シリーズの第三弾である

自然科学の統計学 (基礎統計学)

自然科学の統計学 (基礎統計学)

こちらをを読み進めているところです。さすがに自然科学向けとあって微分積分、行列演算の嵐です。まともに数学をやってこなかった自分にとってはなかなか難しい本です。数学の知識を補いつつ、なんとか頑張っていますけれども。
この本の第6章「検定と標本の大きさ」で検出力とサンプルサイズの決定方法について論じられています。自分はどうもこの「検出力」のロジックが苦手なようで、「検出力80%のサンプルサイズを云々」という話が出てもすぐにぱっと理解できないのです。統計検定を受けるにあたって、このあたり、つまり仮説検定のロジックがしっかりわかっていないとまずかろう、と思い立ちました。そこで、ブログにアウトプットすることで、ロジックをしっかりと追いかけ、考え方をしみ込ませよう、と思ったわけです。
仮説検定のロジックはそこまで複雑怪奇に入り組んでいるわけではありません。ただ、どの用語がどの確率を指しているのかを分かっていないと、論理の道筋を見失いがちです。ここでは、簡単な例題を出発点に、そのロジックを追いかけていきます。

※途中まで書いて、どう考えても長くなりそうなので、複数回に分けて書くことにしました。

簡単な例題

例題を上記の自然科学の統計学 (基礎統計学)から拝借します。

1日の終わりにn=100個の製品を抜き取り検査し、その中の不良品の数XX\geqq3の時製造工程に異常があるのではないかと判断して調査をし、X=0,1,2の場合には正常の状態であるとしてそのまま翌日の操業を続けるものとしよう。

(自然科学の統計学 p178より)

この例題では、製造工程の不良率が1%未満であれば合格、1%以上であれば不合格として調査、という判断を下すものと考えます。この問題は「100個抜き取りしたときに何個の不良があれば全体の不良率を1%と判断できるのか?」というところに帰着させることができます。

二項分布

この問題は「不良か否か」の個数の分布を考えるので、二項分布を使うことになります。二項分布は次の式で表されます。

f(x) = _{n}C_{x}p^{x}(1-p)^{n-x}

このとき、

n 全試行回数
x 成功回数(もしくは失敗回数)
p 成功確率(もしくは失敗確率)

であり、Cは組み合わせの数を数える式で、

\begin{eqnarray}_{n}C_{x} = \frac{n!}{x!(n-x)!} \end{eqnarray}

で定義されます。
今回の例題の場合、n=100p=0.01です。これをBi(100,0.01)と表します。
今回はxを変化させたとき、つまり100個の抜き取りに含まれる不良品の個数を変化させたとき、その出現回数がどの程度の確率なのか、を考えていくことになります。

確率分布

例えば、全体の不良率が1%と仮定したとき、100個抜き取りして不良品が出ない、つまりx=0のとき、

\begin{eqnarray}f(0) &=& _{100}C_{0}0.01^{0}(1-0.01)^{100-0}\\ &=& \frac{100!}{0!(100-0)!}0.99^{100}\\ &=& 0.366\end{eqnarray}

100!の計算は手でやろうとすると非常に面倒ですが、x=0のときは分母と分子で打ち消しあうので0.99^{100}だけ計算すれば良いです。すると、不良率1%の製造工程において、抜き取りした100個のうちに不良品が含まれない確率はおよそ36.6%になります。同じようにざくざく計算していくと、

不良個数 確率
0 0.366
1 0.370
2 0.185
3 0.061
4 0.015
5 0.003

となります。有効桁数を3桁でとると、不良個数6個以上になる確率はほぼ0になります。グラフにするとこんな感じです。

f:id:wanko_sato:20170218084107p:plain

※よくよくみるとx\geqq6でも確率は0ではありません。確率はものすごく低いけれども決して起こらないとは言えない事象なのです。このあたりが統計的推論を行う際に気を付けなければならない点です。

めったに起こらない事象

そもそもの例題では、抜き取り100個のうち、3個以上の不良が混じっていれば異常がある、と判断するのでした。もしこの製造工程の不良率が1%である場合、抜き取り100個に3個以上の不良品が混ざる確率は、二項分布のうちx\geqq3の累積確率として計算できますので、

\begin{eqnarray} \sum^{100}_{x=3}\end{eqnarray}{_{100}C_{x}}0.01^{x}0.99^{100-x} = 0.079

およそ7.9%の確率で出現するといえます。
つまり、この製造工程の不良率が1%だとすると、100個の抜き取りで3個以上の不良が混ざる確率は7.9%であり、100回の抜き取り検査で7~8回は3個以上の不良が混ざることがある、ということを言っているのです。もし、この7.9%が「めったに起こらない確率」と判断するのであれば、そもそもの「この製造工程の不良率は1%である」という仮定が疑わしい、したがって、不良率は1%以上である可能性が高い、というロジックが成り立つわけです。

有意水準

不良率1%の製造工程で、抜き取り100個した場合に3個以上の不良品が検出される確率は7.9%でした。もともとの例題を見直してみましょう。

1日の終わりにn=100個の製品を抜き取り検査し、その中の不良品の数XX\geqq3の時製造工程に異常があるのではないかと判断して調査をし、X=0,1,2の場合には正常の状態であるとしてそのまま翌日の操業を続けるものとしよう。

ここでは3個以上の不良品が見つかったらアウト、としています。3個以上の不良が見つかる確率が7.9%でしたから、それは不良率1%の製造工程ではめったに起こらないことだからおかしい、調査をしよう、と判断しているのです。
しかし、逆にいえば不良率1%で抜き取り100個のうち3個以上の不良が見つかる確率は7.9%あるわけです。ですから、不良率が1%以下であるにも関わらず、間違って「製造工程に問題がある」と判断してしまう可能性が7.9%ほどある、ともいえるのです。

※ここらあたりが統計的推論のややこしいところです。慣れればすっと理解できるようになるのですが、慣れないうちはそのロジックの組み立て方についていくのがなかなか大変です。

判断は100%正しいわけではない

今回の例題は「抜き取り検査によって製造工程に問題があるかどうかを判断する」ことが目的でした。もし「抜き取り100個で3個以上の不良が出たら問題があると判断する」と決めた場合、不良率1%という仮定のもとでは7.9%ほど、その判断を誤る確率があります。二項分布のグラフで見たように、例えば100個中100個が不良である確率は、ほとんど0に近いけれども全く起こらないというわけではありません。このように、サンプリング調査の場合、判断を誤る可能性は常に残っています。
そこで、「判断を誤る可能性がある確率よりも低ければ許容する」という基準を設ける必要が出てくるのです。その基準を有意水準と呼び、記号\alphaで表します。
今回の例題の場合、その確率自体は明示されていません。そのかわり、100個中3個以上、という基準が設けられています。すでに計算したように、不良率1%という前提のもとでは100個中3個以上の不良が出る確率は7.9%でした。ですから、有意水準\alpha=0.079で判断を行っている、ということになります。

※二項分布の累積確率はRでは次のようにして計算できます。

sum(dbinom(3:100,100,0.01))

これはBi(100,0.01)の二項分布で、3\leqq x \leqq100の範囲の総和をとる、という意味合いになります。

今回はここまで。