【科普】AI 時代的統計素養:為什麼 99% 準確率的檢測,陽性預測力可能只有 50%?

更新 發佈閱讀 6 分鐘

近年來,隨著人工智慧(AI)與大數據的蓬勃發展,統計學中的「貝氏定理(Bayes' Theorem)」及其相關應用更顯重要。在做機器學習相關的效能分析時,會不會被一連串的英文縮寫搞得頭暈:True Positive (TP真陽性)False Positive (FP偽陽性)SensitivityPrecision, 但這些名詞是判讀數據必備的濾鏡。

今天,我們就從大家都熟悉的快篩經驗出發,文末並利用布朗大學(Brown University)知名的視覺化教學網站 Seeing Theory 的邏輯,來探討一個直覺上最容易誤判的統計陷阱:「基率謬誤(Base Rate Fallacy)」。

1. 一個挑戰直覺的思考實驗

讓我們進行一個思想實驗。假設現在有一種相對罕見的疾病(Disease),在一般人群中的盛行率(Prevalence / Base Rate)是 1%

醫院引進了一款極為先進的檢測儀器,原廠數據宣稱其準確率高達 99%。這意味著:
如果受測者真的患有疾病 ($Disease$),儀器有 99% 的機率顯示陽性。
如果受測者是健康的 ($Healthy$),儀器有 99% 的機率顯示陰性。

現在,你收到了一份健檢報告,上面顯示紅字的「陽性(Positive)」。

請問:你真正患有該疾病(Disease)的機率是多少?

(A) 99%

(B) 80%

(C) 50%

絕大多數人的直覺反應是:「既然準確率是 99%,那我確診的機率肯定也是 99% 吧?」然而,貝氏定理告訴我們的答案卻令人驚訝:大約只有 50%。 (文末再帶大家一起來計算)

這並非儀器故障,而是我們的大腦只著眼在「先驗機率(Prior Probability)」提供的資訊,然而這裡卻隱藏著條件機率,也就是說,在一堆同樣驗到陽性的人當中,真的有病的人比例是多少

2. 數據視覺化:1,000 人的「點陣圖」真相

人類的大腦在處理抽象機率(如 P(Disease) = 0.01)時容易失真,但對於「具體圖像」的感知卻很敏銳。為了釐清悖論,我們將機率轉換為 1,000 人的群體 來進行推演。

在這張圖中,我們將人群分為兩類:

  • 真正的患者 (Disease):根據 1% 的盛行率,1,000 人中只有 10 人 是真正的患者。因為儀器靈敏度高,這 10 人幾乎都被抓出來了。這就是 True Positive (真陽性)。
  • 健康的未感染者 (Healthy):其餘的 990 人 其實是健康的。但請注意!儀器有 1% 的誤判率。當 990 位健康者接受檢測,1% 的誤差會導致大約 10 人 被錯誤標記為陽性。這就是 False Positive (偽陽性)。

3. 重新審視你的「陽性報告」

現在,請想像你拿著那張陽性報告。你並不屬於健康的陰性群體,你只可能屬於被標記為陽性的那一群人。

讓我們看看這群「陽性俱樂部」的成員結構:

  • 來自真正患者 (Disease):約 10 人。
  • 來自被誤判的健康者 (Healthy):約 10 人。
  • 陽性總人數:20 人。

在一堆同樣驗到陽性的人當中,你只是這 20 位陽性受測者 當中的一員。由於「真病人」與「被誤判者」的人數竟然旗鼓相當(10 對 10),因此你真正患病的機率

P(Disease | +) = 10/20=50%

這解釋了為什麼在高靈敏度的檢測下,如果疾病很罕見(低 Prior),陽性結果的可信度會被大量的健康偽陽性給「稀釋」掉。

4. 進階知識

為了讓大家能更精確地閱讀相關文獻,這裡整理了上述提到的關鍵術語,這也是 Seeing Theory 網站上會看到的變數名稱:

  • Prior (先驗機率):即 $P(Disease)$。指在還沒檢測前,疾病在人群中發生的自然機率。
  • Sensitivity (靈敏度):即 P(+ | Disease)。有病的人,被正確檢測出陽性的機率。
  • Specificity (特異度):即 P(- | Healthy)。健康的人,被正確檢測出陰性的機率。
  • Posterior (後驗機率):即 P(Disease | +)。這才是我們最關心的——「當機器亮紅燈時,我是真的有病的機率是多少?」。

現在我們可以利用https://seeing-theory.brown.edu/bayesian-inference/index.html
這個網站來動手把P(Healthy)=0.99, P(-|H)=0.99, P(+|D)=0.99 及 讓大家視覺上觀察模擬結果。
最後我們來利用貝氏定理來算出Posterior (後驗機率):即 P(Disease | +)

  • 真正驗出陽性的患者機率 =P(+|Disease)P(Disease)=0.99*0.01
  • 來自被誤判的健康者機率=P(+|Healthy)P(Healthy)=0.01*0.99
  • P(Disease | +) =0.99*0.01/(0.99*0.01+0.01*0.99)=50%
留言
avatar-img
教授媽媽的教育實踐筆記的沙龍
1會員
2內容數