在知乎上看到一個比較複雜一點的例題,可以作爲貝葉斯的引入:
一種癌症,得了這個癌症的人被檢測出爲陽性的機率爲90%,未得這種癌症的人被檢測出陰性的機率爲90%,而人羣中得這種癌症的機率爲1%,一個人被檢測出陽性,問這個人得癌症的機率爲多少?
分析一下,首先設癌症爲A1,那麼不得癌症就是A2,陽性爲B1,陰性(不是陽性)爲B2。
整理一下已知條件:
得癌症的人中陽性的機率是0.9,這個0.9是隻統計了所有得了癌症的人,也就是說有了得癌症這個先驗條件,我們寫作
P(B1/A1)= 0.9 ①
未得癌症的人中陰性的機率是0.9,同理可以寫作:
P(B2/A2) = 0.9 ②
人羣中得癌症的概率是0.01,這個人羣中指的是所有的人,也就是沒有任何先驗條件,陰性和陽性的總和。
P(A1) = 0.01 ③
問題是陽性的人中得癌症的概率是多少,也就是:
P(A1/B1)
根據貝葉斯公式,P(A1/B1)*P(B1)=P(B1/A1)*P(A1)=P(A1,B1)
P(A1,B1)是指A1,B1同時發生的概率,叫做聯合概率。
所以可以求出
P(A1/B1)=P(B1/A1)*P(A1)/P(B1)=P(A1,B1)/P(B1)
P(A1,B1) = P(B1/A1)*P(A1) = 0.9*0.01 = 0.009
而根據①和③的條件,我們已經知道了P(B1/A1)= 0.9 ① ; P(A1) = 0.01 ③
那麼只需要再求出P(B1)即可;
根據P(A1) = 0.01 ③可以求出來
P(A2) = 1 - P(A1) = 0.99 ⑤
再看另一個條件P(B2/A2) = 0.9 ②
可以得出 P(B1/A2) = 1-P(B2/A2) = 1-0.9=0.1
所以可以求出P(B1,A2) = P(B1/A2) * P(A2) = 0.1 * 0.99 = 0.099
由於A2和A1就涵蓋了得癌症的所有情況了,所以實際上
P(B1,A2)+P(A1,B1)=P(B1)
P(B1)=0.099+0.009=0.108
所以
P(A1/B1) =P(A1,B1) / P(B1) = 0.009/0.108 = 0.083
總結:
之前我有一步想錯了,以爲知道 P(B1/A2) / P(A2) ^ 2就可以得到P(B1)了,後來想起來這是通過小部分估計大部分的錯誤,你只知道在自己圈子這一小片的分佈是這樣了,就以爲外面都是這個概率,就像在自己班上九十分以上的只有一個,你就以爲所有班級九十分以上的都很稀少,其實也許其他班所有人都是九十分呢,直接這樣除以來估計是絕對不對的。