參數估計
先給出以下定義:
先驗分佈:P(θ)
似然函數:P(D∣θ)
後驗分佈:P(θ∣D)
貝葉斯公式:P(θ∣D)=P(D)P(D∣θ)P(θ) 其中 P(D)=∑i=1nP(xi∣θ)P(θ)
這樣我們很容易得到他們四者的關係:後驗分佈 = 似然函數 × 先驗分佈 / P(D)
接着再用一個例子來幫助理解
路人甲在一個不透明的袋裏放了若干個黑色和白色的球,他感覺是白色球更多;路人乙想知道袋中球的情況,就從袋中有放回式取球,一共取了10次,有7次是白球,3次是黑球。
通過這個例子,白球或黑球的比例就是 θ (0≤θ≤1) ,路人甲的感覺就是先驗分佈 P(θ) ,路人乙觀測到的就是 D={x1,x2...x10} (其中xi = 1(白色) or 0(黑色)),路人乙通過觀測想知道比例就是似然 P(D∣θ) ,路人乙在知道路人甲的感覺後想知道比例就是後驗分佈 P(θ∣D)
當知道觀測值 x 時,估計參數 θ 就是參數估計;當知道參數 θ 時,預測觀測值 x 就是預測;參數估計的目的時爲了對新的觀測值進行預測。
有了初步的理解認識後,我們開始介紹正題
1、最大似然估計(MLE)
Maximum Likelihood Estimation
最大似然估計的思想是:認爲參數是一個固定的值,找到使得發生觀測數據情況概率最大的參數,即讓似然函數最大的參數。
似然函數表示如下:
L(θ∣x1,x2,⋯,xn)=f(x1,x2,⋯,xn∣θ)=i=1∏nf(xi∣θ)
因爲連乘不好求解,通常會進行一個對數變換,轉換爲累加:
l(θ)=lnL(θ∣x1,x2,⋯,xn)=i=1∑nf(xi∣θ)
推導
伯努利分佈(Bernoulli)
每一個樣本的概率可以表示爲:P(x∣θ)=θx(1−θ)1−x ,x=0or1 ,θ 是成功的概率
我們現在有n個樣本,D={x1,x2,...,xn} ,
寫出對數最大似然函數表達式:
l(θ)=i=1∑nlogP(xi∣θ)=i=1∑nlogθxi(1−θ)1−xi=i=1∑nxilogθ+(1−xi)log(1−θ)=(i=1∑nxi)logθ+(i=1∑n(1−xi))log(1−θ)=mlogθ+(n−m)log(1−θ)
對 l(θ) 進行求導,解得當 θ=n1∑i=1nxi ,似然函數 l(θ) 取最大值
正態分佈(Gaussian)
每一個樣本的概率可以表示爲: P(x∣θ)=2πσ1exp(−2σ2(x−θ)2)
所以對數最大似然函數表達式:
l(θ)=i=1∑nlogP(xi∣θ)=i=1∑n[−21log2π−logσ−2σ2(xi−θ)2]=−2nlog2π−nlogσ−2σ2∑i=1n(xi−θ)2
對 l(θ) 進行求導,解得當 θ=n1∑i=1nxi ,似然函數 l(θ) 取最大值
例子
問:我們還是用開頭的例子,路人甲在一個不透明的袋裏放了若干個黑色和白色的球;路人乙想知道袋中球的情況,就從袋中有放回式取球,一共取了10次,有7次是白球,3次是黑球。問白球的比例是多少?
答:在這個例子中,每一次實驗都是服從伯努利分佈,我們設白球的概率爲 θ ,所以每一次實驗可以表示爲: P(xi∣θ)=θxi(1−θ)1−xi 。樣本爲 D={x1,x2,...,x10}
寫出似然函數:P(D∣θ)=∏i=110P(xi∣θ)=θ7(1−θ)3
求出上面似然函數最大時的 θ 值(先取對數),得到 θ=0.7
計算步驟
- 選擇參數模型(伯努利、高斯…),設參數爲 θ
- 獲得樣本數據 D={x1,x2,x3,...,xn}
- 通過最大似然公式求解
2、最大後驗估計(MAP)
Maximum A Posteriori Estimation
在最大似然估計的例子中,如果樣本數量不夠多,其實存在着很大的問題
MLE簡單又客觀,但是過分的客觀有時會導致過擬合(Over fitting)。在樣本點很少的情況下,MLE的效果並不好
一個最簡單的例子就是,一個伯努利模型,我們知道通過最大似然估計得到的先驗值爲 N1∑i=1Nxi ,那如果實驗過程中,全部出現1或者0,那麼估計出的參數顯然是不對的
最大似然估計認爲使似然函數 P(D∣θ) 最大的參數 θ 即爲最好的 θ ;最大後驗估計認爲使 P(X∣θ)P(θ) 最大的參數 θ 即爲最好的 θ ;最大似然估計可以看作是一種特殊的最大後驗估計,將 θ 看作是固定的, P(θ)=1 。
最大後驗概率估計的公式表示:(P(D)是一個常數,與 θ 無關)
θargmaxP(θ∣D)=θargmaxP(D)P(D∣θ)P(θ)∝θargmaxP(D∣θ)P(θ)
推導
要求解MAP,還需要知道參數的先驗分佈,
正態分佈
我們假設高斯分佈方差已知,現在要估計均值,將均值記爲 θ
每一個樣本的概率可以表示爲 P(x∣θ)=2πσ1exp(−2σ2(x−θ)2)
我們假設 θ 服從高斯分佈,θ∼N(μ0,σ02) 則:P(θ)=2πσ01exp(−2σ02(θ−μ0)2)
θargmaxP(D∣θ)P(θ)=θargmaxlogP(D∣θ)+logP(θ)=θargmax[−2nlog2π−nlogσ−2σ2∑i=1n(xi−θ)2]−21log2π−logσ0−2σ02(θ−μ0)2
求解上式得到 θ=σ02n−σ2σ02∑i=1nxi−σ2μ0
例子
問:我們還是用開頭的例子,路人甲在一個不透明的袋裏放了若干個黑色和白色的球,他感覺白色球更多;路人乙想知道袋中球的情況,就從袋中有放回式取球,一共取了10次,有7次是白球,3次是黑球。問白球的比例是多少?
答:在這個例子中,每一次實驗都是服從伯努利分佈,我們設白球的概率爲 θ ,所以每一次實驗可以表示爲: P(xi∣θ)=θxi(1−θ)1−xi 。樣本爲 D={x1,x2,...,x10} 。我們還知道路人甲的感覺是白色球更多,我們需要給出一個 θ 的分佈,假設 P(θ)=2θ
寫出後驗概率函數:P(D∣θ)P(θ)=∏i=110p(xi∣θ)×2θ=2θ8(1−θ)3
求出上面後驗概率最大時的 θ 值(先取對數),得到 θ=0.73
當樣本個數無窮多的時候,MAP上會逼近MLE,因爲樣本足夠多了,就不需要先驗了,或者比起先驗更相信樣本。
3、貝葉斯估計
最大似然估計和最大後驗估計都是估計了參數的具體值,但更令人信服的其實是參數的分佈,知道參數在取每個值時的概率。
與最大後驗估計一樣,需要用到貝葉斯定理:
P(θ∣D)=∫ΘP(D∣θ)P(θ)dθP(D∣θ)P(θ)
同樣的我們需要知道先驗分佈 P(θ) ,但此時不再求 θargmaxP(θ∣D) ,而要求出 P(θ∣D) 。這裏如果先驗分佈十分複雜,上式會很難求解(因爲要分母積分),所以一般會選擇共軛先驗。
最大後驗估計和貝葉斯估計也存在一個問題,實際應用場景中的先驗概率不是那麼好求,很多都是拍腦袋決定的。一旦是拍腦袋決定的,自然也就不準了,先驗概率不準,那麼計算出的後驗概率也就相應的不準了。
貝葉斯估計用來預測新測量數據的概率,對於新出現的數據 x :
P(x∣D)=∫ΘP(x∣θ)P(θ∣D)dθ=∫ΘP(x∣θ)P(D)P(D∣θ)P(θ)dθ
例子
問:我們還是用開頭的例子,路人甲在一個不透明的袋裏放了若干個黑色和白色的球,他感覺白色球更多;路人乙想知道袋中球的情況,就從袋中有放回式取球,一共取了10次,有7次是白球,3次是黑球。問白球的比例是多少?
答:在這個例子中,每一次實驗都是服從伯努利分佈,我們設白球的概率爲 θ ,所以每一次實驗可以表示爲: P(xi∣θ)=θxi(1−θ)1−xi 。樣本爲 D={x1,x2,...,x10} 。我們還知道路人甲的感覺是白色球更多,我們需要給出一個 θ 的分佈,假設 θ∼Beta(α,β)
f(θ;α,β)=∫01uα−1(1−u)β−1duθα−1(1−θ)β−1=B(α,β)1θα−1(1−θ)β−1
寫出後驗概率函數:
P(θ∣D)=∫ΘP(D∣θ)P(θ)dθP(D∣θ)P(θ)=∫Θθ7(1−θ)3B(α,β)θα−1(1−θ)β−1dθθ7(1−θ)3B(α,β)θα−1(1−θ)β−1=∫Θθα+7−1(1−θ)β+3−1dθθα+7−1(1−θ)β+3−1=B(α+6,β+2)θα+6(1−θ)β+2=Beta(θ∣α+6,β+2)
所以我們得到了參數的後驗分佈情況,得到 θ∼Beta(α+6,β+2)
計算步驟
1、計算後驗概率 P(θ∣D)
根據貝葉斯定理:
P(θ∣D)=∫ΘP(D∣θ)P(θ)dθP(D∣θ)P(θ)
2、計算新樣本的估計
P(x∣D)=∫ΘP(x∣θ)P(θ∣D)dθ
總結
MLE、MAP是選擇相對最好的一個模型, 貝葉斯方法則是通過觀測數據來估計後驗分佈,並通過後驗分佈做羣體決策,所以後者的目標並不是在去選擇某一個最好的模型,而是去評估每一個模型的好壞。
知識點
-
概率是已知參數,對結果可能性的預測。似然是已知結果,對參數是某個值的可能性預測
-
二項分佈參數的共軛先驗是Beta分佈,多項式分佈參數的共軛先驗是Dirichlet分佈,指數分佈參數的共軛先驗是Gamma分佈,⾼斯分佈均值的共軛先驗是另⼀個⾼斯分佈,泊松分佈的共軛先驗是Gamma分佈。
-
共軛先驗:指後驗分佈與先驗分佈具有相同的數學形式,因爲這樣可以簡化計算
參考
葉斯估計、最大似然估計、最大後驗估計三者的區別
貝葉斯估計、最大似然估計、最大後驗概率估計