【機器學習基礎】正則化

引言

上一小節中,咱們介紹了過擬合的概念,在機器學習中最大的危險就是過擬合,爲了解決過擬合問題,一般有兩種辦法,第一是減小樣本的特徵(即維度),第二就是咱們這裏要說的「正則化」(又稱爲「懲罰」,penalty)。機器學習

從多項式變換和線性迴歸提及

在非線性變換小節中,咱們有討論Q次多項式變換的定義和其包含關係,這裏若是是10次多項式變換,那麼係數的個數是11個,而2次多項式的係數個數是3。從中咱們能夠看出,全部的2次多項式實際上是10次多項式加上一些限制,即w3=w4=...=w10=0。函數

clipboard.png

基於上面的討論,咱們但願能將二次多項式表示成十次多項式再加上一些約束條件,這一步的目的是但願能拓寬一下視野,在推導後面的問題的時候能容易一些。
這個過程,咱們首先要將二次多項式的係數w拓展到11維空間,加上w3=w4=...=w10=0這個條件獲得假設集合H2;而後爲了進一步化簡,咱們能夠將這個條件設置的寬鬆一點,即任意的8個wi爲0,只要其中有三個係數不爲0就行,獲得一組新的假設空間H2',但這個問題的求解是一個NP-hard的問題,還須要咱們修正一下;最後,咱們還須要將這個約束條件進一步修正一下獲得假設集合H(C),給係數的平方的加和指定一個上限,這個假設集合H(C)和H2'是有重合部分的,但不相等。
最後,咱們把H(C)所表明的假設集合稱爲正則化的假設集合。
下圖表示了這個約束條件的變化:學習

clipboard.png

正則化的迴歸問題的矩陣形式

clipboard.png

由上圖所示,咱們如今要求解的是在必定約束條件下求解最佳化問題,求解這個問題能夠用下面的圖形來描述。測試

clipboard.png

原本要求解Ein的梯度,至關於在一個橢圓藍色圈中求解梯度爲零的點,而下面這個圖表示,係數w在半徑是根號C的紅色球裏面(w須要知足的約束條件),求解藍色區域使得梯度最小的點。
那麼,最優解發生在梯度的反方向和w的法向量是平行的,即梯度在限制條件下不能再減少。咱們能夠用拉格朗日乘數的方法來求解這個w。spa

clipboard.png

clipboard.png

Ridge Regression

Ridge Regression是利用線性迴歸的矩陣形式來求解方程,獲得最佳解。.net

clipboard.png

Augmented Error

咱們要求解這個梯度加上w等於0的問題,等同於求解最小的Augmented Error,其中wTw這項被稱爲regularizer(正則項)。咱們經過求解Augmented Error,Eaug(w)來獲得迴歸的係數Wreg。這其實就是說,若是沒有正則項的時候(λ=0),咱們是求解最小的Ein問題,而如今有了一個正則項(λ>0),那麼就是求解最小的Eaug的問題了。代理

clipboard.png

不一樣的λ形成的結果

clipboard.png

從上圖能夠看出,當λ=0的時候就會發生過擬合的問題,當λ很小時(λ=0.0001),結果很接近理想的狀況,若是λ很大(λ=1),會發生欠擬合的現象。因此加一點正則化(λ很小)就能夠作到效果很好。blog

正則化和VC理論

咱們要解一個受限的訓練偏差Ein的問題,咱們將這個問題簡化成Augmented Error的問題來求解最小的Eaug。
原始的問題對應的是VC的保證是Eout要比Ein加上覆雜度的懲罰項(penalty of complexity)要小。而求解Eaug是間接地作到VC Bound,並無真正的限制在H(C)中。ip

vc_guarantee.jpg

wTw能夠當作是一個假設的複雜度,而VC Bound的Ω(H)表明的是整個假設集合有多麼的複雜(或者說有多少種選擇)。
這兩個問題都好像是計算一個問題的複雜度,咱們該怎麼聯繫着兩種複雜度的表示方式呢?其理解是,一個單獨的很複雜的多項式能夠看作在一類很複雜的假設集合中,因此Eaug能夠看作是Eout的一個代理人(proxy),這實際上是咱們運用一個比原來的Ein更好一點點代理人Eaug來貼近好的Eout。get

clipboard.png

通常性的正則項

L1 Regularizer

L1 Regularizer是用w的一範數來算,該形式是凸函數,但不是到處可微分的,因此它的最佳化問題會相對難解一些。
L1 Regularizer的最佳解經常出如今頂點上(頂點上的w只有不多的元素是非零的,因此也被稱爲稀疏解sparse solution),這樣在計算過程當中會比較快。

clipboard.png

L2 Regularizer

L2 Regularizer是凸函數,平滑可微分,因此其最佳化問題是好求解的。

clipboard.png

最優的λ

噪聲越多,λ應該越大。因爲噪聲是未知的,因此作選擇很重要,我將在下一小節中繼續接受有關參數λ選擇的問題。

總結

過擬合表如今訓練數據上的偏差很是小,而在測試數據上偏差反而增大。其緣由通常是模型過於複雜,過度得去擬合數據的噪聲和異常點。正則化則是對模型參數添加先驗,使得模型複雜度較小,對於噪聲以及outliers的輸入擾動相對較小。
正則化符合奧卡姆剃刀原理,在全部可能選擇的模型,可以很好的解釋已知數據而且十分簡單纔是最好的模型,也就是應該選擇的模型。從貝葉斯估計的角度看,正則化項對應於模型的先驗機率,能夠假設複雜的模型有較小的先驗機率,簡單的模型有較大的先驗機率。

參考資料

機器學習中的範數規則化之(一)L0、L1與L2範數
機器學習中的範數規則化之(二)核範數與規則項參數選擇


做者Jason Ding簡書主頁
原文地址【機器學習基礎】正則化

相關文章
相關標籤/搜索