機器學習筆記(四) - 頻率學派與貝葉斯學派、共軛分布、貝葉斯估計
頻率學派(Frequentist) 與貝葉斯學派(Bayesian)
頻率學派與貝葉斯學派都是用來估計未知參數(機率)的方法,兩者最大的不同點是:
頻率學派主張的是一種評價範式。它沒有先驗,更加的客觀。貝葉斯學派主張的是一種模型方法,通過建立未知參數的模型,在沒有觀測到樣本之前,一切參數都是不確定的。使用觀測的樣本值來估計參數,得到的參數帶入模型使當前模型最佳的擬合觀測到的數據。
頻率學派(Frequentist)
頻率學派一般採用的是 最大似然估計(Maximum likelihood estimation, MLE),在給定資料 D 以及機率分布模型,我們想找出在此特定模型下的參數,使得資料 D 發生的可能性最大。定義 似然函數(likelihood function):
L(θ∣D)=P(D∣θ)其中 θ 為模型所需的參數。可以看到似然函數的變數為 θ,而非一隨機變量。如果套用貝式定理:
P(θ∣D)=P(θ)P(D∣θ)P(D)以貝葉斯學派觀點來說明的話, MLE 對先驗分布做了均勻分布的假設 (P(θ) 為定值),因此若要最大化 P(θ∣D),等價於最大化 P(D∣θ),換句話說,均勻部分的先驗並不影響我們最大化的結果,也可以說是不考慮先驗。頻率學派不考慮先驗的原因是因為其認為客觀先驗不存在,要得到準確的機率只能靠增大數據量來逼近。以數學可以表示如下:
ˆθMLE=argmaxθf(x∣θ)其中 x 為獨立同分佈的採樣,θ 為模型參數,f 為我們所使用的模型。
貝葉斯學派(Bayesian)
貝葉斯學派其中一個估計方式為 最大後驗估計(Maximum a posteriori, MAP),與 MLE 不同的是,MAP 導入了先驗的概念,假設先驗分布模型為 g,透過貝式定理:
f(θ∣x)=f(x∣θ)g(θ)∫θ∈Θf(x∣θ′)g(θ′)dθ′後驗分布的目標為:
ˆθMAP=argmaxθf(x∣θ)g(θ)∫θ∈Θf(x∣θ′)g(θ′)dθ′=argmaxθf(x∣θ)g(θ)另外值得注意的是,MLE 和 MAP 都是 點估計(point estimation),和之後會提到的貝葉斯估計不同 (貝葉斯估計為 區間估計(interval estimation))。
伯努利分布(Bernoulli distribution)
伯努利分布是一個離散型機率分布,若伯努利試驗成功,則伯努利隨機變數取值為1。若伯努利試驗失敗,則伯努利隨機變數取值為0。假設其成功機率為 p (0≤p≤1):
a.機率質量函數
fX(x)=px(1−p)1−x={p,if x = 11−p,if x = 0b.期望值
E[X]=0×fX(0)+1×fX(1)=0+p=pc.變異數
Var(X)=E[X2]−E[X]2=p−p2=p(1−p)≜p q伯努利分布的一個典型例子為投擲硬幣,令投擲結果出現正面時,隨機變數 X=1,當我們經過多次試驗後,考慮以下問題:給定 n 次試驗結果 D={x1, x2, ⋯, xn},其中正面次數為 S、失敗次數為 F,試問在此結果為前提下,硬幣出現正面的機率為何?
根據 MLE,待求目標為
maxL(p∣D)=P(D∣p)=P({x1, x2, ⋯, xn}∣p)因為每次試驗為 獨立同分佈(independent and identically distributed, IID):
=P(x1∣p)×P(x2∣p)×⋯×P(xn∣p)=px1(1−p)1−x1×px2(1−p)1−x2×⋯×pxn(1−p)1−xn=p∑ni=1xi×(1−p)N−∑ni=1xi因為要求函數最大值,我們需要算其一階微分,取 log 後會有比較良好的性質,與此同時,因為 log 是單調遞增函數,不影響最大值的分布:
⇒(n∑i=1xi)logp+(N−n∑i=1xi)log(1−p)⇒1pn∑i=1xi−11−p(N−n∑i=1xi)=0⇒Sp+S1−p=N1−p⇒Sp=F1−p⇒Fp=S−Sp⇒(F+S)p=S⇒p=SN二項分布(Binomial distribution)
二項分布是 n 個獨立的是/非試驗中成功的次數的離散機率分布,其中每次試驗的成功機率為 p。這樣的單次成功/失敗試驗又稱為伯努利試驗。實際上,當 n=1 時,二項分布就是伯努利分布。
a.機率質量函數
如果隨機變數 X 服從參數為 n和 p的二項分布,我們記 X∼b(n,p) 或 X∼B(n,p)。n 次試驗中正好得到 k 次成功的機率由機率質量函數給出:
f(k;n,p)=Pr(X=k)=(nk)pk(1−p)n−k∀k∈[1,n] 其中 (nk)=n!k!(n−k)!b.期望值
如果 X∼B(n,p)(也就是說,X 是服從二項分布的隨機變數),那麼 X 的期望值為:
E[X]=n∑k=0kPr(X=k)=n∑k=0k(nk)pk(1−p)n−k=n∑k=1k(nk)pk(1−p)n−k=n∑k=1n(n−1k−1)pk(1−p)n−k=nn−1∑k=0(n−1k)pk+1(1−p)n−k−1=npn−1∑k=0(n−1k)pk(1−p)n−k−1=np[p+(1−p)]n−1=np等價於做 n 次伯努利試驗的結果。
c.變異數
Var(X)=E[X2]−E[X]2=n∑k=0k2Pr(X=k)−E[X]2=n∑k=0k2(nk)pk(1−p)n−k−E[X]2=n∑k=1k2(nk)pk(1−p)n−k−E[X]2=n∑k=1kn(n−1k−1)pk(1−p)n−k−E[X]2=nn−1∑k=0(k+1)(n−1k)pk+1(1−p)n−k−1−E[X]2=np[n−1∑k=0k(n−1k)pk(1−p)n−k−1+n−1∑k=0(n−1k)pk(1−p)n−k−1]−E[X]2=np[(n−1)p+1]−(np)2=np(np−p+1−np)=np(1−p)貝塔分布(beta distribution)
β 分布是指一組定義在 [0,1] 區間的連續機率分布,有兩個參數 α,β>0。
a.機率密度函數
f(x;α,β)=xα−1(1−x)β−1∫10uα−1(1−u)β−1du=Γ(α+β)Γ(α)Γ(β)xα−1(1−x)β−1≜1B(α,β)xα−1(1−x)β−1(第一行到第二行會在下一篇文章中推導)
其中 Γ(z) 為 Gamma 函數,定義如下:
Γ(z)=∫∞0tz−1etdtGamma 函數有以下性質:
Γ(n+1)=∫∞0tnetdt=−tnet|∞0+∫∞0ntn−1etdt=nΓ(n)另外透過推導得知:
Γ(1)=∫∞0t1−1etdt=∫∞0e−tdt=−e−t|∞0=1 所以Γ(n)=(n−1)!∀ n∈Nb.期望值
E[X]=∫10xf(x;α,β)dx=∫10x1B(α,β)xα−1(1−x)β−1dx=1B(α,β)∫10xα(1−x)β−1dx=1B(α,β)B(α+1,β)=Γ(α+β)Γ(α)Γ(β)Γ(α+1)Γ(β)Γ(α+β+1)=αα+βc.變異數
Var(X)=E[X2]−E[X]2=∫10x2f(x;α,β)dx=∫10x21B(α,β)xα−1(1−x)β−1dx−E[X]2=1B(α,β)∫10xα+1(1−x)β−1dx−E[X]2=1B(α,β)B(α+2,β)−E[X]2=Γ(α+β)Γ(α)Γ(β)Γ(α+2)Γ(β)Γ(α+β+2)−E[X]2=(α+1)α(α+β+1)(α+β)−(αα+β)2=αα+β[α+1α+β+1−αα+β]=αα+β(α+1)(α+β)−α(α+β+1)(α+β+1)(α+β)=αα+βα2+αβ+α+β−α2−αβ−α(α+β+1)(α+β)=αβ(α+β+1)(α+β)2貝葉斯估計
貝葉斯估計是 最大後驗估計(MAP) 的進一步擴展,和 MAP 一樣,也認為參數不是固定的,都假設參數服從一個先驗分佈。但是 MAP 是直接估計出參數的值,而貝葉斯估計是估計出參數的分佈,這就是貝葉斯與 MLE 與 MAP 最大的不同。
下方假設一個情況:假設硬幣的正面機率 (prior) 服從 β分布,即 p∼β(α, β),現在再投擲此硬幣 N 次,其中成功次數為 N(1)次、失敗次數為 N(0)次,將其記作 B(p),我們想知道硬幣的正面機率 p 的後驗分布:
根據貝氏定理:
posterior=likelihood×priormarginal=(NN(1))pN(1)(1−p)N(0)×Γ(α+β)Γ(α)Γ(β)pα−1(1−p)β−1∫10(NN(1))pN(1)(1−p)N(0)Γ(α+β)Γ(α)Γ(β)pα−1(1−p)β−1dp=Γ(α+β)Γ(α)Γ(β)=pα+N(1)−1(1−p)β+N(0)−1∫10pα+N(1)−1(1−p)β+N(0)−1dp=f(p;α+N(1),β+N(0))從推導中可以看出,其後驗和其先驗一樣,是個 beta 分布,像這樣的情況稱為 共軛先驗(Conjugate prior),事實上還有許多共軛分布的例子。最後推導一下後驗分布的最大值發生點,也就是 MAP:
ˆpMAP=argmaxpf(p;α+N(1),β+N(0))=argmaxppα+N(1)−1(1−p)β+N(0)−1=argmaxp(α+N(1)−1)logp+(β+N(0)−1)log(1−p)令一階導數為 0:
α+N(1)−1p−β+N(0)−11−p=0 ⇒α+N(1)−1p=β+N(0)−11−p⇒α+N(1)−1−αp−N(1)p+p=βp+N(0)p−p⇒p(α+β+N−2)=α+N(1)−1⇒p=α+N(1)−1α+β+N−2 參考資料:
留言
張貼留言