1. 程式人生 > >最大似然估計演算法(極大似然估計演算法)

最大似然估計演算法(極大似然估計演算法)

寫的很通俗易懂…….
最大似然估計提供了一種給定觀察資料來評估模型引數的方法,即:“模型已定,引數未知”。簡單而言,假設我們要統計全國人口的身高,首先假設這個身高服從服從正態分佈,但是該分佈的均值與方差未知。我們沒有人力與物力去統計全國每個人的身高,但是可以通過取樣,獲取部分人的身高,然後通過最大似然估計來獲取上述假設中的正態分佈的均值與方差。

最大似然估計中取樣需滿足一個很重要的假設,就是所有的取樣都是獨立同分布的。下面我們具體描述一下最大似然估計:

首先,假設為獨立同分布的取樣,θ為模型引數,f為我們所使用的模型,遵循我們上述的獨立同分布假設。引數為θ的模型f產生上述取樣可表示為

回到上面的“模型已定,引數未知”的說法,此時,我們已知的為,未知為θ,故似然定義為:

  在實際應用中常用的是兩邊取對數,得到公式如下:

  其中稱為對數似然,而稱為平均對數似然。而我們平時所稱的最大似然為最大的對數平均似然,即:

 舉個別人部落格中的例子,假如有一個罐子,裡面有黑白兩種顏色的球,數目多少不知,兩種顏色的比例也不知。我 們想知道罐中白球和黑球的比例,但我們不能把罐中的球全部拿出來數。現在我們可以每次任意從已經搖勻的罐中拿一個球出來,記錄球的顏色,然後把拿出來的球 再放回罐中。這個過程可以重複,我們可以用記錄的球的顏色來估計罐中黑白球的比例。假如在前面的一百次重複記錄中,有七十次是白球,請問罐中白球所佔的比例最有可能是多少?很多人馬上就有答案了:70%。而其後的理論支撐是什麼呢?

我們假設罐中白球的比例是p,那麼黑球的比例就是1-p。因為每抽一個球出來,在記錄顏色之後,我們把抽出的球放回了罐中並搖勻,所以每次抽出來的球的顏 色服從同一獨立分佈。這裡我們把一次抽出來球的顏色稱為一次抽樣。題目中在一百次抽樣中,七十次是白球的概率是P(Data | M),這裡Data是所有的資料,M是所給出的模型,表示每次抽出來的球是白色的概率為p。如果第一抽樣的結果記為x1,第二抽樣的結果記為x2... 那麼Data = (x1,x2,…,x100)。這樣,

    P(Data | M)

     = P(x1,x2,…,x100|M)

     = P(x1|M)P(x2|M)…P(x100|M)

     = p^70(1-p)^30.

那麼p在取什麼值的時候,P(Data |M)的值最大呢?將p^70(1-p)^30對p求導,並其等於零。

    70p^69(1-p)^30-p^70*30(1-p)^29=0。

    解方程可以得到p=0.7。

在邊界點p=0,1,P(Data|M)=0。所以當p=0.7時,P(Data|M)的值最大。這和我們常識中按抽樣中的比例來計算的結果是一樣的。

假如我們有一組連續變數的取樣值(x1,x2,…,xn),我們知道這組資料服從正態分佈,標準差已知。請問這個正態分佈的期望值為多少時,產生這個已有資料的概率最大?

    P(Data | M) = ?

根據公式

  可得:

  對μ求導可得 ,則最大似然估計的結果為μ=(x1+x2+…+xn)/n

  由上可知最大似然估計的一般求解過程:

  (1) 寫出似然函式;

  (2) 對似然函式取對數,並整理;

  (3) 求導數 ;

  (4) 解似然方程

注意:最大似然估計只考慮某個模型能產生某個給定觀察序列的概率。而未考慮該模型本身的概率。這點與貝葉斯估計區別。