Bayes公式

**貝氏定理**（英語：Bayes' theorem）是機率論中的一個定理，描述在已知一些條件下，某事件的發生機率。比如，如果已知某種健康問題與壽命有關，使用貝氏定理則可以通過得知某人年齡，來更加準確地計算出某人有某種健康問題的機率。

通常，事件 A 在事件 B 已發生的條件下發生的機率，與事件 B 在事件 A 已發生的條件下發生的機率是不一樣的。然而，這兩者是有確定的關係的，貝氏定理就是這種關係的陳述。貝氏公式的一個用途，即透過已知的三個機率而推出第四個機率。貝氏定理跟隨機變數的條件機率以及邊際機率分布有關。

作為一個普遍的原理，貝氏定理對於所有機率的解釋是有效的。這一定理的主要應用為貝氏推論，是推論統計學中的一種推論法。這一定理名稱來自於托馬斯・貝葉斯。

## 陳述

貝氏定理是關於隨機事件 A 和 B 的條件機率的一則定理。

其中 $A$ 以及 $B$ 為隨機事件，且 $P(B)$ 不為零。 $P(A\mid B)$ 是指在事件 $B$ 發生的情況下事件 $A$ 發生的機率。

在貝氏定理中，每個名詞都有約定俗成的名稱：

 * $P(A\mid B)$ 是已知 $B$ 發生後， $A$ 的條件機率。也稱作 $A$ 的事後機率。
* $P(A)$ 是 $A$ 的事前機率（或邊際機率）。其不考慮任何 $B$ 方面的因素。
* $P(B\mid A)$ 是已知 $A$ 發生後， $B$ 的條件機率。也可稱爲 $B$ 的事後機率。某些文獻又稱其為在特定 $B$ 時， $A$ 的概似性，因爲 $P(B\mid A)=L(A\mid B)$ 。
* $P(B)$ 是 $B$ 的事前機率。

按這些術語，貝氏定理可表述為：

　
: 事後機率 = (概似性 \* 事前機率)/ 標準化常數

也就是說，事後機率與事前機率和相似度的乘積成正比。

另外，比例 $P(B|A)/P(B)$ 也有時被稱作標准概似度（standardised likelihood），貝氏定理可表述為：

　
: 事後機率 = 標準概似度 \* 事前機率

　
: 由貝氏公式 $P(\theta |X)={\frac {P(\theta )P(X|\theta )}{P(X)}}\propto P(\theta )P(X|\theta )$ 可以看出，這裡面的 $\theta $ 是一個隨機變數（因為 $\theta $ 有機率 $P(\theta )$ ）。因為 $P(\theta |X)\propto P(\theta )P(X|\theta )$ ，所以這也是貝氏估計和極大概似估計的區別所在，極大概似估計中要估計的母數是個一般變數，而貝氏估計中要估計的母數是個隨機變數。

## 從條件機率推導貝氏定理

根據條件機率的定義。在事件 $B$ 發生的條件下事件 $A$ 發生的機率是：

　
: $P(A|B)={\frac {P(A\cap B)}{P(B)}}$

其中 $A$ 與 $B$ 的聯合機率表示為 $P(A\cap B)$ 或者 $P(A,B)$ 或者 $P(AB)$ 。

同樣地，在事件 $A$ 發生的條件下事件 $B$ 發生的機率

　
: $P(B|A)={\frac {P(A\cap B)}{P(A)}}\!$

整理與合併這兩個方程式式，我們可以得到

　
: $P(A|B)\,P(B)=P(A\cap B)=P(B|A)\,P(A)\!$

這個引理有時稱作機率乘法規則。上式兩邊同除以 $P(B)$ ，若 $P(B)$ 是非零的，我們可以得到貝氏定理:

　
: $P(A|B)={\frac {P(B|A)\,P(A)}{P(B)}}\!$

## 二中擇一的形式

貝氏定理通常可以再寫成下面的形式：

　
: $P(B)=P(A\cap B)+P(A^{C}\cap B)=P(B|A)P(A)+P(B|A^{C})P(A^{C})$ ，

其中 _A_C 是 A 的補集（即非 A）。故上式亦可寫成：

　
: $P(A|B)={\frac {P(B|A)\,P(A)}{P(B|A)P(A)+P(B|A^{C})P(A^{C})}}\!$

在更一般化的情況，假設 {_A_i} 是事件集合裡的部份集合，對於任意的 _A_i，貝氏定理可用下式表示：

　
: $P(A_{i}|B)={\frac {P(B|A_{i})\,P(A_{i})}{\sum _{j}P(B|A_{j})\,P(A_{j})}}\!$

### 以可能性與相似率表示貝氏定理

貝氏定理亦可由相似率 Λ 和可能性 _O_ 表示：

　
: $O(A|B)=O(A)\cdot \Lambda (A|B)$

其中

　
: $O(A|B)={\frac {P(A|B)}{P(A^{C}|B)}}\!$

定義為 B 發生時，A 發生的可能性（odds）；

　
: $O(A)={\frac {P(A)}{P(A^{C})}}\!$

則是 A 發生的可能性。相似率（Likelihood ratio）則定義為：

　
: $\Lambda (A|B)={\frac {L(A|B)}{L(A^{C}|B)}}={\frac {P(B|A)}{P(B|A^{C})}}\!$

### 貝氏定理與機率密度

貝氏定理亦可用於連續機率分布。由於機率密度函數嚴格上並非機率，由機率密度函數導出貝氏定理觀念上較為困難（詳細推導參閱）。貝氏定理與機率密度的關係是由求極限的方式建立：

　
: $f(x|y)={\frac {f(x,y)}{f(y)}}={\frac {f(y|x)\,f(x)}{f(y)}}\!$

全機率定理則有類似的論述：

　
: $f(x|y)={\frac {f(y|x)\,f(x)}{\int _{-\infty }^{\infty }f(y|x)\,f(x)\,dx}}.\!$

如同離散的情況，公式中的每項均有名稱。_f_(_x_, _y_) 是 _X_ 和 _Y_ 的聯合分布；_f_（_x_|_y_）是給定 _Y_=_y_ 後，_X_ 的事後分布；_f_（_y_|_x_）= _L_（_x_|_y_）是 _Y_=_y_ 後，_X_ 的相似度函數（為 _x_ 的函數)；_f_（_x_）和 _f_（_y_）則是 _X_ 和 _Y_ 的邊際分布；_f_（_x_）則是 _X_ 的事前分布。
為了方便起見，這裡的 _f_ 在這些專有名詞中代表不同的函數（可以由引數的不同判斷之）。

### 貝氏定理的推廣

對於變數有二個以上的情況，貝氏定理亦成立。例如：

　
: $P(A|B,C)={\frac {P(A)\,P(B|A)\,P(C|A,B)}{P(B)\,P(C|B)}}\!$

這個式子可以由套用多次二個變數的貝氏定理及條件機率的定義導出：

　
: $P(A|B,C)={\frac {P(A,B,C)}{P(B,C)}}={\frac {P(A,B,C)}{P(B)\,P(C|B)}}$

　
: $={\frac {P(C|A,B)\,P(A,B)}{P(B)\,P(C|B)}}={\frac {P(A)\,P(B|A)\,P(C|A,B)}{P(B)\,P(C|B)}}$

一般化的方法則是利用聯合機率去分解待求的條件機率，並對不加以探討的變數積分（意即對欲探討的變數計算邊際機率）。取決於不同的分解形式，可以證明某些積分必為 1，因此分解形式可被簡化。利用這個性質，貝氏定理的計算量可能可以大幅下降。貝氏網路為此方法的一個例子，貝氏網路指定數個變數的聯合機率分布的分解型式，該機率分布滿足下述條件：當其他變數的條件機率給定時，該變數的條件機率為一簡單型式。

## 範例

### 吸毒者檢測

下面展示貝氏定理在檢測吸毒者時的應用。假設一個常規的檢測結果的靈敏度和特異度均為 99%，即吸毒者每次檢測呈陽性（+）的機率為 99%。而不吸毒者每次檢測呈陰性（-）的機率為 99%。從檢測結果的機率來看，檢測結果是比較準確的，但是貝氏定理卻可以揭示一個潛在的問題。假設某公司對全體雇員進行吸毒檢測，已知 0.5% 的雇員吸毒。請問每位檢測結果呈陽性的雇員吸毒的機率有多高？

令「D」為雇員吸毒事件，「N」為雇員不吸毒事件，「+」為檢測呈陽性事件。可得

* P (D) 代表雇員吸毒的機率，不考慮其他情況，該值為 0.005。因為公司的預先統計表明該公司的雇員中有 0.5% 的人吸食毒品，所以這個值就是 D 的事前機率。
* P (N) 代表雇員不吸毒的機率，顯然，該值為 0.995，也就是 1-P (D)。
* P (+|D) 代表吸毒者被驗出為陽性的機率，這是一個條件機率，由於陽性檢測準確性是 99%，因此該值為 0.99。
* P (+|N) 代表不吸毒者被驗出為陽性的機率，也就是出錯檢測的機率，該值為 0.01。因為對於不吸毒者，其檢測為陰性的機率為 99%，因此，其被誤檢測成陽性的機率為 1 - 0.99 = 0.01。
* P (+) 代表不考慮其他因素的影響的陽性檢出率，白話來說，即該公司有多少比例的檢測結果為陽性。該值為 0.0149 或者 1.49%。我們可以通過全機率公式計算得到：此機率 = 身爲吸毒者的機率 x 吸毒被驗出陽性的機率（0.5% x 99% = 0.495%) + 身爲不吸毒者的機率 x 不吸毒卻被驗出陽性的機率（99.5% x 1% = 0.995%)。P (+)=0.0149 是檢測呈陽性的事前機率。用數學公式描述為：

　
: $P(+)=P(+\cap D)+P(+\cap N)=P(+|D)P(D)+P(+|N)P(N)$

根據上述描述，我們可以計算某人檢測呈陽性時確實吸毒的條件機率 P (D|+)：

　
: ${\begin{aligned}P(D|+)&={\frac {P(+|D)P(D)}{P(+)}}\\&={\frac {P(+|D)P(D)}{P(+|D)P(D)+P(+|N)P(N)}}\\&={\frac {0.99\times 0.005}{0.99\times 0.005+0.01\times 0.995}}\\&=0.3322.\end{aligned}}$

儘管吸毒檢測的準確率高達 99%，但貝氏定理告訴我們：如果某人檢測呈陽性，其吸毒的機率只有大約 33%，不吸毒的可能性比較大。假陽性高，則檢測的結果不可靠。這是因爲該公司不吸毒的人數遠遠大於吸毒人數，所以即使不吸毒者被誤檢為陽性的機率僅爲 1%，其實際被誤檢人數還是很龐大。舉例來說，若該公司總共有 1000 人（其中 5 人吸毒，995 人不吸），不吸毒的人被檢測出陽性的人數有大約 10 人（1% x 995），而吸毒被驗出陽性的人數有 5 人（99% x 5），總共 15 人被驗出陽性（10 + 5）。在這 15 人裏面，只有約 33% 的人是真正有吸毒。所以貝氏定理可以揭露出此檢測在這個案例中的不可靠。

同時，也因爲不可靠的主因是不吸毒卻被誤檢陽性的人數遠多於吸毒被檢測出來的人數（上述例子中 10 人 > 5 人），所以即使陽性檢測靈敏度能到 100%（即只要吸毒一定驗出陽性），檢測結果陽性的員工，真正吸毒的機率 $P(D|+)$ 也只會提高到約 33.4%。但如果靈敏度仍然是 99%，而特異度卻提高到 99.5%（即不吸毒的人中，約 0.5% 會被誤檢為陽性），則檢測結果陽性的員工，真正吸毒的機率可以提高到 49.9%。

### 胰腺癌檢測

基於貝氏定理：即使 100% 的胰腺癌症患者都有某症狀，而某人有同樣的症狀，絕對不代表該人有 100% 的機率得胰腺癌，還需要考慮事前機率，假設胰腺癌的發病率是十萬分之一，而全球有同樣症狀的人有萬分之一，則此人得胰腺癌的機率只有十分之一，90% 的可能是是假陽性。

### 不良種子檢測

基於貝氏定理：假設 100% 的不良種子都表現 A 性狀，而種子表現 A 性狀，並不代表此種子 100% 是不良種子，還需要考慮事前機率，假設一共有 6 萬顆不良種子，在種子中的比例是十萬分之一（假設總共有 60 億顆種子），假設所有種子中有 1/3 表現 A 性狀（即 20 億顆種子表現 A 性狀），則此種子為不良種子的機率只有十萬分之三。

## 參見

* 機率論
* 貝氏機率
* 貝氏推理

## 參考文獻

## 外部連結

* 數學之美番外篇：平凡而又神奇的貝氏方法（頁面存檔備份，存於網際網路檔案館）