1. 程式人生 > >深入淺出極大似然估計法

深入淺出極大似然估計法

之前多次接觸極大似然估計,一直沒有透徹的理解清楚,下午特意抽空查閱資料,整理成一篇較為通俗易懂的博文。

概念
  “似然” ( likelihood )可以通俗的理解成 ”像是這樣“ ,意思為 ”事件(觀察資料)發生的可能性“,”極大似然估計“ 就是要找到一個估計值,使得 ”事件發生的可能性“ 最大。

舉個例子
黑白球
  如圖,有兩個外形完全相同的箱子。甲箱中有99個白球1個黑球,乙箱中有99個黑球1個白球。一次試驗,取出的是黑球。 那麼這個黑球最像是從哪個箱子取出的?大多數人都會說,這個黑球最像是從乙箱中取出的,這個推斷符合人們的經驗,即為“最大似然”。

總結來說,最大似然估計 假設模型是確定的,然後利用抽取的樣本結果,反推最大概率導致這樣結果的模型引數值,即:“模型已定,引數未知”。

因此,樣本結果的概率(即事件發生的可能性),是一個帶模型引數的似然函式。最大似然估計法的目標就是最大化似然函式,用最優化演算法求解 導致樣本結果概率最大的引數值。

極大似然估計的描述
  極大似然估計中取樣需滿足一個很重要的假設,就是所有的取樣都是獨立同分布的。

首先,假設$ x_1,x_2,…,x_n$為獨立同分布的取樣,θ為模型引數, f 為所使用的模型。因此,產生上述取樣結果的概率可表示為:

f ( x

1 , x 2 , . . . ,
x n θ ) = f ( x 1 θ ) f ( x 2 θ ) . . . , f ( x n θ ) f(x_1,x_2,...,x_n|\theta) = f(x_1|\theta)*f(x_2|\theta)...,f(x_n|\theta)

由於極大似然估計法中,我們已知的為$ x_1,x_2,…,x_n$,未知為θ,故似然函式定義為:

L ( θ x 1 , . . . , x n ) = f ( x 1 , . . . , x n θ ) = i = 1 n f ( x i θ ) L(\theta|x_1,...,x_n) = f(x_1,...,x_n|\theta)=\prod_{i=1}^{n}f(x_i|\theta)

兩邊取對數,得到對數似然,公式為:

l n L ( θ x 1 , . . . , x n ) = l n i = 1 n f ( x i θ ) = i = 1 n l n f ( x i θ ) ln L(\theta|x_1,...,x_n) = ln \prod_{i=1}^{n}f(x_i|\theta) = \sum_{i=1}^nln f(x_i|\theta)

最大似然估計法最常用的為對數平均似然,公式為:

l ^ = 1 n ln L ( θ x 1 , . . . , x n ) \hat{l} = \frac1{n}\ln L(\theta|x_1,...,x_n)

因此最大似然估計法就是 最大化似然函式求引數值,即:

θ ^ m l e = a r g m a x θ Θ l ^ ( θ x 1 , . . . , x n ) \hat{\theta}_{mle} = argmax_{\theta\in\Theta} \hat{l}(\theta|x_1,...,x_n)

極大似然估計的例子
  我們假設已知的模型為正態分佈 N ( μ , σ 2 ) N(\mu,\sigma^2) ,則似然函式為:

L ( μ , σ 2 ) = i = 1 n f ( x i θ ) = i = 1 n 1 2 π σ e ( x i μ ) 2 2 σ 2 = ( 2 π σ 2 ) n 2 e 1 2 σ 2 i = 1 n ( x i μ ) 2 L(\mu,\sigma^2)=\prod_{i=1}^{n}f(x_i|\theta)=\prod_{i=1}^{n}\frac{1}{\sqrt{2\pi}\sigma}e^{-\frac{(x_i-\mu)^2}{2\sigma^2}} =(2\pi\sigma^2)^{-\frac{n}{2}}e^{-\frac1{2\sigma^2}\sum_{i=1}^n(x_i-\mu)^2}

兩邊取對數,得對數似然函式為:

l n L ( μ , σ 2 ) = n 2 l n ( 2 π ) n 2 l n ( σ 2 ) 1 2 σ 2 i = 1 n ( x i μ ) 2 ln L(\mu,\sigma^2)=-\frac{n}{2}ln(2\pi)-\frac{n}{2}ln(\sigma^2)-\frac1{2\sigma^2}\sum_{i=1}^n(x_i-\mu)^2