霸王柘科普 極大似然估計法(MLE)和似然值(Likelihood)

2021-02-15 平凡人的不平凡

「未經允許,禁止轉載」

 

【寫在前面】

 

當一些美國名校研究生院生物統計和計量經濟學類課程進行到中後期,不少同學發現課程當中引入了極大(最大)似然估計法和似然值(Likelihood)這兩個相對比較陌生的概念。但問題是,出於美國眾所周知的「素質教育」體系,除了數學類專業的研究生教學會涉及到這些統計學概念的本質,其餘學院的教學似乎都是停留在理解(interpretation)和解讀(presentation)這一層面。然而我一貫堅持,數學是一個嚴密的網絡,許多看起來不相關的知識點的背後都有著嚴謹的數學推導作橋梁,如果想要真正地學懂、學好、學通數學,適當加強對數學本質的理解尤為必要。但矛盾的是,並不是所有學生對數學本質都有著出眾的天賦和可觀的熱情,許多人愛數學,但是似乎數學並不愛他(她)。過去在當我為別人講解某一個數學知識點時,往往需要先為聽眾補充大量的「天書」一般的預備知識,這就使得許多同學懷有「數學之難,難於上青天」的感慨。所以在本節,我努力用最樸實的語言,最簡單的案例,來給讀者初步地講解極大似然估計法和似然值這兩個概念。

 

 

【預備知識】

 

如果事件A1, A2, … , An相互獨立,並記其概率分別為P(A1), P(A2), … , P(An),那麼新定義事件「A1、A2、…、An同時發生」的概率為P(A1A2…An) = P(A1)·P(A2)·…·P(An)。

在標準線性回歸分析中,我們有LINE四大先決假設:線性模型(Linear)、殘差獨立(Independent)、殘差正態(Normal)和方差(殘差)同質(齊性)(Equal)。

函數極大值(最大值)的求解法:偏微分(導數)。

二項分布的定義和概率計算式。

 

 

【極大似然估計法】

 

簡單來說,極大似然估計法的目的可以理解為「估計概率函數模型中的參數」。因此,概率(Probability)和極大似然估計(Maximum Likelihood Estimation, MLE)在定義和過程上恰恰互為對立面:概率是用已知的概率模型參數來求算目標事件發生的可能性,而極大似然估計則是用已觀察到的事件的概率反過來推測概率模型中的參數我們可以針對特定問題構造一個似然函數,其函數值是一個概率,表徵著實測值與模型預測值的吻合程度;這個函數通常把實際觀測值作為已知參數,把獨立於觀測值得參數作為待估計的未知參數,藉助數學方法計算出使得似然函數值最大的參數值,進而得到一個最可能使得實際觀測狀況發生的估計模型。

 

 

【案例1:不規則骰子的最大似然驗證】

 

如果是一枚質地均勻的骰子,那麼根據古典概型基本原則,投擲出6點的概率應當為1/6. 現在假設我們有三枚次品,通過之前的試驗結果得知骰子A擲出6點的概率為1/10,骰子B擲出6點的概率為1/8,骰子C擲出6點的概率為1/4。後來有實驗者用三枚次品中的其中一枚做了重複投擲100次的實驗,卻未記錄骰子的編號。實驗記錄顯示擲出6點的總次數為14次(記為事件X),我們可用通過「逐個分析」來推測該實驗者當時所使用究竟是哪一枚骰子。這裡,不均勻骰子擲出6點的概率,就是我們需要通過實際擲出6點的次數來估計的未知參數。

假設實驗者當時用的是骰子A,那麼他擲出14次6點的概率為:

假設實驗者當時用的是骰子B,那麼他擲出14次6點的概率為:

假設實驗者當時用的是骰子C,那麼他擲出14次6點的概率為:

其中,以下形式的函數即為此問題(模型)的似然函數,其值越大,就代表在當前參數下,已觀測到的目標事件發生的概率就越大:

根據以上三個計算結果,我們發現B骰子對應的似然值最大,我們因而「合理」推斷,當時該實驗者使用的應為骰子B(其實根據直觀,骰子B擲出6點的次數理論上為12.5,而該理論的次數和實際觀測到的14次最為接近)。

為什麼以上形式的函數是似然函數?怎樣針對特定問題構造似然函數?如果要解答這類問題,就我目前的知識儲備來看,需要用到「指數分布簇」(甚至一部分「泛函分析」)的知識,會佔用很大的篇幅,而且其背後的數學體系略顯龐大,故我在此文中暫時略去,有興趣的讀者可以和我私下交流,或不妨看看案例二(我本人並不確定是否有更簡單的通俗性解釋方法)。

 

 

【案例2:正態分布的極大似然估計】

 

案例一針對的是離散分布,案例二中我們不妨來看一看連續分布。大家最熟悉的連續分布當屬正態分布,所以我們以其作為研究模板加以解讀。

任何正態分布的密度函數都由兩個參數限定:μ和σ. 但是現在我們並不知道這兩個參數代表了什麼(我當然明白大家知道μ代表樣本均值,σ代表某標準差,但是現在假設我們不知道,我們要用極大似然估計去找到「最有可能的」,或者說「最合理」的這兩個參數)。

針對每一個觀測到的樣本值xi,其在正態分布中的密度值如下表示:

那麼此正態分布模型的似然函數是什麼呢?一般情況下,當各觀測之間相互獨立,且都來自同一總體(也即分布型一致時),由該觀測所服從的概率分布型所構造形成的似然函數為所有觀測值獨立分布(邊緣分布)的累積(聯合分布),一般記作F或L(中美兩國習慣不是太相同),如下所示:

其中,μ和σ是未知量,xi是常量。還是同樣的原則,我們要讓似然函數值最大。

當所有的xi都已知時,取什麼樣的μ和σ值能夠使得似然函數值最大呢?或者我這麼問:取什麼樣的自變量能夠使函數值最大呢?

一個我們在高中就已經掌握的強大的方法,便是求導!(記住,微積分永遠都是最重要的高數基礎!)

對於含有高次項的函數,直接求導不是非常方便。考慮到以上似然函數恆正且處處連續(可微),我們可以用對數微分法來使計算簡便化(關於對數微分法,請複習鏈式法則和隱式微分法):

累積式被轉化成三個部分的和,求導就容易多了!先對於μ求偏導:

極值點(駐點)的必要條件是偏導數為零:

通過一系列等價變換,我們可以得到:

很熟悉吧?對,就是均值!

我們再對σ求偏導:

同理:

所以我們不難得到:

也很熟悉吧?對,這就是觀測數據集的方差!

值得一提的是,極大似然估計法得到的方差估計量卻不是無偏估計量(無偏估計量的定義是該估計量的期望恆等於自身)。所以,極大似然估計雖作為一種很常用也很有用的估計方法,也有著莫大的局限性,在很多模型的估計中常常會有偏差,甚至出現反直觀的結果(這可能也是美國數學課程的主講教授不深入介紹MLE的原因,在我和他們的私下交流中,他們似乎並不看好這一套理論和方法)。因此,likelihood往往不單獨使用,而是結合其他的估計模型,聯合更多的信息為研究者提供參考。

 

 

【案例3:標準線性回歸模型數據實驗】

 

為了方便讀者更好地理解廣義回歸模型中給出的log likelihood指標(以及AIC),我自行設置了十個成對觀測,並且故意將殘差調成±1,力圖通過簡單可感的實際數據來解釋軟體內部隱含的計算過程。此模型的散點圖如下所示:

對應的線性回歸模型如下:

對於每一個觀測數據集中的自變量x,在線性擬合的方程下都必定存在一個估計得到的y,且一一對應。在線性回歸模型的殘差獨立性和方差齊性兩大先決條件的限制下,每一個估計得到的y都應該潛在地服從正態分布:

只不過因為觀測值數據集有限,此估計值的正態性往往很難直觀地體現,但是我們可以大體通過以下這幅圖來直觀地感受一下殘差齊性的涵義(這裡我偷懶了,直接引用Marie Diener-West和Karen Bandeen-Roche兩位教授的課程講稿來加以說明)。

 

因為每一個(xi,yi)都相互獨立,同時每一個yi又服從正態分布,所以由所有的xi貢獻而成的關於yi的似然函數即可按照如下的方式定義(可以理解為獨立事件的聯合概率模型):

這個案例和案例1、2不同的地方是,我們並沒有打算通過極大似然估計來找到最「合理」的均值和標準差,相反,我們已經通過最小二乘法得到了每一個觀測對應的均值和標準差。因此,這裡的似然函數(值)只是用來表徵「在通過最小二乘法得到的回歸模型下,觀測到實際觀測值的可能性大小」,這個可能性越大,也就意味著對應的回歸模型的擬合效果更好(換句話說,likelihood更適合用於模型之間擬合優良程度的比較)。所以,此回歸模型的似然值,就是將所有的y觀測值與y預測值配對帶入上式計算得到的結果。

最後一個問題,這裡的σ是什麼?或者問,這裡的σ是多少?

在標準回歸模型中,我們可以通過Stata軟體提供的回歸診斷表中得到一個MSE和Root MSE,並且定義MSE為自由度校準下由非線性模型因素造成的波動(方差)由每一個自變量所承擔的均值,即模型殘差平方的近似均值(在ANOVA的跟進分析Bonferroni檢驗中我們假定σ2 = MSE),而RootMSE為MSE的二次根方,即所有自變量造成的殘差的平均波動的等量綱數值——也就是散點圖上所有散點偏離預測值的縱向平均距離(個人認為Root MSE是一個完全不亞於R2的用於檢驗模型擬合度的高含金量指標)。

不過,在似然函數中,Root MSE不可以直接當作σ來使用。為什麼呢?請回到定義!此處σ是每一個y預測值的波動,因為獨立性而無視其他y的存在,自然也就不存在自由度的校正!

所以,很簡單,此處的σ就是:

返璞歸真,葉落歸根,我們又回到了最原始的標準差的定義——出現在初中一年級課本中的有偏估計的標準差!

故此,在此模型中,n = 10,σ2 = 1,σ = 1.

現在可以高枕無憂地計算此回歸模型的似然值了:

由於對稱性,其餘九個y估計值對應的單個正態分布密度函數值均為0.2420. 所以,似然值應為:

 

同時,對數似然值為:

我們來比對一下Stata給出的結果:

我相信大家已經豁然開朗了!

【結語】

末尾,補充一點,在廣義線性回歸模型中,likelihood是連接最小二乘估計(Optimal Least Square, OLS)和赤池信息準則(Akaike Information Criteria, AIC)的必要橋梁。仔細的大家不妨回想一下課堂上教授所給出的不使用似然值來計算AIC的公式,是不是發現了什麼呢?如果你對概率論初步和初級一元統計學爛熟於心,那麼每當看到統計學公式中有 π 出現,心中對其根源的猜測應該十有八九了吧!這就是數感——數學的素養,與君共勉。

相關焦點

  • 極大似然估計法的理解指南
    01什麼是極大似然估計法極大似然估計是 1821 年由高斯提出,1912 年由費希爾完善的一種點估計方法。通俗來說,極大似然估計法其實源自生活的點點滴滴,比方說有一個大學生他天天上課不聽講,天天上課玩手機,老師盯著他看了老半天,他也不知道收斂一些,那通過老師幾十年的教學經驗的判斷,這小子期末一定是掛科的,果不其然,他真的掛科了。老師以過去大量的相同事件來判斷目前正在發生的類似事件,這就是極大似然。
  • 最大似然法估計正態分布參數
    最大似然估計定義最大似然估計(maximum likelihood)就是利用已知的樣本結果,反推最具有可能(最大概率)導致這些樣本結果出現的模型參數值。換句話說,極大似然估計提供了一種給定觀察數據來評估模型參數的方法,即「模型已定,參數未知」。
  • 極大似然估計詳解
    這裡就將概率密度估計問題轉化為參數估計問題,極大似然估計就是一種參數估計方法。當然了,概率密度函數的選取很重要,模型正確,在樣本區域無窮時,我們會得到較準確的估計值,如果模型都錯了,那估計半天的參數,肯定也沒啥意義了。重要前提        上面說到,參數估計問題只是實際問題求解過程中的一種簡化方法(由於直接估計類條件概率密度函數很困難)。
  • 什麼是極大似然估計?
    在機器學習中,邏輯回歸就是基於極大似然估計來計算的損失函數。那麼,如何直觀理解極大似然估計?極大似然估計(maximum likelihood estimation,MLE),顧名思義,「極大」意為「最有可能的」,「似然」意為「看起來像的」,「估計」的意思則可以理解為「就是這樣的」。
  • 一文讀懂矩估計、極大似然估計和貝葉斯估計
    參數估計最主要的方法包括矩估計法,極大似然估計法,以及貝葉斯估計法。機器學習中常常使用的是極大似然估計法和貝葉斯估計法。極大似然估計法簡稱MLE(Maximum Likelihood Estimation).
  • 一文通俗解釋極大似然估計
    針對上述問題, 極大似然估計為我們提供了一種很好的解決思路,本文將給大家解釋極大似然估計的原理和分析步驟。請注意,小編在這裡不是自戀,而是運用了嚴謹的數學分析來討論這個問題的本質,使用的分析方法就是極大似然估計法。因為導致上述事件發生概率最大的模型參數就是該女同學暗戀小編。最後,不同大家動手,我自己能醒過來。下面小編舉幾個正經的例子,大家熟悉的拋硬幣問題,為了嚴謹起見,我們事先假設硬幣的正反面輕重不同,所以拋一次得到正反面的概率不同。
  • 似然比檢驗 - CSDN
    關於似然函數,可以參考: 似然與極大似然估計似然函數及最大似然估計及似然比檢驗 似然比檢驗LRT的應用廣泛,包括:均值(包括均值向量)的比較、重複度量 和 體重 增加模型參數必定會導致高似然值成績。因此根據似然值的高低來判斷模型的適合度是不準確的。LRT提供了一個客觀的標準來選擇合適的模型。LRT檢驗的公式: LR = 2*(InL1- InL2)其中L1為複雜模型最大似然值,L2為簡單標準模型最大似然值LR近似的符合卡方分布。為了檢驗兩個模型似然值的差異是否顯著,我們必須要考慮自由度。
  • 獨家 | 一文讀懂最大似然估計(附R代碼)
    為解決這一逆向問題,我們通過逆轉f(x=θ)中數據向量x和(分布)參數向量θ來定義似然函數,即:L(θ;x) = f(x| θ)在MLE中,可以假定我們有一個似然函數L(θ;x),其中θ是分布參數向量,x是觀測集。我們感興趣的是尋找具有給定觀測值(x值)的最大可能性的θ值。
  • 詳解最大似然估計(MLE)、最大後驗概率估計(MAP),以及貝葉斯公式的理解
    最大似然估計(Maximum likelihood estimation, 簡稱MLE)和最大後驗概率估計(Maximum a posteriori
  • 何為似然函數?
    似然和概率在統計學中是經常見到的兩個術語,有時候這兩個概念是一個意思,有時候卻有很大區別。這裡梳理下這兩個術語所代表的具體含義。      wiki中關於「似然」和「概率」的解釋     在頻率推論中,似然函數(常常簡稱為似然)是一個在給定了數據以及模型中關於參數的函數。在非正式情況下,「似然」通常被用作「概率」的同義詞。
  • 提前一年的押題——最大似然估計
    今天要給大家講的,是統計學中的一個核心理念,也是考研數學中的一個核心考點,核心到,我起了個驚悚的標題「提前一年的押題——最大似然估計」,因為自09年起,09、11、12、13、14、15、17、18、19、20年考試中,均出現了本考點,就在試卷第23題,想必倒過來說大家更容易印象深刻,除了10年和16年,年年都考了。
  • 【康普森GS專欄】混合線性模型系列之三:似然函數
    2.2 聯合密度的似然函數當n個觀測值相互獨立,他們的似然函數(等價於聯合密度函數)為:It can be useful in cases where optim() is used inside other functions where only method can be specified, such as in mle from package stats4.
  • 通俗理解系列 | 極大似然估計
    極大似然估計是一種機器學習領域的重要思想,是一種參數估計的算法。該算法理論思想意義重於實際應用。在真實的應用中,多是參考其思想進行拓展的。
  • [257]先驗概率、似然函數與後驗概率(1)
    這是對不確定性(而不是隨機性)賦予一個量化的數值的表徵,這個量化數值可以是一個參數,或者是一個潛在的變量。 先驗概率僅僅依賴於主觀上的經驗估計,也就是事先根據已有的知識的推斷, 在應用貝葉斯理論時,通常將先驗概率乘以似然函數(likelihoodfunction)再歸一化後,得到後驗概率分布,後驗概率分布即在已知給定的數據後,對不確定性的條件分布。
  • 零基礎概率論入門:最大似然估計
    最大似然估計是一個決定模型參數值的方法。參數值的選定最大化模型描述的過程的結果與數據實際觀測所得的似然。以上的定義可能仍然比較晦澀,所以讓我們通過一個例子來理解這一概念。假定我們從某一過程中觀測到了10個數據點。例如,每個數據點可能表示一個學生回答一道考題的時長。
  • 從最大似然估計開始,你需要打下的機器學習基石
    最大似然估計的直觀解釋最大似然估計是一種確定模型參數值的方法。確定參數值的過程,是找到能最大化模型產生真實觀察數據可能性的那一組參數。這些參數的不同值會對應不同的曲線(就像上面的直線一樣)。我們想知道「哪條曲線最可能產生我們觀察到的數據點」?(見下圖)。用最大似然估計法,我們會找到與數據擬合得最好的 μ、σ 的值。10 個數據點和可能得出這些數據的高斯分布。
  • 【機器學習基本理論】詳解最大似然估計(MLE)、最大後驗概率估計(MAP),以及貝葉斯公式的理解
    最大似然估計(Maximum likelihood estimation, 簡稱MLE)和最大後驗概率估計(Maximum a posteriori estimation, 簡稱MAP)是很常用的兩種參數估計方法,如果不理解這兩種方法的思路,很容易弄混它們。下文將詳細說明MLE和MAP的思路與區別。先講解MLE的相應知識。
  • 從最大似然到EM算法淺解
    這個例子所作的推斷就體現了極大似然法的基本思想。再例如:下課了,一群男女同學分別去廁所了。然後,你閒著無聊,想知道課間是男生上廁所的人多還是女生上廁所的人比較多,然後你就跑去蹲在男廁和女廁的門口。蹲了五分鐘,突然一個美女走出來,你狂喜,跑過來告訴我,課間女生上廁所的人比較多,你要不相信你可以進去數數。呵呵,我才沒那麼蠢跑進去數呢,到時還不得上頭條。我問你是怎麼知道的。
  • 最小二乘法原理(中):似然函數求權重參數
    ,它能使得事件儘可能地逼近樣本值,這就是最大似然估計。似然估計本質本質便是根據已有的大量樣本(實際上就是利用已知的條件)來推斷事件本身的一些屬性參數的方法,最大估計更是最能反映這些出現的樣本的,所以這個參數值也是最可靠和讓人信任的,得到這個參數值後,等來了一個新樣本 X(i+1) 後,我們可以預測它的標籤值。
  • R語言:Newton法、似然函數
    hello,大家好,上一篇分享了如何用R語言實現蒙特卡洛模擬,並用蒙特卡洛模擬計算了分布的均值和方差,今天給大家分享如何用R語言來進行矩估計和似然函數的求解。因為在求解矩估計和似然函數時,可能會遇到非線性方程組,所以先給大家介紹一下如何用Newton法來求解非線性方程組。