めもめも

このブログに記載の内容は個人の見解であり、必ずしも所属組織の立場、戦略、意見を代表するものではありません。

Bayesの定理とBayes推定を初心者向けに説明してみる

簡単な例

どれか1つのボールが等確率で出てくる玩具があります。


小玉 大玉 合計
青玉 2 3 5
赤玉 6 1 7
合計 8 4 12


■周辺確率の関係式

青玉が出てくる確率は、

 P({\rm Bule}) = \frac{2+3}{12}

小さな青玉が出てくる確率は、

 P({\rm Blue, Small}) = \frac{2}{12}

大きな青玉が出てくる確率は、

 P({\rm Blue, Large}) = \frac{3}{12}

これらから分かるように、

 P({\rm Blue}) = P({\rm Blue, Small}) + P({\rm Blue, Large})

一般には、下記の Sum Rule(周辺確率)が成立する。

 P(X) = \sum_{Y} P(X, Y)


■条件付き確率の関係式(Bayesの定理)

小玉が出たとわかっている場合、それが青玉である確率は、

 P({\rm Blue} \mid {\rm Small}) = \frac{2}{2+6} ―― (1)

右辺の分子・分母を12(すべての玉の数)で割ると

 (1) = \frac{2/12}{(2+6)/12} = \frac{P({\rm Blue, Small})}{P({\rm Small})}

したがって、

 P({\rm Blue, Small}) = P({\rm Blue} \mid {\rm Small}) P({\rm Small}) ―― (2)

一方、青玉が出たとわかっている場合、それが小玉である確率は、

 P({\rm Small} \mid {\rm Blue}) = \frac{2}{2+3} ―― (3)

右辺の分子・分母を12(すべての玉の数)で割ると

 (3) = \frac{2/12}{(2+3)/12} = \frac{P({\rm Blue, Small})}{P({\rm Blue})}

したがって、

 P({\rm Blue, Small}) = P({\rm Small} \mid {\rm Blue}) P({\rm Blue}) ―― (4)

一般には、下記の関係が成立する。

 P(X,Y) = P(X \mid Y)P(Y) = P(Y \mid X)P(X) ―― (5)

特に次のように変形したものを「Bayesの定理」と呼ぶ。

 P(Y \mid X) = \frac{P(X \mid Y)}{P(X)} P(Y) = \frac{P(X \mid Y)}{\sum_Y P(X|Y)P(Y)} P(Y)

この関係式は、前提条件がない場合の Y の確率 P(Y) に対して、前提条件 X が与えられた場合の確率 P(Y \mid X) がどのように変わるかを示しています。つまり、前提条件 X が与えられると、確率は、\frac{P(X \mid Y)}{P(X)} 倍に変化します。

応用例

[問題]
太郎さんは、ピロリ菌に感染している恐れがあるので、ピロリ菌検査を受けました。

  • 一般に太郎さんの年代の人がピロリ菌に感染している確率(割合)は1%です。
  • ピロリ菌検査の精度は95%です。つまり、感染している人に正しく「陽性反応」が出る確率は95%で、感染していない人に正しく「陰性反応」が出る確率も95%です。

太郎さんの検査結果は・・・・「陽性」でした。ガーーーーーン。

ただし、検査結果が間違っている可能性もあります。実際のところ、太郎さんがピロリ菌に感染している確率は何%でしょうか?

[解答]
求めるべき確率は P(感染 \mid 陽性)。これにBayesの定理を適用すると、

 P(感染 \mid 陽性) = \frac{P(陽性 \mid 感染)}{P(陽性 \mid 感染)P(感染)+P(陽性 \mid 非感染)P(非感染)}P(感染)

一方、与えられた条件から分かることは、

 P(感染) = 0.01
 P(非感染) = 0.99
 P(陽性 \mid 感染) = 0.95
 P(陽性 \mid 非感染) = 0.05

これらを代入すると、

 P(感染 \mid 陽性) = \frac{0.95}{0.95 \times 0.01+0.05 \times 0.99}\times 0.01 = 0.16

つまり、太郎さんが感染している確率は16%です。

[考察]
思ったよりも感染確率は低かったのではないでしょうか? これは次の図を見ると納得できます。

この図の中で赤い部分が「陽性」と判定された人になります。

検査を受ける前は、太郎さんは4つの箱のすべてにいる可能性があるので、感染確率は、全体に対する左の上下2つの箱の大きさで決まります。

 P(感染) = 0.01

一方、検査を受けた結果、太郎さんは赤い箱のどちらかにいることになったので(薄青の箱にいる可能性が消えた)、感染確率は、赤い箱全体に対する、左上の箱の大きさできまります。

 P(感染 \mid 陽性) = \frac{P(陽性, 感染)}{P(陽性, 感染)+P(陽性, 非感染)} = 0.16

もともと感染者はすごーく少ないので、右下の箱が大きくなっており(つまり、陽性判定の中でも非感染の人(False Positiveの人)がたくさんいる)、太郎さんが感染している確率は意外と小さかったのです。

ちなみに、解答で使ったBayesの定理の式は、(5)を使って変形すると、上記の箱の大きさによる計算と同じであることが分かります。

 P(感染 \mid 陽性) = \frac{P(陽性 \mid 感染)}{P(陽性 \mid 感染)P(感染)+P(陽性 \mid 非感染)P(非感染)}P(感染) \\ \,\,\,\,\,\,\,\,= \frac{P(陽性 \mid 感染)P(感染)}{P(陽性 \mid 感染)P(感染)+P(陽性 \mid 非感染)P(非感染)} \\ \,\,\,\,\,\,\,\,= \frac{P(陽性, 感染)}{P(陽性, 感染)+P(陽性, 非感染)}

このように、前提条件のない状態の確率 P(感染)(事前確率)がある時に、追加情報を得ることでアップデートした確率 P(感染 \mid 陽性)(事後確率)を数学的に求めるのが「Bayes推定」です。株価予測をする際に、さまざまな追加情報を得ることで予測をアップデートして、より正確な予測を行っていく、というような活用が想像できると思います。

主観確率とベイズ推定について

ところで、先の問題における「確率」とは、いったい何なのでしょうか?

たとえば、「サイコロの1が出る確率」とは、サイコロを何万回も振った時に、どのぐらいの「割合」で1がでるかを示すものです。このような観点で確率を捉える立場を「頻度主義」と言います。

一方、太郎さんはこの世に一人しかいません。「太郎さんが何万回も生まれた時にどのぐらいの「割合」でピロリ菌に感染しているか」などと考えることはできません。あえて言うなら、「太郎さんがピロリ菌に感染しているとどの程度の『確信』を持って言えるか」という確信度を表すものです。このように「確信度」という観点で確率を捉える立場を「ベイズ主義」と言います。「確信度」としての確率のことを「主観確率」とも言います。

中には、

「『確信度』は人の心に由来するものなので、そんなものを確率として計算するのは科学的ではない!」

とベイズ主義の立場を批判する人もいます。

しかしながら、ベイズ主義の確率論は、経済やビジネスの上では現実的に役立ちます。なぜなら、経済やビジネスは「人の心」で動いているからです。前提条件のない状態でビジネス判断をする場合と、何らかの前提条件が与えられた上でビジネス判断する場合、その判断は当然ながら変わります。ピロリ菌の検査を受ける前と受けた後で、太郎さんは、ピロリ菌治療をうけるかどうかの判断を変えるにちがいないでしょう。このような人の判断を助ける上では、『確信度』を計算するのも十分に意味があることです。

また、どーーーーしても、「確信度」のような曖昧な概念を使わずにBayes推定を理解したい人は、「パラレルワールド」を想定するとよいでしょう。つまり、この世には、何万個もの宇宙が存在して、それぞれの宇宙には、異なる「太郎さん」が存在します。あなたの目の前にいる「太郎さん」がどの太郎さんかは分かりません。この太郎さんが「ピロリ菌に感染している太郎さん」である確率は、「全宇宙の数」に対する「ピロリ菌に感染している太郎さんがいる宇宙の数」という比率で定義されます。また、「検査結果が陽性」という事実が分かったら、この「太郎さん」は、「検査結果が陰性」の宇宙の太郎さんである可能性が排除されます。つまり、以降は、「検査結果が陽性」の宇宙だけを母集団として比率を計算すればOKです。

「パラレルワールドとしての主観確率」という観点でBayesの定理を味わうには、下記の問題が参考になります。この問題の解答における「アンサンブル」 W = \left\{A_1,\,A_2,\,A_3\right\} は、3種類の異なる「宇宙」を表すと考えてみてください。

enakai00.hatenablog.com