とあるお兄さんの雑記

基本的に技術系の内容を書きますが、何を書くかは私の気分です。

ある病気にかかっているかを検査した時に、1回目、2回目の検査の両方で陽性だった場合

大学院生の頃、とある事情で病院に行き眼圧を測ってもらったのですが、私の場合どうやら普通の人よりも両目の眼圧が高い傾向にあるようで。

その際、眼圧の検査をするだけで3つの検査機器を使って総合的に判断されていたのを覚えています。

で、ここでふと思い出したのが大学時代に受けた確率論の授業でした(なんでや?)。

内容は1回目の検査で陽性で、2回目の検査でも陽性だった場合、その病気にかかっている確率はいくらかというものです。

こちら、ベイズの定理を利用して求めることができるので実際に求めてみましょう。

言葉の説明

実際に例題を見る前に、言葉の説明をしておきます。

事前確率

データを手に入れる前に想定していた確率のこと。

事後確率

データを用いて事前確率を修正した結果の確率のこと。

ベイズ更新

データを用いて確率を変化(更新)していくこと。

ベイズの定理

 P(A)を事象 Aが起きる確率、 P(B_i)を事象 B_iが起きる確率とし、 P(A | B_i)を事象 B_iが原因で事象 Aが起きる確率とします。

この時、

 \displaystyle P(B_k | A) = \frac{P(A | B_k) \times P(B_k)}{\sum_{i=1} ^n P(A | B_i) \times P(B_i)}

と表せるものをベイズの定理と言います。

上記式の左辺は事象 Aが起きた時の原因の事象が B_kである確率を表しています。


視覚的に考えてみましょう。以下の図を参考にします。

図中の P(A|B_k)は事象 B_kが原因で事象 Aが起きる確率を表します。ここで k = 1, 2, 3とします。つまり、事象 Aが起きた時の原因の事象は3つあることになります。

一方、 P(A ^c|B_k)は事象 B_kが原因で事象 A ^cが起きる確率を表します。


ここで事象 Aが起きた時、その原因が事象 B_2である確率を考えます。
すると、事象 Aが起きた(観測された)わけですから事象 A ^cは無視して考えることができます。つまり、上記画像のピンクの部分だけを考えれば良いことになります。

ピンクの部分は、原因がどんな事象であれ事象 Aが起きる確率を表しています。というわけで、事象 Aが起きてそれの原因が事象 B_2である確率は

 \displaystyle P(B_2 | A) = \frac{P(A | B_2) \times P(B_2)}{P(A | B_1) \times P(B_1) + P(A | B_2) \times P(B_2) + P(A | B_3) \times P(B_3)}


と計算できます。

問題(1回目の検査)

ある特定のガンの罹患率 0.1\%とする。このガンに罹患しているかどうかを検査キットAで検査することにする。検査キットAは、このガンに罹患している人を 95\%の確率で陽性と判断し、健康な人(正確にはある特定のガンにかかっていない人)が陽性と誤診される確率は 2\%である。
ある日、あなたがこの検査で陽性と判断された時、あなたがこのガンに罹患している確率はいくつか?

問題(1回目の検査)の解

検査キットAに関して情報を整理してみます。

ガン 健康
検査で陽性と判断  95\%  2\%
検査で陰性と判断  5\%  98\%

図にすると以下のようになります。

ガンに罹患している人は全体で 0.1\%居て、そのうち 95\%の人は検査で陽性と判断されます。残りの 5\%の人は検査で陰性と判断されます。

一方、ガンに罹患していない健康な人は全体で 99.9\%で、そのうち 2\%の人は検査で陽性と判断されます。残りの 98\%の人は検査で陰性と判断されます。

また、この問題での事前確率は、データを手に入れる前に想定していた確率のことになるので、ガンに罹患している人の割合、つまり 0.1\%を表しています。
ここでいう「データ」は検査キットAが陽性か陰性かの結果データになります。
(こう考えると事前確率というのは、一般的に知られているような確率とも言えそうです。)



ここで問題に戻ると、「ある日、あなたがこの検査で陽性と判断された時、あなたがこのガンに罹患している確率はいくつか?」と書いてあります。

つまり、「検査で陽性と判断された」という情報が与えられたので、以下の図のピンクの部分だけを考えれば良いことになります。

求めらているのは、「あなたがこの検査で陽性と判断された時、あなたがこのガンに罹患している確率はいくつか?」なので、式は以下のようになります。

 \displaystyle P(ガンに罹患 | 検査で陽性) = \frac{P(検査で陽性 | ガンに罹患) \times P(ガンに罹患)}{P(検査で陽性 | ガンに罹患) \times P(ガンに罹患) + P(検査で陽性 | 健康) \times P(健康)}


よって、

 \displaystyle P(ガンに罹患 | 検査で陽性) = \frac{0.95 \times 0.001}{0.95 \times 0.001 + 0.02 \times 0.999}

 \displaystyle = \frac{95 \times 1}{95 \times 1 + 2 \times 999}

 \displaystyle = 0.04538...

と計算できます。

つまり、あなたがこの検査で陽性と判断された時、あなたがこのガンに罹患している確率は 4.5\%となります。

意外と低いものですね...。

そもそもの前提としてこのガンに罹患している確率は 0.1\%だったので罹患しづらい病気であることも起因していますが。

とはいえ、あなたがこのガンに罹患している確率は、検査を受ける前の 0.1\%から 4.5\%上がっていることには注意しておきましょう。

問題(2回目の検査)

1回目の検査をもとに、同じ検査キットAを使って2回目の検査を行ったところ、2回目の検査でも陽性と判断された。この時、あなたがこのガンに罹患している確率はいくつか?

問題(2回目の検査)の解

1回目の検査を元にベイズ更新を行います。1回目の検査結果からあなたがこのガンに罹患している(事前)確率は 0.1\%から 4.5\%に上がりました。図にすると以下のようになります。

ここでも求められているのは「2回目の検査でも陽性と判断されたときに、あなたがこのガンに罹患している確率」です。

よって、問題(1回目の検査)の解で出てきた式を利用します。



 \displaystyle P(ガンに罹患 | 検査で陽性) = \frac{P(検査で陽性 | ガンに罹患) \times P(ガンに罹患)}{P(検査で陽性 | ガンに罹患) \times P(ガンに罹患) + P(検査で陽性 | 健康) \times P(健康)}


ですから

 \displaystyle P(ガンに罹患 | 検査で陽性) = \frac{0.95 \times 0.045}{0.95 \times 0.045 + 0.02 \times 0.955}

 \displaystyle = \frac{95 \times 45}{95 \times 45 + 2 \times 955}

 \displaystyle = 0.6911...


 69\%に上がりましたね。どうやら、このガンに罹患しているかどうか精密検査を行った方が良さそうです。

まとめ

今回は、ガンに罹患しているかどうかをベイズ推定を利用して求めることを見てきました。

一般的に罹患率が低いものに関して、1回目の検査で陽性だったとしてもあまり気落ちすることはないと言えるでしょう。

しかし、今後の健康のためにも精密検査は受診するようにしておきましょう。

用語 意味
事前確率 データを手に入れる前に想定していた確率
事後確率 データを用いて事前確率を修正した結果の確率
ベイズ更新 データを用いて確率を変化(更新)していくこと

ベイズの定理:

 P(A)を事象 Aが起きる確率、 P(B_i)を事象 B_iが起きる確率とし、 P(A | B_i)を事象 B_iが原因で事象 Aが起きる確率とした時、

 \displaystyle P(B_k | A) = \frac{P(A | B_k) \times P(B_k)}{\sum_{i=1} ^n P(A | B_i) \times P(B_i)}

となるもの

参考

  1. 条件付き確率とベイズの定理【中学の数学からはじめる統計検定2級講座第2回】 | とけたろうブログ
  2. ベイズ統計学基礎 | Logics of Blue