第2章 2-3 / 確率と確率分布

ベイズの定理 — 全確率の定理からの導出と病気検査

このページで学ぶこと

確率の山場、ベイズの定理に到達しました。前回の乗法定理を「逆向き」に使い、「結果から原因を推測する」ための公式です。本ページではまず全確率の定理 $P(B)=\sum_i P(A_i)P(B\mid A_i)$ を導き、それを分母に据えてベイズの定理 $P(A_i\mid B)=\dfrac{P(A_i)P(B\mid A_i)}{\sum_j P(A_j)P(B\mid A_j)}$ を組み立てます。

題材は定番の病気検査事前確率(検査前の見込み)が、検査結果という情報で事後確率に更新される流れを、樹形図と数値で追います。「精度90%の検査で陽性でも、実際に病気とは限らない」──この直感に反する事実を、自分の手で確かめましょう。

さえちゃん
さえ

ベイズの定理は確率の最難関とよく言われるけど、乗法定理を逆さまに使うだけなんだ。最初に直感で答えを予想してから計算すると、ギャップに驚いて一生忘れなくなるよ。さあ、検査の例から始めよう!

1. 原因と結果、向きを入れ替えたい

前回までで、$P(B\mid A)$ は「$A$ という原因のもとで $B$ という結果が出る確率」を表すと学びました。検査の例なら「病気のとき陽性になる確率」です。これは検査の性能としてあらかじめ分かっている数字です。

でも私たちが本当に知りたいのは、向きが逆の $P(A\mid B)$ ──「陽性という結果が出たとき、本当に病気である確率」のほうです。結果は見えても、原因は見えない。だから結果から原因をさかのぼる必要がある。これを可能にするのがベイズの定理です。

POINT

$P(B\mid A)$:原因 → 結果(手に入りやすい情報)。
$P(A\mid B)$:結果 → 原因(本当に知りたい情報)。
ベイズの定理は、この2つの向きを入れ替える公式です。

2. 全確率の定理(導出)

ベイズの定理を組み立てる前に、分母を作る道具全確率の定理を用意します。発想は「結果 $B$ が起こる確率を、原因ごとの経路に分けて足す」ことです。

準備:分割(排反でもれなく覆う)

原因の候補 $A_1, A_2, \dots, A_k$ が、標本空間 $\Omega$ を分割しているとします。分割とは、互いに排反($i\ne j$ なら $A_i\cap A_j=\varnothing$)で、かつ合わせると全体を覆う($A_1\cup\cdots\cup A_k=\Omega$)ことです。たとえば「病気である/病気でない」の2つは、もっとも単純な分割です。

Ω A₁ A₂ A₃ B B∩A₁ B∩A₂ B∩A₃

分割 A₁,A₂,A₃ が Ω を覆う。事象 B は各 Aᵢ との重なりに分かれる

導出

事象 $B$ は、各原因 $A_i$ との重なり $B\cap A_i$ に「もれなく・だぶりなく」分かれます(上図)。これらは互いに排反なので、確率を足してよく、各重なりに乗法定理を当てれば全確率の定理が出ます。

DERIVATION

$$ \begin{aligned} B &= (B\cap A_1)\cup(B\cap A_2)\cup\cdots\cup(B\cap A_k) &&\text{(} B \text{ を原因ごとに分ける)}\\[2pt] P(B) &= \sum_{i=1}^{k} P(B\cap A_i) &&\text{(} B\cap A_i \text{ は互いに排反なので加法性)}\\[2pt] &= \sum_{i=1}^{k} P(A_i)\,P(B\mid A_i) &&\text{(各項に乗法定理を適用)} \end{aligned} $$

FORMULA

全確率の定理 $$P(B) = \sum_{i=1}^{k} P(A_i)\,P(B\mid A_i)$$ 「$B$ が起こる確率は、$B$ にたどり着くすべての経路(原因 $A_i$ 経由)を足したもの」。

3. ベイズの定理(導出)

準備が整いました。知りたいのは $P(A_i\mid B)$(結果 $B$ から原因 $A_i$ をさかのぼる確率)です。条件付き確率の定義から出発します。

DERIVATION

$$ \begin{aligned} P(A_i\mid B) &= \frac{P(A_i\cap B)}{P(B)} &&\text{(条件付き確率の定義)}\\[2pt] &= \frac{P(A_i)\,P(B\mid A_i)}{P(B)} &&\text{(分子に乗法定理)}\\[2pt] &= \frac{P(A_i)\,P(B\mid A_i)}{\displaystyle\sum_{j=1}^{k} P(A_j)\,P(B\mid A_j)} &&\text{(分母に全確率の定理)} \end{aligned} $$

分子は「原因 $A_i$ を経由して $B$ に至る確率」、分母は「あらゆる原因を経由して $B$ に至る確率の合計」。つまりベイズの定理は、「$B$ が起きた全経路のうち、$A_i$ 経由が占める割合」を計算しているだけなのです。

FORMULA

ベイズの定理 $$P(A_i\mid B) = \frac{P(A_i)\,P(B\mid A_i)}{\displaystyle\sum_{j=1}^{k} P(A_j)\,P(B\mid A_j)}$$ ここで $P(A_i)$ を事前確率、$P(A_i\mid B)$ を事後確率と呼びます。

さえちゃん
さえ

ベイズの定理は「事前確率を、データで事後確率に更新する」装置だと思ってね。検査を受けるの見込み $P(A)$ が、陽性という結果を知ったあとに $P(A\mid B)$ へとアップデートされるの。次の例で体感しよう!

4. 病気検査の例 — 事前確率から事後確率へ

EXAMPLE(病気検査)

ある病気について、次のことが分かっています。

  • この病気にかかっている人は、人口全体の 1%(事前確率)
  • 感度:病気の人が検査で陽性になる確率は 90%
  • 特異度:病気でない人が検査で陰性になる確率は 95%(=誤って陽性になる確率は5%)

ある人が検査を受け、結果は陽性でした。この人が本当に病気である確率は?

用語の整理:感度と特異度

感度(sensitivity)は「病気の人を正しく陽性と判定する確率」$P(\text{陽性}\mid\text{病気})$、特異度(specificity)は「病気でない人を正しく陰性と判定する確率」$P(\text{陰性}\mid\text{病気でない})$ です。どちらも原因 → 結果向き($P(B\mid A)$ 型)の数字。私たちが知りたい結果 → 原因向きの $P(\text{病気}\mid\text{陽性})$ は、ここから計算で出します。

まずは直感で

計算の前に予想してみてください。「感度90%もあるなら、陽性なら90%くらい病気では?」と感じる人が多いはず。ところが実際の答えは約15.4%。検査がそこそこ優秀でも、陽性が出て病気である確率は意外なほど低いのです。なぜか、樹形図で確かめましょう。

樹形図で人数に置き換える

確率を割合のまま扱うと混乱しやすいので、10,000人を仮定して人数で追います。事象を $A=$「病気」、$A^c=$「病気でない」、$B=$「陽性」とします。

10,000人 ×0.01 ×0.99 病気 100人 病気でない 9,900人 ×0.90 ×0.10 ×0.05 ×0.95 陽性 90人 陰性 10人 陽性 495人 陰性 9,405人

10,000人を分岐させてカウント。陽性は 90 + 495 = 585人(うち本当に病気は90人だけ)

陽性者585人のうち、本当に病気なのは90人だけ。残り495人は誤判定(偽陽性)です。したがって $$P(\text{病気}\mid\text{陽性}) = \frac{90}{585} \approx 0.1538 \;(\approx 15.4\%).$$

ベイズの定理の式で確認

同じ計算を、いま導いた式で書きます。原因の分割は $A$(病気)と $A^c$(病気でない)の2つ。値は $P(A)=0.01$、$P(B\mid A)=0.90$、$P(A^c)=0.99$、$P(B\mid A^c)=0.05$ です。

DERIVATION

$$ \begin{aligned} P(A\mid B) &= \frac{P(A)\,P(B\mid A)}{P(A)\,P(B\mid A) + P(A^c)\,P(B\mid A^c)} &&\text{(ベイズの定理・2分割)}\\[2pt] &= \frac{0.01\times 0.90}{0.01\times 0.90 + 0.99\times 0.05} &&\text{(値を代入)}\\[2pt] &= \frac{0.009}{0.009 + 0.0495} = \frac{0.009}{0.0585}\\[2pt] &\approx 0.1538 \;(\approx 15.4\%) \end{aligned} $$

人数で出した $90/585$ と、式で出した $0.009/0.0585$ は同じ値です。式は人数の計算を正確に表現する道具にすぎません。事前確率1%が、陽性という情報によって事後確率15.4%へと更新された──これがベイズ的なものの見方です(それでも病気の見込みは1%から15倍以上に跳ね上がっている、とも読めます)。

なぜこんなに低いのか

理由は事前確率が小さいこと。病気はもともと100人に1人なので、10,000人中わずか100人。一方、病気でない9,900人のたった5%でも人数にすると495人にもなります。母数の大きいグループから出る誤判定の絶対数が、正しい陽性を上回ってしまうのです。

POINT

感度・特異度(検査の性能)が高くても、事前確率が低いと事後確率はそれほど高くならない。「精度」と「事前確率」の両方を見るのがベイズの考え方で、稀な病気で「陽性なら追加検査」が推奨される理由でもあります。

5. 3分割の例 — 工場の不良品

分割は2つに限りません。$k$ 個でもまったく同じ式が使えます。3台の機械の例で確かめましょう。

EXAMPLE(どの機械の不良品か)

工場で、機械 $A_1,A_2,A_3$ が製品の $50\%,\,30\%,\,20\%$ を作り、不良率はそれぞれ $1\%,\,2\%,\,3\%$ とします。抜き取った1個が不良品 $B$ だったとき、それが $A_3$ 製である確率は?

まず分母(全確率の定理)を計算します。 $$ \begin{aligned} P(B) &= P(A_1)P(B\mid A_1) + P(A_2)P(B\mid A_2) + P(A_3)P(B\mid A_3)\\ &= 0.50\times 0.01 + 0.30\times 0.02 + 0.20\times 0.03\\ &= 0.005 + 0.006 + 0.006 = 0.017 \end{aligned} $$ これをベイズの定理の分母に入れて、 $$P(A_3\mid B) = \frac{P(A_3)P(B\mid A_3)}{P(B)} = \frac{0.20\times 0.03}{0.017} = \frac{0.006}{0.017} \approx 0.353 \;(\approx 35.3\%).$$

生産シェアは $A_3$ が20%なのに、不良品の中では約35%を占めます。不良率の高い $A_3$ が「不良品」という条件のもとで過剰に代表されるわけです。事前20% → 事後35%への更新、と読めます。

6. まとめ

第2章 2-3、ポイントを整理します。

これで第2章の確率パートの導入は完了です。次回 2-4 確率変数と確率分布 からは、事象を「数」に対応させた確率変数を導入し、期待値・分散・各種分布へと進みます。今日までの確率の言葉が、そのまま土台になります。

さえちゃん
さえ

おつかれさま、確率の山場クリア! 「陽性でも病気は約15%」の衝撃、忘れないよね。ベイズは「事前確率をデータで更新する」最強の道具。全確率の定理→ベイズ、の流れを一度自分で書いてみてね。次は確率変数の世界へ!