在以前的一篇博客中L1正則化及其推導推導證實了L1正則化是如何使參數稀疏化人,而且提到過L1正則化若是從貝葉斯的觀點看來是Laplace先驗,事實上若是從貝葉斯的觀點,全部的正則化都是來自於對參數分佈的先驗。如今來看一下爲何Laplace先驗會導出L1正則化,也順便證實Gauss(高斯)先驗會導出L2正則化。html
不少人對最大似然估計不明白,用最簡單的線性迴歸的例子來講:若是有數據集\((X, Y)\),而且\(Y\)是有白噪聲(就是與測量獲得的\(Y\)與真實的\(Y_{real}\)有均值爲零的高斯分佈偏差),目的是用新產生的\(X\)來獲得\(Y\)。若是用線性模型來測量,那麼有:機器學習
\[ f(X) = \sum_i(x_i\theta_i) + \epsilon = X\theta^T + \epsilon \tag{1.1} \]函數
其中\(X=(x_1, x_2...x_n)\),\(\epsilon\)是白噪聲,即\(\epsilon \sim N(0, \delta^2)\)。那麼於一對數據集\((X_i, Y_i)\)來用,在這個模型中用\(X_i\)獲得\(Y_i\)的機率是\(Y_i \sim N(f(X_i), \delta^2)\):性能
\[ P(Y_i|X_i, \theta) = \frac{1}{\delta\sqrt{2\pi}} \exp(-\frac{\|f(X_i) - Y_i\|^2}{2\delta^2}) \tag{1.2} \]學習
假設數據集中每一對數據都是獨立的,那麼對於數據集來講由\(X\)獲得\(Y\)的機率是:spa
\[ P(Y|X,\theta)= \prod_i\frac{1}{\delta\sqrt{2\pi}} \exp(-\frac{\|f(X_i) - Y_i\|^2}{2\delta^2}) \tag{1.3} \]htm
根據決策論,就能夠知道可使機率\(P(Y|X,\theta)\)最大的參數\(\theta^*\)就是最好的參數。那麼咱們能夠直接獲得最大似然估計的最直觀理解:對於一個模型,調整參數\(\theta\),使得用X獲得Y的機率最大。那麼參數\(\theta\)就能夠由下式獲得:blog
\[ \begin {split} \theta^* &= argmax_{\theta} \left(\prod_i\frac{1}{\epsilon\sqrt{2\pi}} \exp(-\frac{\|f(X_i) - Y_i\|^2}{2\delta^2})\right) \cr &=argmax_{\theta} \left( -\frac{1}{2\delta^2} \sum_i \|f(X_i) - Y_i\|^2 + \sum_i ln(\delta\sqrt{2\pi}) \right) \cr &=argmin_{\theta} \left(\sum_i \|f(X_i) - Y_i\|^2 \right) \end {split} \tag{1.4} \]get
這個就是最小二乘計算公式。博客
Laplace機率密度函數分佈爲:
\[ f(x|\mu, b) = \frac{1}{2b} \exp(-\frac{|x-\mu|}{b}) \tag{2.1} \]
分佈的圖像以下所示:
能夠看到Laplace分佈集中在\(\mu\)附近,並且\(b\)越小,數據的分佈就越集中。
先驗的意思是對一種未知的東西的假設,好比說咱們看到一個正方體的骰子,那麼咱們會假設他的各個面朝上的機率都是\(1/6\),這個就是先驗。但事實上骰子的材質多是密度不均的,因此還要從數據集中學習到更接近現實狀況的機率。一樣,在機器學習中,咱們會根據一些已知的知識對參數的分佈進行必定的假設,這個就是先驗。有先驗的好處就是能夠在較小的數據集中有良好的泛化性能,固然這是在先驗分佈是接近真實分佈的狀況下獲得的了,從信息論的角度看,向系統加入了正確先驗這個信息,確定會提升系統的性能。咱們假設參數\(\theta\)是以下的Laplace分佈的,這就是Laplace先驗:
\[ P(\theta_i) = \frac{\lambda}{2} \exp(-\lambda|\theta_i|) \tag{3.1} \]
其中\(\lambda\)是控制參數\(\theta\)集中狀況的超參數,\(\lambda\)越大那麼參數的分佈就越集中在0附近。
在前面所說的最大似然估計事實上是假設了\(\theta\)是均勻分佈的,也就是\(P(\theta)=Constant\),咱們最大化的要後驗估計,便是:
\[ \begin {split} \theta^* &= argmax_{\theta} \left(\prod_i P(Y_i|X_i, \theta) \prod_i P(\theta_i)\right) \cr &=argmin_{\theta} \left(\sum_i \|f(X_i) - Y_i\|^2 + \sum_i \ln(P(\theta_i))\right) \end {split} \tag{3.2} \]
若是是Laplace先驗,將式\((3.1)\)代入到式\((3.2)\)中可得:
\[ \theta^* =argmin_{\theta} \left(\sum_i \|f(X_i) - Y_i\|^2 + \lambda \sum_i |\theta_i|)\right) \tag{3.3} \]
這就是由Laplace導出L1正則化,我在以前的一篇博客中L1正則化及其推導分析過\(\lambda\)越大,那麼參數的分佈就越集中在0附近,這個與Laplace先驗的分析是一致的。
到這裏,咱們能夠很輕易地導出L2正則化,假設參數\(\theta\)的分佈是符合如下的高斯分佈:
\[ P(\theta_i) = \frac{\lambda}{\sqrt{\pi}} \exp(-\lambda\|\theta_i\|^2) \tag{3.4} \]
代入式\((3.2)\)能夠直接獲得L2正則化:
\[ \theta^* =argmin_{\theta} \left(\sum_i \|f(X_i) - Y_i\|^2 + \lambda \sum_i \|\theta_i\|^2)\right) \tag{3.5} \]
【防止爬蟲轉載而致使的格式問題——連接】:
http://www.cnblogs.com/heguanyou/p/7688344.html