条件付き確率とベイズの面積
感度 90% の検査で陽性が出ても、本当に病気である確率は約 9.2% にとどまります。条件付き確率とベイズの定理を 1×1 矩形の4セル分割として扱い、事前確率・尤度・事後確率の関係を面積比として読み解きます。ベイズの定理は条件付き確率の定義から直接導かれる初等的命題で、同じ同時確率を異なる条件で割る関係として導出します。独立性は「条件付けても確率が変わらない関係」として定義し、排反性との混同・基準率の無視・確率の更新までを離散の範囲で整理します。
感度 90% の検査で陽性が出ても、本当に病気である確率は約 9.2% にとどまります。条件付き確率とベイズの定理を 1×1 矩形の4セル分割として扱い、事前確率・尤度・事後確率の関係を面積比として読み解きます。ベイズの定理は条件付き確率の定義から直接導かれる初等的命題で、同じ同時確率を異なる条件で割る関係として導出します。独立性は「条件付けても確率が変わらない関係」として定義し、排反性との混同・基準率の無視・確率の更新までを離散の範囲で整理します。
stats-06 で確率変数 と期待値 を導入しました。本記事では「観測した情報で確率を更新する」という動作を扱います。感度 90% の検査で陽性が出たとき、直感の答え「90%」と正答「約 9.2%」は 約 81 ポイント離れています。なぜでしょうか。その構造を 1×1 の矩形で読み解きます。
stats-05 で確率 の基礎と Kolmogorov 三公理を、stats-06 で確率変数と期待値 を導入しました。ここまでで「出来事に確率を割り当てる」前準備が整いました。本記事で加えるのは「情報を受け取ったあとで確率を更新する」という動作です。それが条件付き確率 の仕事であり、ベイズの定理はその更新を 2 行の代数で書き下したものです。
Part 2(確率と期待値)の 4 本構成における本記事の位置は以下の通りです。
ある検査の性能を 3 つの数字で表します。有病率(集団の中で実際に病気の人の割合)は 1%。感度(病気の人を陽性と判定する確率)は 90%。特異度(健康な人を陰性と判定する確率)は 91%。この 3 数が揃うと、「陽性が出たとき本当に病気である確率」が計算できます。
素朴な答えは「90%」です。感度 90% の検査で陽性が出たのだから、病気の確率も 90% だと直感するのは自然です。ところが正答は約 9.2% です。81 ポイント近い乖離があります。Eddy(1982)の調査では、同種の問題に正答した医師は約 5% にとどまりました。医師でもこのズレを埋められません。
ここで数字の意味を確認しておきます。感度 90% は「病気の人に検査をかけたら 90% が陽性になる」という条件付き確率 であり、「検査の判定が 90% 当たる」という全体的な正解率ではありません。この設定の全体正解率(正しく陽性 + 正しく陰性)は 、つまり約 91.0% です。感度と全体正解率が偶然どちらも 90% 台になっていますが、両者は別の量であり、「陽性が出たとき病気である確率」はさらに別の量です。同じ検査について 3 つの数字が並立し、そのうち 9.2% だけが陽性の人にとっての答えになります。
この 81 ポイントの差は計算上の複雑さから来るのではありません。有病率 1% という前提が小さいために、陽性の人の中で「本当に病気の人」が薄まってしまう構造的な問題です。感度が高くても、健康な人が陽性になる確率と健康な人の母数の組み合わせによって偽陽性者が真陽性者を大幅に上回れば、陽性的中率は低くなります。陽性的中率は感度だけでは決まらず、有病率・感度・偽陽性率の3つに依存します。全体正解率 91.0% の大半は「健康な人を正しく陰性と判定した」 が稼いでいる分であり、陽性判定の質を何も保証しません。
矩形分割でこの構造を正確に見ることができます。病気帯の陽性セルと健康帯の陽性セルがそれぞれどれだけの面積を占めるかを確認すれば、9.2% という数値は2セルの面積比から直接読み出せます。
「陽性なら病気」ではなく「陽性かつ病気の人は、陽性の人全体のごく一部」
以下、本記事では「縦の細い帯(病気帯、幅 1%)」と「縦の広い帯(健康帯、幅 99%)」を、それぞれ陽性・陰性のセルに分けます。図の横軸が有病状態、縦軸が検査結果です。感度90%と偽陽性率9%は異なるため、陽性事象は共通の高さを持つ横帯ではなく、高さの異なる2セルの和です。
1×1 の正方形を用意します。横方向に「病気 1% / 健康 99%」で切り、縦の細い帯と広い帯に分けます。次に各帯の中を縦方向に「陽性 / 陰性」で切ります。病気帯(幅 0.01)の中は 90:10 で切り、健康帯(幅 0.99)の中は 9:91 で切ります。こうして 4 つのセルができます。
図の読み方: 横軸は有病状態(左 1% が病気、右 99% が健康)、縦軸は検査結果(上が陽性、下が陰性)です。各セルの面積が「病気かつ陽性」「健康かつ陰性」などの同時確率に対応します。4 セルの面積を足すと 1 になります。
セルの面積は 同時確率 です。記号 (キャップ、「かつ」と読みます)は「 と が両方起きる」ことを表します。「病気かつ陽性」のセル面積は です。
陽性を表す2セルの合計面積は 周辺確率 です。陽性になるルートは、病気の帯から陽性に入るルートと、健康の帯から陽性に入るルートの2つです。両セルは高さが違いますが、面積を足すと になります。
条件付き確率は次のように定義されます。縦棒 の右側が条件事象です。
「 が起きたという条件のもとで が起きる確率」は、「 に該当するセルを集め直して新しい全体と見たとき、 がどれだけを占めるか」と読みます。分母 は条件に該当するセルの合計面積、分子 はその中の対象セルの面積です。 の制約は、面積がゼロの事象では割れないという 0 除算の回避です。
この式に数値を入れると 、つまり約 9.2% です。冒頭で提示した 9.2% という答えは、矩形の面積比として直接読み出せます。
同じ「病気かつ陽性」の同時確率を、2つの条件付き確率から読みます。1 通り目は「先に病気の縦帯を固定し、その内部を陽性・陰性に分ける」読み方です。病気帯(幅 0.01)の中の陽性セルは、病気帯に感度を掛けて出てきます。
2 通り目は、元の図で高さの異なる陽性2セルを集め直し、その合計面積 を新しい全体にする読み方です。その中で病気セルが占める割合が事後確率です。
図の読み方: 左図は元の標本空間で、赤と青の陽性セルは高さが異なります。右図はその2セルだけを切り出して横に並べ、合計を100%へ正規化した別の矩形です。右図の赤い幅9.2%が事後確率であり、元の図に高さ9.8%の横帯があるわけではありません。
両方の式が同じセル面積 を表しているので、等号で結べます。これがベイズの定理を導く 2 行です。
を「病気」、 を「陽性」に割り当てると、両右辺が等しいから が成り立ちます。 で両辺を割ると、ベイズの定理が出てきます。
は事前確率(prior: 観測前の病気の確率 0.01)、 は尤度(likelihood: 病気であれば陽性が出る確率 0.90)、 は周辺確率(marginal: 陽性が出る確率 0.0981)、 は事後確率(posterior: 陽性が出た後に病気である確率 0.0917)です。
分母の周辺確率 は、陽性領域が2つのルートから来ることを思えば分解できます。 は「 の余事象」、つまり が起こらない事象()です。陽性になるのは「病気かつ陽性」か「健康かつ陽性」かのどちらかですから、
が成り立ちます。矩形では「陽性領域の総面積 = 病気&陽性セル + 健康&陽性セル」と読みます。検算: 。この分解を分母に代入すると、ベイズの定理の展開形になります。
数値を代入します: 。前節の矩形面積と同じ答えです。
「よく当たる検査」という言い方を素朴に受け取ると、「病気 → 陽性」も「陽性 → 病気」も同じ 90% になりそうだと感じます。感度(病気 → 陽性)が 90% なのだから、陽性 → 病気も 90% でしょう、と。この直感は系統的に外れます。
矩形を見ると理由がわかります。「病気かつ陽性」のセル面積は 0.009 です。このセルを病気の縦帯(面積 0.01)で割ると感度 0.90 になります。同じセルを陽性2セルの合計面積 0.0981 で割ると事後確率 0.0917 になります。同じ分子を、異なる2つの分母で割るから比が変わります。
図の読み方: 上段は病気の人全体を100%とした再配置で、赤がそのうち陽性になる90%です。下段は陽性者全体を100%とした再配置で、赤がそのうち病気である約9.2%です。棒の長さはそれぞれ別の分母を100%へ正規化したもので、元の標本空間で同じ面積を重ねた図ではありません。
分母が 0.01 か 0.0981 かによって、同じ分子 0.009 から出てくる比が10倍近く変わります。有病率・感度・偽陽性率が変われば、2つの分母と比も変わります。
有病率を 1% から 50% に上げると何が変わるでしょうか。感度 90%・特異度 91% を固定して計算すると、事後確率は 、約 91% になります。有病率 1% では 9.2%、有病率 50% では 91% です。感度と特異度が全く同じでも、有病率が 50 倍になると事後確率が 10 倍近く変わります。
事前確率(基準率)が小さい場合、 と は大きく違う値をとります。有病率 1% と感度 90% の組み合わせでは、両者の差は 約 81 ポイントになります。この錯誤は base rate fallacy(基準率の無視)と呼ばれ、Kahneman と Tversky が 1973 年に実証した古典的バイアスです。医療診断・法廷証拠・スパム判定の現場で繰り返し観察されます。詳細は補足記事 stats-supplement-base-rate-fallacy を参照してください。
この 81 ポイントの乖離は、情報を受け取る前後で確率がどう動くかを整理すれば自然に見えてきます。検査を受ける前、患者が属する集団の有病率は 1% です。この集団的な情報だけを持った状態での確率が事前確率 です。患者個人について他に情報がなければ、これが最良の確率の推定値になります。
検査結果「陽性」を受け取った瞬間、確率は (約 9.2%)に更新されます。事前の 1% から事後の 9.2% へ、9 倍以上の上昇です。しかし依然として 10% を切ります。陽性という情報は「病気の可能性を 9 倍に高めた」が、「病気だと確定した」わけではありません。
物理的に何かが変わったわけではありません。患者の体内の細胞は検査の前後で同じ状態にあります。変わったのは観測者(医師や患者本人)の知識状態です。確率 は世界の物理的状態を表すのではなく、観測者が持つ情報を反映する数値です。ですから「情報が増えると確率が変わる」のは当たり前であり、矛盾ではありません。
もし同じ患者が別の独立した検査で再び陽性になれば、その結果を新たな情報として取り込んで確率をさらに更新できます。最初の検査結果を新しい事前確率 9.2%(≈ 0.0917)に置き、2 回目の陽性という情報をベイズの定理で処理すれば が得られます。このような逐次的な確率の更新(逐次ベイズ更新)は stats-17 で本格的に展開します。
確率の更新が機能するのは、病気と検査結果が独立でないことが前提です。数学的な定義としては の方が普遍的です。 の場合の処理、対称性、3 事象以上への拡張のいずれでも扱いやすいです。一方、意味解釈としては の方が直接的で、「 が起きたという情報を得ても の確率が変わらない」と読めます。本記事では意味解釈を主軸にしますが、教科書定義の数学的優位性は否定しません。
矩形では「縦帯のどこを切っても、上下の比率(陽性の割合)が同じ」状態です。病気帯でも健康帯でも、陽性の割合が全く同じなら「病気かどうか」と「検査結果」は独立です。これは「検査が全く役に立たない」状態を意味します。乳がん検査の例で言えば、もし独立だったら となり、検査は有病率の情報を何も追加しません。
の両辺に を掛けると が出ます。両者は同値であり、どちらを定義と呼ぶかは文脈次第です。独立性を「掛け算で求まる」とだけ覚えてしまうと、「情報が無意味」という核心を見落とします。
独立性と排反性は全く別の概念です。排反とは (両方は同時に起きない)という条件で、確率で書くと です。排反な事象は「一方が起きた瞬間にもう一方が起きないと確定する」という最も強い情報伝達をします。 ですから、排反な事象は独立ではありません。 かつ ならば、排反事象は必ず従属です。
下のスライダーで有病率・感度・特異度を動かすと、各セルの面積と陽性的中率(事後確率)がリアルタイムに変わります。初期値はベースライン(有病率 1%・感度 90%・特異度 91% → 事後確率 9.2%)です。
陽性的中率 P(病気|陽性) は「緑(真陽性)の面積 ÷ 陽性(緑+赤)の面積合計」。有病率を下げると病気の列が細くなり、緑の面積が痩せて赤に埋もれる。検査の精度を上げても、有病率が低ければ的中率は上がりにくい。
ベースラインは上のウィジェットで直接確認できるので、続く 2 枚はそこから外した代表設定だけを固定スナップショットにします(感度 90% は固定)。横方向が有病状態(左が病気)、縦方向が検査結果(上が陽性)です。事後確率は、赤い病気×陽性セルの面積を、赤と青の陽性2セルの合計面積で割った比です。
| 設定 | 有病率 | 感度 | 特異度 | 事後確率 |
|---|---|---|---|---|
| ベースライン(ウィジェット初期値) | 1% | 90% | 91% | 約 9.2% |
| B(有病率 10 倍) | 10% | 90% | 91% | 約 52.6% |
| C(特異度 99%) | 1% | 90% | 99% | 約 47.6% |
有病率を 10 倍にすると赤の病気縦帯が太くなり、陽性2セルの合計面積に占める病気セルの比率が上がって、事後確率は 9.2% から 52.6% へ(+43.4pt)動きます。
特異度を 91% から 99% に上げると偽陽性率が 9% から 1% に下がり、青の健康×陽性セルが薄くなります。陽性2セルの合計に占める病気セルの比率が上がり、事後確率は 9.2% から 47.6% になります。
参考: 感度を 90% から 99% に上げた場合(有病率 1%・特異度 91% 固定)、事後確率は で10%になります。この基準点と変化幅では約9.2%から10%への変化ですが、感度の影響が一般に小さいという意味ではありません。
ベイズの定理は有病率・感度・特異度の3数を結ぶ関係式です。事後確率への影響は、どの基準点からどれだけ動かすかで変わります。ここで選んだ比較では、有病率を1%から50%へ動かすと事後確率は約9.2%から約91%へ、特異度を91%から99%へ動かすと約47.6%へ、感度を90%から99%へ動かすと10%へ変わります。ただし変化幅が異なるため、この3例からパラメータの一般的な重要度順位は決められません。
信用スコアの更新にベイズの定理が使われます。融資審査では「過去の返済実績」という情報(尤度)を受け取るたびに事前の信用度(事前確率)を事後確率に更新し、与信限度を見直します。カードの取引履歴が積み上がるほど、事後確率の推定精度は高まります。
シグナル統合でもベイズの逐次更新は使えます。ただし尤度をそのまま掛け算してよいのは、「リターン上位」という条件のもとで各シグナルが独立なとき(条件付き独立)に限られます。モメンタム・バリュー・クオリティはこの条件が成り立たず、掛け算は実務ではそのまま使えません。シグナルが同じ方向に重なっていれば同じ情報を二重に数えて事後確率を過信し、逆向きに動く関係(バリューとモメンタムのように負の相関が報告される組み合わせ)なら証拠の強さを取り違えます。ずれの向きは相関の符号で決まります。実務ではファクター間の共分散構造(covariance)をモデルに入れ、同時尤度または条件付き尤度で更新します。
1990 年に Goldman Sachs の Fischer Black と Robert Litterman が開発した Black-Litterman モデルは、この共分散付きベイズ更新の代表例です。市場均衡リターンを事前分布の平均に置き、事前平均の不確かさは資産間の共分散行列を定数倍したもの()で表します。アナリスト見解は「特定のポートフォリオの期待超過リターン」として尤度に入れ、見解の確信度が尤度の精度(分散の逆数)になります。事後平均は、事前平均と見解をそれぞれの精度(共分散の逆行列)で重み付けした加重平均になります。確信度の高い見解ほど重みが大きくなります。独立性仮定ではなく、共分散行列と見解の張り方が「どの見解がどの資産にどれだけ情報を流すか」を決めます。
条件付き VaR(CVaR)は「損失が閾値を超えた」という条件のもとでの期待値 であり、stats-18 で扱います。更新ではなく条件付けの側の応用です。
stats-08 では大数の法則と中心極限定理を扱います。本記事で確立した確率の言語(, , )はそのまま stats-08 でも使います。
Part 5(stats-17 ベイズ更新・stats-18 条件付き期待値)で、本記事の条件付き確率の枠組みが連続確率へ一般化され、 の形で本格的に展開します。