什麼是貝氏定理?
貝氏定理(Bayes' Theorem)說明了當我們取得新證據 B 時,該如何更新對假設 A 為真的機率判斷。它把原本的先驗(prior)信念,透過權衡「證據在假設成立下出現的可能性」與「證據整體出現的可能性」,轉換成更新後的事後(posterior)信念。這套思維是統計學、機器學習、醫學診斷、垃圾郵件過濾,乃至在不確定情境下做理性決策的核心基礎。
計算機怎麼用?
請輸入三個介於 0 到 1 之間的機率值:
- P(A)——先驗機率,也就是假設為真的基礎發生率(例如某疾病在人群中的盛行率)。
- P(B|A)——概似度,即假設 A 成立時觀察到證據的機率(例如檢測的敏感度)。
- P(B|¬A)——偽陽性率,即假設 A 不成立時仍出現證據的機率。
計算機會依「全機率定律」自動推算出證據的總機率 \(P(B)\),再回傳事後機率 \(P(A \mid B)\)。
公式解析
核心算式為 $$P(A \mid B) = \frac{\text{P(B|A)} \cdot \text{P(A)}}{\text{P(B|A)} \cdot \text{P(A)} + \text{P(B|¬A)} \cdot \left(1 - \text{P(A)}\right)}$$由於 \(P(B)\) 通常無法直接得知,我們將它展開為 $$P(B) = \text{P(B|A)} \cdot \text{P(A)} + \text{P(B|¬A)} \cdot \left(1 - \text{P(A)}\right)$$這道展開式把「真陽性」與「偽陽性」兩部分加總起來,算出證據究竟有多常出現。
實際範例
假設某疾病在人群中的盛行率為 1%,因此 \(P(A) = 0.01\)。某項檢測對真正患病者有 90% 的命中率,即 \(P(B \mid A) = 0.9\);但同時也有 8% 的偽陽性率,即 \(P(B \mid \neg A) = 0.08\)。則 $$P(B) = 0.9 \times 0.01 + 0.08 \times 0.99 = 0.009 + 0.0792 = 0.0882$$事後機率為 $$P(A \mid B) = \frac{0.009}{0.0882} \approx 0.102$$約為 10.2%。換句話說,即使檢測結果為「陽性」,這位受檢者其實多半是健康的——這正是「基礎率謬誤(base-rate neglect)」最經典的範例。
後驗概率如何在不同情景中變化
貝葉斯定理將先驗概率 \(P(A)\)、真陽性率(可能性)\(P(B \mid A)\) 和偽陽性率 \(P(B \mid \neg A)\) 結合成更新的後驗概率 \(P(A \mid B)\)。結果中最令人驚訝的單一特徵是它對基礎比率 \(P(A)\) 的敏感性:當一個條件罕見時,即使是高度準確的測試也會產生較低的後驗概率。下表在某些地方固定了測試特性,並改變輸入以使該依賴性可見。
| 情景 | 先驗 P(A) | 可能性 P(B|A) | 偽陽性率 P(B|¬A) | 後驗 P(A|B) |
|---|---|---|---|---|
| 罕見條件,準確的測試 | 0.01 | 0.99 | 0.05 | 0.1667 |
| 罕見條件,較低的偽陽性率 | 0.01 | 0.99 | 0.01 | 0.5 |
| 中等基礎比率,準確的測試 | 0.10 | 0.99 | 0.05 | 0.6875 |
| 常見條件,準確的測試 | 0.50 | 0.99 | 0.05 | 0.9519 |
| 罕見條件,高偽陽性率 | 0.01 | 0.90 | 0.20 | 0.0435 |
閱讀前兩行可以看出,將偽陽性率從 0.05 降低到 0.01 會將後驗從約 17% 提高到 50%,儘管基礎比率和敏感性保持不變。閱讀第一、三和四行可以看出,隨著先驗從 1% 上升到 50%,相同的測試將後驗從 17% 推高到約 95%。最後一行演示了相反的極端情況:罕見條件加上高偽陽性率會使後驗保持在 5% 以下,儘管真陽性率為 90%。
解釋您的後驗概率
後驗概率 \(P(A \mid B)\) 是在您觀察到證據 \(B\) 之後假設 \(A\) 為真的概率。它回答實際問題「鑑於這個陽性結果,該條件實際存在的可能性有多大?」—— 這通常是決策者想知道的。
重要的是不要將後驗與可能性 \(P(B \mid A)\) 混淆。可能性(在測試背景下通常稱為敏感性或真陽性率)是在假設 \(A\) 為真時看到證據的概率。這兩個條件概率指向相反的方向,只有在特殊情況下才相等。測試可以有 99% 的真陽性率,但產生的後驗遠低於 99% —— 差異是由基礎比率和偽陽性率驅動的。
基礎比率 \(P(A)\) 是這一差距的推動力。當 \(A\) 罕見時,真實案例的池很小,因此即使應用於大量 \(\neg A\) 人群的適度偽陽性率也會產生比真陽性更多的偽陽性。忽視基礎比率並將陽性結果解讀為幾乎確定是著名的基礎比率謬誤。
最後,貝葉斯更新是迭代的。計算後驗後,它可以作為下一個獨立證據的先驗。例如,觀察第二個陽性測試意味著您將第一個後驗作為 \(P(A)\) 輸入並再次更新。重複的獨立證據會逐步完善估計,這就是為什麼貝葉斯推理是序列測試、垃圾郵件過濾和許多機器學習模型的基礎。
關鍵術語和變數
- 先驗—— \(P(A)\)
- 在觀察證據之前分配給假設 \(A\) 的概率。在測試背景下,這是條件的流行程度或基礎比率。
- 可能性—— \(P(B \mid A)\)
- 當 \(A\) 為真時觀察到證據 \(B\) 的概率。對於診斷測試,這是敏感性或真陽性率。
- 偽陽性率—— \(P(B \mid \neg A)\)
- 當 \(A\) 為假時觀察到證據 \(B\) 的概率。對於診斷測試,它等於 \(1 - \text{特異性}\)。
- 證據 / 邊際可能性—— \(P(B)\)
- 在所有假設下觀察到證據的總概率,通過全概率法則計算為 \(P(B) = P(B \mid A)\,P(A) + P(B \mid \neg A)\,\bigl(1 - P(A)\bigr)\)。它是歸一化後驗的分母。
- 後驗—— \(P(A \mid B)\)
- 考慮證據 \(B\) 後 \(A\) 的更新概率。它是貝葉斯定理的輸出。
- 基礎比率
- 先驗 \(P(A)\) 的另一個名稱—— 假設在人群中的基礎頻率,與任何特定測試結果無關。
- 貝葉斯定理
- 將這些量聯繫起來的規則:\(P(A \mid B) = \dfrac{P(B \mid A)\,P(A)}{P(B)}\)。符號 \(P(X \mid Y)\) 讀作「給定 \(Y\) 時 \(X\) 的概率」,\(\neg A\) 表示「非 \(A\)」,即假設的補集。
常見問題
為什麼範例中的事後機率這麼低?因為這個疾病很罕見,所以「健康但被誤判為陽性」的人數,遠遠超過「真正患病且被正確檢出」的人數。
如果我已經知道 \(P(B)\) 該怎麼辦?你可以微調 \(P(B \mid \neg A)\),讓計算出的總機率與已知值吻合;不過為了維持一致性,本工具一律以全機率定律自動推算 \(P(B)\)。
這三個輸入值加起來要等於 1 嗎?不用。每一個都是獨立、介於 0 到 1 之間的機率;只有 \(P(A)\) 與 \((1 - P(A))\) 兩者才互為補數。