極大似然估計與最大後驗概率估計

極大似然估計與最大後驗概率估計

來自專欄機器學習重遊記29 人贊了文章

前言

不知看過多少次極大似然估計與最大後驗概率估計的區別,但還是傻傻分不清楚。或是當時道行太淺,或是當時積累不夠。

這次重遊機器學習之路,看到李航老師《統計學習方法》中第一章關於經驗風險最小化與結構風險最小化時談到了極大似然與最大後驗的話題,第一反應是竟然在第一章就談到了極大似然與最大後驗,相信大部分初學者看到這兩個詞時還是怕怕的,畢竟沒有太多理論基礎。不過沒關係,多積累,多搜集相關資料,相信這層疑惑的雲霧會逐漸散去的。

這次結合西瓜書和網上大牛的資料,加上自己推薦系統的研究背景以及自己的思考,總算是有些許收穫,不虛此行。點滴進步都值得被記錄,一來向大家分享,二來謹防遺忘。

頻率學派與貝葉斯派

在說極大似然估計(Maximum Likelihood Estimate)與最大後驗概率估計(Maximum A Posteriori estimation)之前,不得不說對於概率看法不同的兩大派別頻率學派與貝葉斯派。他們看待世界的視角不同,導致他們對於產生數據的模型參數的理解也不同。

① 頻率學派

他們認為世界是確定的。他們直接為事件本身建模,也就是說事件在多次重複實驗中趨於一個穩定的值p,那麼這個值就是該事件的概率。

他們認為模型參數是個定值,希望通過類似解方程組的方式從數據中求得該未知數。這就是頻率學派使用的參數估計方法-極大似然估計(MLE),這種方法往往在大數據量的情況下可以很好的還原模型的真實情況。

② 貝葉斯派

他們認為世界是不確定的,因獲取的信息不同而異。假設對世界先有一個預先的估計,然後通過獲取的信息來不斷調整之前的預估計。 他們不試圖對事件本身進行建模,而是從旁觀者的角度來說。因此對於同一個事件,不同的人掌握的先驗不同的話,那麼他們所認為的事件狀態也會不同。

他們認為模型參數源自某種潛在分布,希望從數據中推知該分布。對於數據的觀測方式不同或者假設不同,那麼推知的該參數也會因此而存在差異。這就是貝葉斯派視角下用來估計參數的常用方法-最大後驗概率估計(MAP),這種方法在先驗假設比較靠譜的情況下效果顯著,隨著數據量的增加,先驗假設對於模型參數的主導作用會逐漸削弱,相反真實的數據樣例會大大佔據有利地位。極端情況下,比如把先驗假設去掉,或者假設先驗滿足均勻分布的話,那她和極大似然估計就如出一轍了。

極大似然估計與最大後驗概率估計

我們這有一個任務,就是根據已知的一堆數據樣本,來推測產生該數據的模型的參數,即已知數據,推測模型和參數。因此根據兩大派別的不同,對於模型的參數估計方法也有兩類:極大似然估計與最大後驗概率估計。

① 極大似然估計(MLE)

-她是頻率學派模型參數估計的常用方法。

-顧名思義:似然,可以簡單理解為概率、可能性,也就是說要最大化該事件發生的可能性

-她的含義是根據已知樣本,希望通過調整模型參數來使得模型能夠最大化樣本情況出現的概率。

- 在這舉個猜黑球的例子:假如一個盒子裡面有紅黑共10個球,每次有放回的取出,取了10次,結果為7次黑球,3次紅球。問拿出黑球的概率 p 是多少?

  • 我們假設7次黑球,3次紅球為事件 A ,一個理所當然的想法就是既然事件 A已經發生了,那麼事件 A 發生的概率應該最大。所以既然事件 A 的結果已定, 我們就有理由相信這不是一個偶然發生的事件,這個已發生的事件肯定一定程度上反映了黑球在整體中的比例。所以我們要讓模型產生這個整體事件的概率最大,我們把這十次抽取看成一個整體事件 A ,很明顯事件 A 發生的概率是每個子事件概率之積。我們把 P(A) 看成一個關於 p 的函數,求 P(A) 取最大值時的 p ,這就是極大似然估計的思想。具體公式化描述為P(A)=p^7*(1-p)^3
  • 接下來就是取對數轉換為累加,然後通過求導令式子為0來求極值,求出p的結果。

② 最大後驗概率估計(MAP)

-她是貝葉斯派模型參數估計的常用方法。

-顧名思義:就是最大化在給定數據樣本的情況下模型參數的後驗概率

-她依然是根據已知樣本,來通過調整模型參數使得模型能夠產生該數據樣本的概率最大,只不過對於模型參數有了一個先驗假設,即模型參數可能滿足某種分布,不再一味地依賴數據樣例(萬一數據量少或者數據不靠譜呢)。

-在這裡舉個擲硬幣的例子:拋一枚硬幣10次,有10次正面朝上,0次反面朝上。問正面朝上的概率 	heta

  • 在頻率學派來看,利用極大似然估計可以得到 	heta= 10 / 10 = 1.0。顯然當缺乏數據時MLE可能會產生嚴重的偏差。
  • 如果我們利用極大後驗概率估計來看這件事,先驗認為大概率下這個硬幣是均勻的 (例如最大值取在0.5處的Beta分布),那麼P(	heta|X),是一個分布,最大值會介於0.5~1之間,而不是武斷的給出	heta= 1。
  • 顯然,隨著數據量的增加,參數分布會更傾向於向數據靠攏,先驗假設的影響會越來越小。

經驗風險最小化與結構風險最小化

經驗風險最小化與結構風險最小化是對於損失函數而言的。可以說經驗風險最小化只側重訓練數據集上的損失降到最低;而結構風險最小化是在經驗風險最小化的基礎上約束模型的複雜度,使其在訓練數據集的損失降到最低的同時,模型不至於過於複雜,相當於在損失函數上增加了正則項,防止模型出現過擬合狀態。這一點也符合奧卡姆剃刀原則:如無必要,勿增實體。

經驗風險最小化可以看作是採用了極大似然的參數評估方法,更側重從數據中學習模型的潛在參數,而且是只看重數據樣本本身。這樣在數據樣本缺失的情況下,很容易管中窺豹,模型發生過擬合的狀態;結構風險最小化採用了最大後驗概率估計的思想來推測模型參數,不僅僅是依賴數據,還依靠模型參數的先驗假設。這樣在數據樣本不是很充分的情況下,我們可以通過模型參數的先驗假設,輔助以數據樣本,做到儘可能的還原真實模型分布。

① 經驗風險最小化

-MLE她是經驗風險最小化的例子。當模型是條件概率分布,損失函數是對數損失函數時,經驗風險最小化就等價於極大似然估計。在這裡舉個邏輯回歸(LR)的例子,更多跟LR有聯繫的模型可參看拙作由Logistic Regression所聯想到的...。

  • 對於二分類的邏輯回歸來說,我們試圖把所有數據正確分類,要麼0,要麼1。
  • 通過累乘每個數據樣例來模擬模型產生數據的過程,並且最大化 prod_iP(1)*prod_jP(0)
  • 我們需要通過取對數來實現概率之積轉為概率之和 sum_ilnP(1)+sum_jlnP(0)
  • 我們可以根據數據標籤的0、1特性來把上式改為 frac{1}{m}sum_{i=1}^m(y*lnP(1)+(1-y)ln(0))

-這樣,我們通過極大似然來推導出了邏輯回歸的損失函數,同時極大似然是經驗風險最小化的一個特例。

② 結構風險最小化

-MAP她是結構風險最小化的例子。當模型是條件概率分布、損失函數是對數損失函數、模型複雜度由模型的先驗概率表示時,結構風險最小化就等價於最大後驗概率估計。 在這裡舉個推薦系統中的概率矩陣分解(PMF)的例子。

  • 先說下矩陣分解的原理:推薦系統的評分預測場景可看做是一個矩陣補全的遊戲,矩陣補全是推薦系統的任務,矩陣分解是其達到目的的手段。因此,矩陣分解是為了更好的完成矩陣補全任務(欲其補全,先其分解之)。之所以可以利用矩陣分解來完成矩陣補全的操作,那是因為基於這樣的假設-假設UI矩陣是低秩的,即在大千世界中,總會存在相似的人或物,即物以類聚,人以群分,然後我們可以利用兩個小矩陣相乘來還原評分大矩陣。
  • 它假設評分矩陣中的元素mathbf{R}_{ij}是由用戶潛在偏好向量mathbf{U}_i和物品潛在屬性向量mathbf{V}_j的內積決定的,並且服從均值為mathbf{U}_i^Tmathbf{V}_j,方差為sigma^2的正態分布: mathbf{R}_{ij} simmathcal{N}(mathbf{U}_i^Tmathbf{V}_j,sigma^2)
  • 則觀測到的評分矩陣條件概率為:

  • 同時,假設用戶偏好向量與物品偏好向量服從於均值都為0,方差分別為sigma^2_Umathbf{I},sigma^2_Vmathbf{I}的正態分布:

  • 根據最大後驗概率估計,可以得出隱變數 mathbf{U},mathbf{V} 的後驗概率為:

  • 接著,等式兩邊取對數 ln ,並且將正態分布展開後得到:

-這樣,我們通過最大後驗概率估計推導出了概率矩陣分解的損失函數。可以看出結構風險最小化是在經驗風險最小化的基礎上增加了模型參數的先驗。

MLE與MAP的聯繫

-在介紹經驗風險與結構風險最小化的時候以具體的邏輯回歸(LR)與概率矩陣分解(PMF)模型來介紹MLE和MAP,接下里從宏觀的角度,不局限於具體的某個模型來推導MLE與MAP。

-假設數據x_1, x_2, ..., x_n 是滿足獨立同分布(i.i.d.)的一組抽樣X = (x_1, x_2, ..., x_n),接下來就利用兩種參數估計方法來求解。

  • MLE對參數	heta的估計方法可以如下:

  • MAP對	heta的估計方法可以如下推導:

-所以MAP和MLE在優化時的不同就是在於增加了一個先驗項- log P(	heta)

-通過以上的分析可以大致給出他們之間的聯繫: MAP(	heta)approx MLE(	heta)+P(	heta)

參考資料

  • 《統計學習方法》 李航
  • 《機器學習》周志華
  • 聊一聊機器學習的MLE和MAP:最大似然估計和最大後驗估計
  • 最大似然估計和邏輯回歸
  • 渣君:最大似然估計和最小二乘法怎麼理解?

致謝

至此,頻率學派與貝葉斯派,MLE與MAP,經驗風險最小化與結構風險最小化的區別與聯繫已經介紹完畢了,由於本人不是數據專業出身的,並且也是機器學習初學者,難免在敘述或者思考的過程中有不嚴謹或者不正確的東西,希望大家批判的去看待。

再次感謝以上參考資料以及大牛們的分享。

推薦閱讀:

【技術必備】解讀 2016 年十大機器學習演算法及其應用
機器學習筆記五--正則化
大數據與機器學習(3)
文本分類:TextCNN / FastText / SVM / 貝葉斯
台大林軒田機器學習課第四講筆記:機器學習的可行性

TAG:機器學習 | 數據挖掘 | 人工智慧 |