第6章 6-5 / 確率

ベイズの定理

このページで学ぶこと

確率の山場、ベイズの定理に到達しました。前回の条件付確率を発展させた定理で、「結果から原因を推測する」ための強力な武器です。現代のデータサイエンス・AI・医療診断・スパムフィルターなど、あらゆる場面で活躍しています。

いきなり式を見せると難しく感じる定理なので、本ページは具体的な問題から始めます。前回の最後に登場した病気の検査の問題を、計算しながら一緒に解いていきましょう。計算を進めるうちに、自然と全確率の定理とベイズの定理が見えてきます。

おそらく途中で、「えっ、そんなに低いの?」と驚く瞬間が来ます。その驚きが、ベイズの定理を一生忘れない記憶に変えてくれます。

さえちゃん
さえ

ベイズの定理は確率の山場! でも安心して、具体例から一歩ずつ進めば必ず理解できる! 最初に直感で答えを予想してから計算するのがおすすめだよ。直感とのギャップこそが、ベイズの定理を体に刻みつけてくれるよ!

1. まずは問題を解いてみよう

ベイズの定理を理解する一番の近道は、「実際に問題を解いてみる」ことです。次の問題を、一緒に最後まで計算してみましょう。

例題:病気の検査

EXAMPLE

ある病気に関する検査について、次のことがわかっています。

  • その病気にかかっている人は、人口全体の1%(100人に1人)
  • 病気の人がこの検査を受けると、90%の確率で陽性となる
  • 病気でない人がこの検査を受けると、5%の確率で誤って陽性となる

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

まずは直感で答えてみる

計算を始める前に、直感で答えを予想してみてください。「検査の精度が90%なら、陽性が出たら90%くらい病気じゃないの?」と感じる方が多いと思います。ですが、実際の答えは大きく異なります。

実際の答えは、約15%です。

えっ、と思いましたよね。検査の精度が90%もあるのに、陽性が出ても病気である確率は15%しかない。多くの人にとって直感に反する結果ですが、これがベイズの定理が示す現実です。なぜそうなるのか、これから一緒に計算で確認していきましょう。

2. 100人で考えてみる

確率を「割合」のまま考えると混乱しやすいので、具体的な人数に置き換えます。100人ではちょっと少ないので、10,000人を仮定して計算しましょう。

10,000人を病気/病気でないに分ける

10,000人がいると仮定します。

それぞれの検査結果を考える

この100人と9,900人が検査を受けたとき、何人が陽性となるかを計算します。

病気の100人のうち、陽性になる人:90%が陽性なので、100 × 0.90 = 90人。残り10人は陰性(誤って陰性と判定)。

病気でない9,900人のうち、陽性になる人:5%が誤って陽性となるので、9,900 × 0.05 = 495人。残り9,405人は正しく陰性となります。

表にまとめる

ここまでを表にしてみましょう。

陽性 陰性 合計
病気である90人10人100人
病気でない495人9,405人9,900人
合計585人9,415人10,000人

3級では触れられませんが、この表の中で「運の悪い人」を見つけてみてください。できるかぎり、実務でもこれをなくさなければいけません。そう、病気であって、陰性の人=偽陰性の人です。私たちはここに入ってしまうことを回避しなければいけません。

樹形図でも見てみる

同じ計算を、ツリー(樹形図)でも見てみましょう。視覚的に追えるとイメージが固まります。

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人

3. 答えを求める

ここまで来れば、答えはあと一歩です。

陽性者は全部で何人?

表とツリーから、陽性となった人は次の2グループの合計です。

陽性者のうち、本当に病気の人は?

陽性者585人のうち、本当に病気なのは90人だけ。残り495人は誤判定です。だから、

P(病気 | 陽性) = 90 ÷ 585 ≒ 0.1538 ≒ 15.4%

予想より低かったですよね。検査の精度が90%もあるのに、陽性が出ても病気である確率は約15%。誤判定の495人が、正解の90人より圧倒的に多いからです。

なぜこんなに低いのか

理由は、「もともと病気の人がとても少ない」からです。100人に1人しか病気でないなら、10,000人中の病気は100人。一方、病気でない9,900人のたった5%でも、人数にすると495人にもなる。母数が大きいと、誤判定の絶対数も大きくなる。これがベイズ計算の核心です。

この性質は稀な病気の検査では特に顕著です。「病気である確率がもともと低いとき、陽性が出ても誤判定の可能性のほうが高い」というのは、医療現場でも重要な知見で、なぜ「陽性が出たら追加検査をする」のかの根拠になっています。

POINT

検査の精度(90%・5%)だけ見ると高そうでも、もとの確率(事前確率)が低いと、陽性が出ても病気である確率は思ったより低くなります。「精度」と「事前確率」の両方を見るのがベイズの考え方です。

※ 余談ですが、新型コロナウイルスの流行時は、体調の異変(感染したかもしれないという自覚症状)を感じてから検査を受ける人が多く、この例題のように「集団全体から無作為に検査する」状況とは違っていました。検査を受ける時点ですでに病気である確率(事前確率)が高くなっていたぶん、実際のP(A|B)はこの例題より高かったはずだ、と経験則から思っています。もうウイルスの世界的パンデミックが起きないことを祈りつつ、健康診断は毎年欠かさず受けましょう。

4. 計算を式で振り返る

ここまでの計算を、確率の式で振り返ってみましょう。最初は「具体的な人数で計算した」だけでしたが、それを記号で書くと、ベイズの定理が姿を現します。

使った確率の整理

事象を次のように決めます。

問題文から、わかっている確率は次の3つでした。

陽性者の合計を式で書く

陽性者は「病気で陽性」と「病気でないが陽性」の合計でした。これを確率の言葉で書くと:

P(B) = P(A) × P(B|A) + P(A^c) × P(B|A^c)

実際の値で計算してみると:

P(B) = 0.01 × 0.90 + 0.99 × 0.05 = 0.009 + 0.0495 = 0.0585

これは10,000人中585人が陽性、つまり5.85%という先ほどの計算と一致しますね。

これが全確率の定理

この式 P(B) = P(A) × P(B|A) + P(A^c) × P(B|A^c) こそが、全確率の定理と呼ばれる定理です。

意味は素朴です。「Bが起こる確率は、Bが起こりうるすべての経路を足したもの」という意味です。ツリーで言えば、「陽性につながる枝」をすべて足した値、ということ。さきほど人数で「90人 + 495人 = 585人」と計算したのと、まったく同じことを式で表現しているにすぎません。

求めたい答えを式にする

私たちが求めたかったのは「陽性のとき本当に病気の確率」、つまり P(A|B) です。条件付確率の定義から、

P(A|B) = P(A∩B) ÷ P(B)

ここで分子の P(A∩B) は「病気かつ陽性」の確率。これは乗法定理から P(A) × P(B|A) で表せます。分母の P(B) は今出てきた全確率の定理で計算できます。

これがベイズの定理

FORMULA

P(A|B) = P(A) × P(B|A) ÷ P(B)
分母を全確率の定理で書くと:
P(A|B) = P(A) × P(B|A) ÷ [ P(A) × P(B|A) + P(A^c) × P(B|A^c) ]

これがベイズの定理です。あの直感に反する答え「陽性でも病気の確率は約15%」は、この式から出てきます。実際に値を入れて計算してみましょう。

P(A|B) = 0.01 × 0.90 ÷ [0.01 × 0.90 + 0.99 × 0.05]
= 0.009 ÷ 0.0585
= 0.1538…(≒ 15.4%)

ぴったり一致します! 人数で計算したものと、式で計算したものが同じ答えになるのは、式が人数の計算を正確に表現する道具にすぎないからなんですね。

5. ベイズの定理が大切な理由

ベイズの定理が画期的なのは、「結果から原因を推測する」ことができる点です。条件付確率と一見似ていますが、向きが違います。

「向き」を入れ替える定理

多くの場面で、私たちが本当に知りたいのはP(A|B)のほう。でも、データとして手に入るのはP(B|A)であることが多いんです。「病気の人を集めて検査の精度を測る」ことはできても、「陽性者を集めてそのうち病気の割合を出す」のは、検査の精度が事前にわかっていないと難しい。

ベイズの定理は、P(B|A)からP(A|B)を計算するための公式。だからこそ、現代のデータサイエンスでこんなに大切にされているんです。

身近な活用例

どれも「結果から原因を推測する」場面ばかりです。ベイズの定理を学ぶことは、現代社会で意思決定する力を養うことにもつながります。

6. 試験ではこう解く:「〜のとき」が分母

統計検定3級は電卓が使える試験です。ベイズの問題は解き方の型がいつも同じなので、その型を覚えてしまえば、本番でもあわてずに解けます。さっと解けるように、ここで練習していきましょう。

カギになるのは、問題文の「〜のとき」「〜のうち」という言葉です。ここが分母(=いま考えている集団)を教えてくれます。まずこの言葉に線を引きましょう。

RULE

① 問題文の「〜のとき」「〜のうち」に線を引く。そこが分母になる集団です。
② 枝を「条件付き確率 × 事前確率」でつくる(%や小数は、そろっていれば整数のままかけてOK。電卓の打数が減ります)。
欲しい枝 ÷ 全部の枝の合計。これが答えです。

やってみる:喫煙者と病気

EXAMPLE
  • ある病気にかかる確率は、喫煙者は0.3%、非喫煙者は0.1%
  • ある集団の20%が喫煙者

病気にかかったとき、その人が喫煙者である確率は?

まず、「病気にかかったとき」に線を引きます。これが分母、つまり「病気の人ぜんぶ」が考える集団です。次に、枝を「条件付き確率 × 事前確率」でつくります。ここで%はそのまま整数でかけてしまうのがコツです。

欲しいのは「喫煙者で病気」の枝なので、

6 ÷ 14 = 3/7 ≒ 42.9%

0.003 や 0.002 のような細かい小数をかけなくても、比が同じなら答えは変わりません。「6 対 8」をつくって割るだけです。枝が何本に増えても(3ラインの工場、3種類の天気など)、やることは「全部の枝を足して、欲しい枝で割る」だけです。

POINT

「〜のとき」「〜のうち」= 分母。これを見抜けば、あとは枝をかけて、足して、割るだけです。問題文の形が毎回同じなので、型で覚えるのが最短です。

7. 練習問題

ここからは、型を試す練習問題です。どの問題も、まず「〜のとき」「〜のうち」に線を引いて分母を決め、枝をかけて、欲しい枝を合計で割るだけです。%はそろっていれば整数のままかけてかまいません。自分で解いてから、解答を開いてみましょう。

問題1 ─ 工場の不良品(2台)

ある工場では、A機械とB機械の2台で製品を作っています。

ある製品を抜き取り検査したところ、不良品でした。この不良品がB機械で作られた確率を求めてください。

解答を見る

まず、1,000個の製品で考えます。

  • A機械で作られた製品:1,000 × 0.60 = 600個
  • B機械で作られた製品:1,000 × 0.40 = 400個

それぞれの機械で出る不良品の数:

  • A機械の不良品:600 × 0.02 = 12個
  • B機械の不良品:400 × 0.05 = 20個
  • 不良品の合計:12 + 20 = 32個

この32個の不良品のうち、B機械で作られたのは20個。だから、

P(B機械 | 不良品) = 20 ÷ 32 = 5/8 = 0.625(62.5%)

ちなみにB機械の生産割合は40%だったのに、不良品の中ではB機械の割合が62.5%まで跳ね上がっています。不良率の高いB機械が、不良品の中で過剰に代表されているからです。これもベイズの定理が示す典型的な現象です。

式で書くなら:

P(B|不良) = P(B) × P(不良|B) ÷ [P(A) × P(不良|A) + P(B) × P(不良|B)]
= 0.40 × 0.05 ÷ [0.60 × 0.02 + 0.40 × 0.05]
= 0.020 ÷ 0.032 = 0.625

人数で計算しても、式で計算しても同じ答え。これがベイズの定理の力です。

問題2 ─ 工場の3ライン

ある製品を、A・B・Cの3つのラインで生産しています。

抜き取った製品が不良品だったとき、それがラインBで作られた確率を求めてください。

解答を見る

「不良品だったとき」が分母です。枝を「不良率 × 生産割合」でつくります(%はそのまま整数で)。

  • A:50 × 1 = 50
  • B:30 × 2 = 60
  • C:20 × 4 = 80
  • 不良品の合計:50 + 60 + 80 = 190

欲しいのはBの枝なので、60 ÷ 190 = 6/19 ≒ 31.6%

問題3 ─ 医療検査(有病率が低い定番型)

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

陽性だったとき、その人が実際に病気である確率を求めてください。

解答を見る

「陽性だったとき」が分母です。

  • 病気:2 × 90 = 180
  • 病気でない:98 × 5 = 490
  • 陽性の合計:180 + 490 = 670

欲しいのは「病気」の枝なので、180 ÷ 670 = 18/67 ≒ 26.9%

感度が90%もあるのに、有病率が低いと偽陽性の枝が本物を上回り、答えは3割未満になります。本文の例題と同じ、ベイズの「直感に反する」代表例です。

問題4 ─ ワクチン(人数で与えられる型)

住民1,000人を調べたところ、次のようになりました。

感染した人を1人選んだとき、その人が未接種である確率を求めてください。

解答を見る

「感染した人のうち」が分母です。今回は人数がそのまま与えられているので、かけ算はいりません。感染者の枝だけ拾います。

  • 接種済みで感染:10人
  • 未接種で感染:120人
  • 感染者の合計:10 + 120 = 130人

欲しいのは「未接種」の枝なので、120 ÷ 130 = 12/13 ≒ 92.3%

注意:120 ÷ 800 = 15% は「未接種の人のうち感染した割合」= P(感染|未接種)で、いま問われている P(未接種|感染)とは向きが逆です。どちらの集団が分母かを取り違えないようにしましょう。

問題5 ─ 工場の検査機械

ある工場の検査機械について、次のことがわかっています。

機械が「不良」と判定したとき、それが本当に不良品である確率を求めてください。

解答を見る

「不良と判定したとき」が分母です。

  • 不良品:5 × 80 = 400
  • 良品(誤判定):95 × 10 = 950
  • 「不良」判定の合計:400 + 950 = 1,350

欲しいのは「本当に不良品」の枝なので、400 ÷ 1,350 = 8/27 ≒ 29.6%

良品が95%もあると、その10%の誤判定だけで、本物の不良品の倍以上の枝になります。問題3の医療検査とまったく同じ構造です。

問題6 ─ 天気とイベント(枝が3本の型)

ある屋外イベントの開催記録から、次のことがわかっています。

屋外イベントが開催されていた日が、曇りだった確率を求めてください。

解答を見る

「開催されていた日のうち」が分母です。枝が3本になっても、やることは同じです。

  • 晴れ:60 × 90 = 5,400
  • 曇り:30 × 50 = 1,500
  • 雨:10 × 20 = 200
  • 開催日の合計:5,400 + 1,500 + 200 = 7,100

欲しいのは「曇り」の枝なので、1,500 ÷ 7,100 = 15/71 ≒ 21.1%

枝が何本に増えても、「全部の枝を足して、欲しい枝で割る」だけです。

まとめ

第6章5回目の本ページ、ポイントを整理しておきましょう。

次回は第6章のラスト、独立性に関する注意です。独立性を扱うときに陥りやすい落とし穴を整理して、第6章を締めくくりましょう。

さえちゃん
さえ

ベイズの定理、計算しながら理解できたかな? 「陽性でも病気の確率は15%」。この衝撃、忘れられないよね。ベイズは「結果から原因を考える」最強の道具! 現代のAIや医療の根っこにあるんだよ! 第6章もあとひとつ!