機器學習筆記(四) - 頻率學派與貝葉斯學派、共軛分布、貝葉斯估計

頻率學派(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  (0p1)

a.機率質量函數

fX(x)=px(1p)1x={p,if x = 11p,if x = 0

b.期望值

E[X]=0×fX(0)+1×fX(1)=0+p=p

c.變異數

Var(X)=E[X2]E[X]2=pp2=p(1p)p q

伯努利分布的一個典型例子為投擲硬幣,令投擲結果出現正面時,隨機變數 X=1,當我們經過多次試驗後,考慮以下問題:給定 n 次試驗結果 D={x1, x2, , xn},其中正面次數為 S、失敗次數為 F,試問在此結果為前提下,硬幣出現正面的機率為何?

根據 MLE,待求目標為

maxL(pD)=P(Dp)=P({x1, x2, , xn}p)

因為每次試驗為 獨立同分佈(independent and identically distributed, IID):

=P(x1p)×P(x2p)××P(xnp)=px1(1p)1x1×px2(1p)1x2××pxn(1p)1xn=pni=1xi×(1p)Nni=1xi

因為要求函數最大值,我們需要算其一階微分,取 log 後會有比較良好的性質,與此同時,因為 log 是單調遞增函數,不影響最大值的分布:

(ni=1xi)logp+(Nni=1xi)log(1p)1pni=1xi11p(Nni=1xi)=0Sp+S1p=N1pSp=F1pFp=SSp(F+S)p=Sp=SN

二項分布(Binomial distribution)

二項分布是 n 個獨立的是/非試驗中成功的次數的離散機率分布,其中每次試驗的成功機率為 p。這樣的單次成功/失敗試驗又稱為伯努利試驗。實際上,當 n=1 時,二項分布就是伯努利分布。

a.機率質量函數

如果隨機變數 X 服從參數為 np的二項分布,我們記 Xb(n,p)XB(n,p)n 次試驗中正好得到 k 次成功的機率由機率質量函數給出:

f(k;n,p)=Pr(X=k)=(nk)pk(1p)nkk[1,n] 其中 (nk)=n!k!(nk)!

b.期望值

如果 XB(n,p)(也就是說,X 是服從二項分布的隨機變數),那麼 X 的期望值為:

E[X]=nk=0kPr(X=k)=nk=0k(nk)pk(1p)nk=nk=1k(nk)pk(1p)nk=nk=1n(n1k1)pk(1p)nk=nn1k=0(n1k)pk+1(1p)nk1=npn1k=0(n1k)pk(1p)nk1=np[p+(1p)]n1=np

等價於做 n 次伯努利試驗的結果。

c.變異數

Var(X)=E[X2]E[X]2=nk=0k2Pr(X=k)E[X]2=nk=0k2(nk)pk(1p)nkE[X]2=nk=1k2(nk)pk(1p)nkE[X]2=nk=1kn(n1k1)pk(1p)nkE[X]2=nn1k=0(k+1)(n1k)pk+1(1p)nk1E[X]2=np[n1k=0k(n1k)pk(1p)nk1+n1k=0(n1k)pk(1p)nk1]E[X]2=np[(n1)p+1](np)2=np(npp+1np)=np(1p)

貝塔分布(beta distribution)

β 分布是指一組定義在 [0,1] 區間的連續機率分布,有兩個參數 α,β>0

a.機率密度函數

f(x;α,β)=xα1(1x)β110uα1(1u)β1du=Γ(α+β)Γ(α)Γ(β)xα1(1x)β11B(α,β)xα1(1x)β1

(第一行到第二行會在下一篇文章中推導)

其中 Γ(z) 為 Gamma 函數,定義如下:

Γ(z)=0tz1etdt

Gamma 函數有以下性質:

Γ(n+1)=0tnetdt=tnet|0+0ntn1etdt=nΓ(n)

另外透過推導得知:

Γ(1)=0t11etdt=0etdt=et|0=1 所以Γ(n)=(n1)! nN

b.期望值

E[X]=10xf(x;α,β)dx=10x1B(α,β)xα1(1x)β1dx=1B(α,β)10xα(1x)β1dx=1B(α,β)B(α+1,β)=Γ(α+β)Γ(α)Γ(β)Γ(α+1)Γ(β)Γ(α+β+1)=αα+β

c.變異數

Var(X)=E[X2]E[X]2=10x2f(x;α,β)dx=10x21B(α,β)xα1(1x)β1dxE[X]2=1B(α,β)10xα+1(1x)β1dxE[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)(1p)N(0)×Γ(α+β)Γ(α)Γ(β)pα1(1p)β110(NN(1))pN(1)(1p)N(0)Γ(α+β)Γ(α)Γ(β)pα1(1p)β1dp=Γ(α+β)Γ(α)Γ(β)=pα+N(1)1(1p)β+N(0)110pα+N(1)1(1p)β+N(0)1dp=f(p;α+N(1),β+N(0))

從推導中可以看出,其後驗和其先驗一樣,是個 beta 分布,像這樣的情況稱為 共軛先驗(Conjugate prior),事實上還有許多共軛分布的例子。最後推導一下後驗分布的最大值發生點,也就是 MAP:

ˆpMAP=argmaxpf(p;α+N(1),β+N(0))=argmaxppα+N(1)1(1p)β+N(0)1=argmaxp(α+N(1)1)logp+(β+N(0)1)log(1p)

令一階導數為 0

α+N(1)1pβ+N(0)11p=0 α+N(1)1p=β+N(0)11pα+N(1)1αpN(1)p+p=βp+N(0)ppp(α+β+N2)=α+N(1)1p=α+N(1)1α+β+N2 參考資料:

留言

這個網誌中的熱門文章

機器學習筆記(三) - 資訊熵

機器學習筆記(一) - LSE 、牛頓法

機器學習筆記(二) - 機率 、貝氏定理