在 Chpater 4 中作者用 Euro Problem (硬幣投擲問題) 作為範例計算並檢定硬幣是否公平。並介紹使用 Beta Distribution 快速計算 Posterior 的方法。

ThinkBayes Note

Chapter 4 - More Estimation

The Euro Problem

投擲一個歐元硬幣 250 次,統計得出的 Head 和 Tail 數量分別為 140 次與 110 次,試問是否能資料判斷這枚硬幣是否公平(Fair)

對於該問題可用兩步驟加以求解

  1. 計算硬幣擲出 Head 的機率分佈。
  2. 驗證前面的投擲結果資料,是否能說明硬幣為公平

定義 Hypothesis \(H_x\) 來代表該硬幣擲出 Head 的機率為 \(x\) (也代表擲出 Tail 的機率為 \(100-x\))。也就是共有 \(H_0\)\(H_{100}\) 共 101 個 Hypothesis,假如硬幣為 fair,那結果應該接近 \(H_{50}\)

假設 Prior 為 Uniform Prior,因此

\[P(H_0) = P(H_1) = \cdots = P(H_{100})\]

而硬幣擲出 Head 的 Likelihood 為

\[P(D=Head \mid H_{x})=\frac{x}{100}\]

則擲出 Tail 的 Likelihood

\[P(D=Tail \mid H_x)=1-P(D=Head \mid H_{x})\]

現有 Data 中 Head 出現 140 次而 Tail 為 110 次,即 D = ["Head" * 140 + "Tail" * 110],計算 Posterior Probability distrubution 後可得到下圖結果 (原書中 Fig.4.1 的圖)

thinkbayes-ch4-posterior

可得知 Maximum Likelihood 為 \(P(H_{56} \mid D)\),也就是擲出該結果的硬幣,本身擲出 Head 的機率最有可能是 56%。計算該機率分佈 90% 的 Credible interval 後得到範圍為 (51, 56)。而 50 並不在信賴區間中,因此可判斷該硬幣為不公平unfair)。

Swamping the priors

在許多問題中 Prior 通常會被設為 Uniform Distribution,但可能影響計算結果的好壞。因此作者嘗試在該問題中使用 Triangular 作為 Prior Distribution,如下圖所示

ch4-triangular-prior

並使用新的 Triangular Prior 重新計算 Posterior 得出來的結果與 Uniform Prior 所得出的分佈非常接近。因此可知道在資料足夠的情況下,就算使用不同的 Prior 分佈,Posterior 也會收斂到近似的結果。

Optimization - The beta distribution

若 Hypotheses 與 Data 越多,則計算時間會越來越長,這時就需要將演算法最佳化以提升計算效率。除了在程式部分外,我們可以把機率模型由離散分佈轉換成連續分佈,如 Beta 分佈 (Beta distribution) 的連續機率模型。

\[ f(x;\alpha,\beta) = \frac{1}{B(\alpha, \beta)}x^{\alpha - 1}(1-x)^{\beta - 1} \]

\[ 0 \le x \le 1, \alpha > 0, \beta > 0 \]

\(\alpha\) (alpha) 和 \(\beta\) (beta)為 shape parameters。

假如使用 Binomial Likelihood Function 來更新模型,則 Beta Distribution 為 conjugate prior - 即 Prior Distribution 為 Beta 分佈時,Posterior 也是 Beta 分佈。

以硬幣問題為例,假設 Prior 為由 \(\alpha\)\(\beta\) 組成的 Beta Distribution,投擲結果為 H 個 Heads 與 T 個 Tails 的,則 Posterior 為由 \(\alpha + H\)\(\beta + T\) 所組成的 Beta Distrubution。這個結果顯示我們可以非常快速的計算出 Posterior 數值而不需要在像之前一樣不斷更新 PMF,大幅減少計算時間。

因當 \(\alpha = 1\)\(\beta = 1\) 時 Beta distribution 即為 Uniform distribution,與原先的 Prior 假設相符。因此我們可直接以 \(\alpha + 140\)\(\beta + 110\) 的參數作為 Posterior Beta Distribution 的參數,計算出最大可能機率約為 56%

避免設定 Prior 的值為 0,詳情可參考 Cromwell's rule

Reference