MLE (最大似然) 與 LS (最小二乘) 與 MAP (最大後驗)
序言
最大似然估計 屬於機器學習中的常用的基礎思想,很多具體的演算法及模型都基於它建立,或者能夠基於它找到解釋,例如:
MLE 可以解釋為什麼常用的線性迴歸使用的是平方(即最小二乘法),而不是四次方
MLE 思想 與 MAP 思想的聯絡與區別;這關於機率統計領域 頻率學派 vs. 貝葉斯學派;還會涉及到對於機器學習中 Regularization 的理解;(MAP 與 貝葉斯估計,樸素貝葉斯分類器 乃至 Logistic Regression LR 都相關,這些內容其他文章再展開討論)
MLE 思想,被應用於機器學習十大演算法之一 EM演算法(期望最大化,K-means 實際上使用了 EM;EM 其他文章再展開討論)
本文將會詳細闡述 最大似然 的思想,並展開討論 LS 、MAP 與最大似然的關聯。 1. MLE 最大似然估計
MLE (Maximum Likelihood Estimation)
這裡首先解釋一個關鍵問題:likelihood 和 probability 的有什麼差別。根本來說,likelihood 是指一個反向過程,已知結果來反推模型或者假設,結果本身無意義,不同結果的比例才有意義;probability 是指一個正向過程,已知具體的模型參數,來推導不過結果的可能性,結果本身有機率意義。 1.1 問題定義(適用情境) 給定一組採樣(資料),他們都是從同一個分布(identically)中採樣,並且每次採樣的獨立的(即獨立事件,independently) 我們不知道其具體的分布,但是我們認為(推測)它屬於某個分布族,所以只需要確定具體參數即可,即 “模型已定,參數未知”
這時,最大似然估計 就可以用來估計模型參數,就是找出一組參數,使模型產出觀測資料的機率最大。例如,我們確定分布式高斯分布的話,我們的目標只是確認其均值和方差。
(上述定義中加粗的三個部分強調的 最大似然估計 非常強的三點假設) 1.2 似然函數
定義問題後,我們使用 似然函數(likelihood) 來定量地表示模型產出觀測資料的機率,可以理解為定量標識條件機率 p(X|θ) p(X|\theta),其中 θ \theta 是我們想估計的模型參數,而 X X 是已經觀測到的資料。似然函數準確定義如下:
L(θ;x1,x2,...,xn)=f(x1,x2,...,xn|θ)=∏i=1nf(xi|θ) L(\theta;x_1,x_2,...,x_n)=f(x_1,x_2,...,x_n|\theta)=\prod_{i=1}^n{f(x_i|\theta)}
我們通過模型的機率密度函數 f f 來表達 likelihood;例如 高斯分布的機率密度函數是 f(x|θ)=12π2−−−√exp(−(x−μ)22σ2) f(x|\theta)=\displaystyle\frac{1}{\sqrt{2\pi^2}} \exp(-\frac{(x-\mu)^2}{2\sigma^2}) 由於我們假設採樣是獨立的,所以我們可以把基於所有採樣的聯合機率,拆分為 n n 個獨立機率的積 實踐中,常採用對數似然函數,這樣在一些化簡上更加方便,且最大化時是等價的;稱為log-likelihood: ln(L)=∑ni=1f(xi|θ) ln(L)=\sum_{i=1}^nf(x_i|\theta) 1.3 最大似然估計
在定義問題且確定目標函數(似然函數)後,我們要做的就是最大化目標函數;也就是找到使模型產出觀測資料的機率最大的一組模型參數 θ^MLE \hat{\theta}_{MLE}: