現在の情報から過去を推定する(ベイズの定理)
https://note.com/kulamoto/n/n928b24814612
『HAYATA
5年間の金融関連業務を経て、 2022年より英大学院修士課程。専攻は金融リスク分析。
2022年12月13日 09:27
現在大学院で学んでいる分析についても細かく噛み砕いて記載していく。
他の学問も同じだが、分析について特に強く思うことは、「学んだこと=使えること」とはならないこと。
例えば、このベイズの定理を学んだ時、「あっ、この分析手法はこのデータ(状況)に使えるかもしれない」という一種の閃きがすごく重要で、この閃きと頭の回転がなければ、いくら分析手法学んだとしても何のアウトプットも得られない(自分の力で分析できない)とすごく感じる。
だからこそ、この閃き力を養うために常に頭の中で日常生活を数値化し、その数値で遊んでみる、定理に当てはめてみるといったトレーニングが必要なのではないかと自分に言い聞かせる。
目次
ベイズの定理 (Bayes’ theorem)
ベイズの定理とは、
確率変数x, yについて成立する以下の公式を指す。
P(x=k|y=l) = P(y=l|x=k)×P(x=k) / P(y=l)
このP(x=k|y=l) は「『y=lである』という条件の時にx=kとなる確率」という条件付き確率を示している。
ベイズの定理の本質は、時間の向きを反転させること、つまり結果から原因に推定することにある。
抽象的な説明だと難しすぎるので、ここで、簡単な例を見てみる。
(以下、「本質を捉えたデータ分析のための分析モデル入門」杉山聡(2022)引用)
目の前に箱Aと箱Bがあります。箱Aの中には赤玉が3個、白玉が5個入っており、箱Bの中には赤玉が1個、白玉が3個入っています。あなたは無作為に箱A、Bのうちの一方を選び、その箱の中からランダムに1つ玉を取り出します。
この時、次の問題を解いてください。
(1)箱Aを選ぶ確率はいくらか?
(2)赤玉を取り出す確率はいくらか?
(3)箱Aを選び、かつ、赤玉を取り出す確率はいくつか?
(4)赤玉を取り出した時、実は選んだ箱が箱Aであった確率はいくつか?
まず、x,yをそれぞれ選んだ箱、玉の色に対応する確率変数としましょう。すると、この問題文では、
a) P(x=A) = P(x=B) = 1/2
b) P(y=赤|x=A) = 3/8
c) P(y=白|x=A) = 5/8
d) P(y=赤|x=B) = 1/4
e) P(y=白|x=B) = 3/4
であることがわかり、
これを用いると、すぐに計算することができます。
(1) aを用いて1/2
(2) (a×b) + (a×d) = 5/16
(3) a × b = 3/16
しかし、(4)は、与えられた確率の組み合わせに登場しません。
このような時に利用するのがベイズの定理です。
実際に条件を定理に当てはめると、
P(y=A|x=赤) = P(y=赤|x=A) × P(x=A) / P(y=赤)
この右辺に登場する確率は既に計算済みで、
P(y=A|x=赤) = (3/16) / (5/16) = 3/5
として、P(y=A|x=赤)も計算することができる。
ベイズの定理の計算式をみると、一見難しく見えるが、言葉で表すと単純で、
「箱Aを選び、かつ、赤玉を取り出す確率((4)の順序を入れ替えたもの)」から、最後に「赤玉を取り出す確率」を割っただけになります。
この計算の何がすごいのか
そもそもなぜ(4)だけ素直に計算ができないのか。
その理由は、(1)から(3)は、この3つの条件付き確率は全て時間の流れと整合的な事象の確立を考えている問だからである。
また、問題文で与えられている確率は全て「どの箱を運ぶか」「箱を選んだ後どの玉を取り出すか」のように時間の流れと整合的なものばかりとなっている。
そのため、時間の流れに順行的な場合、原因→結果の自然な方向で考えればよく、素直に考えれば確率を計算できる。
一方、時間の流れに逆行する場合は、結果から原因を考えなければならない。
従って、他の問題と異なり計算が難しくなる。
この状況において、ベイズの定理は、本来は計算が非常に難しい時間逆行の条件付き確率を、簡単な時間順行の条件付き確率のみで表してくれる式なのだ。
また、基本的にデータ分析は結果から原因を推定する時間逆行の思考をするため、ベイズの定理やベイズ統計の考え方が使用されることが多い。
実例でみてみる
ベイズの定理を身近な事例で考えてみる。
事例:
病気の罹患率を調べる。
罹患率0.8%の病気について、罹患の有無を確認する検査を行う。
検査の精度は、
罹患者が陽性と診断される確率が95%、陰性と誤診断される確率が5%。
病気でない人(非罹患者)が陽性と誤診断される確率が20%、陰性と診断される確率が80%。
問:
検査の結果、陽性と診断された場合に本当に罹患している確率は?
時間の流れに沿った確率であれば、「病気に罹患する→検査を受けて陽性と診断」
として簡単に計算することができるが、時間と逆行した「検査を受けて陽性と判断→病気に罹患している」の確率を求める必要がある。
一旦、定理に当てはめると、
P(病気に罹患 | 陽性と診断) = P(陽性と診断 | 病気に罹患) × P(病気に罹患) / P(陽性と診断)
となり、
それぞれ計算すると、
P(陽性と診断 | 病気に罹患) = 0.95
P(病気に罹患) = 0.008
P(陽性と診断) = 罹患者が陽性と診断される確率 + 非罹患者が陽性と誤診断される確率
= (0.008×0.95) + (0.992×0.2)
= 0.206
P(病気に罹患|陽性と診断) = 0.95×0.008/0.206
= 0.0368932
よって、
検査の結果、陽性と診断された場合に本当に罹患している確率はたったの約3.69%しかないという結果になった。
この事例から分かることは、「一度の検査結果では本当に罹患しているかわからないので、再検査することが重要。」となる。
この事例は、適当に数字を入れて作ったよくある問題ではあるが、
コロナウイルスとPCR検査のデータを持ってきても同じように計算ができると考えてみると、
本当に身近なところでベイズの定理が活用されていることがわかる。
他にも、イギリス生活でよくある「スーパーで買ってきた食材が、中を開けるとカビが生えていた」場合の確率だとか色々とデータを考えることができる。』