機器學習淺析之最優解問題(二)

本文主要討論了機器學習中的最大似然估計MLE,貝葉斯估計和最大後驗估計MAP,以及它們的關係,是上一篇《機器學習淺析之最優解問題》的深刻。 html

最大似然估計MLE

Frequentist Learning假定存在模型M,其中未知參數爲.該參數的估計值爲. 給定樣本觀察數據X,經過選擇合適的θ值,可使產生該樣本數據X的機率最大。 機器學習

首先介紹逆機率公式: 函數

學習

它能夠將後驗機率轉化爲給予先驗機率和似然函數的表達式,因此最大似然估計MLE就是要用似然函數取得最大值時的參數值做爲估計值。 spa

MLE的過程以下: 3d

首先,寫出樣本觀察數據的聯合分佈的表達式: htm

其次,取對數可得: blog

最後,這是一個關於θ的函數,求導可得極值點,取最大值時對應的θ取值就是合適的模型參數。 文檔

以拋硬幣爲例,單次試驗服從伯努利分佈,N次試驗服從二項分佈,模型參數爲θ,即每次獲得正面的機率爲θ。爲了估計該參數,採用最大似然估計: get

似然函數的對數爲:

求導可得

最大似然估計中,參數θ是一個固定的值,只要可以擬合樣本數據就能夠了。可是當樣本過少的時候就容易出現過擬合現象,會獲得諸如只要沒見過飛機相撞,飛機就必定不會相撞的扭曲事實。

 

最大後驗估計MAP

最大後驗估計與最大似然估計類似,不一樣點在於須要考慮先驗機率p(θ)。也就是說,此時不是要去求似然函數取得最大值,而是要去求貝葉斯公式計算出的整個後驗機率最大值時的θ。

這裏的P(X)與θ無關,所以等價於使分子最大便可。

此處的先驗機率p(θ)能夠用來描述人們已知的廣泛規律,例如在扔硬幣試驗中,每次拋出正面的機率θ應該服從一個機率分佈,且在θ=0.5時取得最大值。該分佈就是先驗分佈,其參數稱爲超參數。即p(θ)=p(θ|α)

同理,上述後驗機率取得最大值時,可得MAP估計出的參數值。

仍以拋硬幣爲例,假設硬幣均勻,先驗機率分佈在θ=0.5時取得最大值。選用beta分佈做爲θ的分佈,即θ~Beta(α,β),當α,β=5時,p(θ=0.5),由上面公式推導可得:

其中

求導可得參數θ的最大估計值

從中咱們能夠看出先驗機率的做用爲

例如,當咱們作商品個性化推薦的時候,當沒法得到用戶我的喜愛的時候,只好根據先驗機率推薦大衆熱門的商品給他。

貝葉斯估計Bayesian learning

貝葉斯估計是在MAP上的進一步擴展,此時再也不是直接估計參數值,而是容許參數服從必定的分佈。因此如今不是要求後驗機率最大時的參數值。

根據

其中,根據全機率公式:

當新的數據被觀察到時,後驗機率能夠隨之調整。

預測方法以下:

以拋硬幣爲例,和MAP中同樣,假設先驗分佈爲beta分佈,可是在構造貝葉斯估計的時候,不是要用最大後驗機率時的參數來近似做爲參數值,而是求知足beta分佈的參數的指望。

由於在Beta分佈中

因此

因而可得

根據結果可知,根據貝葉斯估計,參數θ服從一個新的beta分佈。

在MAP中,咱們爲θ選取的先驗分佈爲beta分佈,後來以θ參數的二項分佈用貝葉斯估計獲得的θ的後驗機率仍服從beta分佈,由此可知二項分佈與beta分佈爲共軛分佈。

當隨機變量取值爲二維時,可使用beta分佈來處理,而多維時可使用狄利克雷分佈。在機率語言模型中,一般選取共軛分佈爲先驗分佈,從而帶來計算的方便性。LDA中每一個文檔的topic服從多項式分佈,其先驗分佈選取狄利克雷分佈。

因爲在貝葉斯估計中,參數的後驗機率是比較難以計算的,由於要對全部的參數進行積分,並且,這個積分其實就是全部θ的後驗機率的彙總,其實它是與最優θ是無關的,而咱們只關心最優θ(p(x)相同)。在這種狀況下,咱們採用了一種近似的方法求後驗機率,這就是最大後驗估計:

最大後驗估計相比最大似然估計,只是多了一項先驗機率,它正好體現了貝葉斯認爲參數也是隨機變量的觀點,在實際運算中一般經過超參數給出先驗分佈。最大似然估計實際上是經驗風險最小化的一個例子,而最大後驗估計是結構風險最小化的一個例子。若是樣本數據足夠大,最大後驗機率和最大似然估計趨向於一致,若是樣本數據爲0,最大後驗就僅由先驗機率決定。儘管最大後驗估計看着要比最大似然估計完善,可是因爲最大似然估計簡單,不少方法仍是使用最大似然估計。

相關文章
相關標籤/搜索