小編邀請您,先思考:
-
過擬合怎麼理解?如何解決?
-
正則化怎麼理解?如何使用?
在機器學習中有時候會出現過擬合,為瞭解決過擬合問題,通常有兩種辦法,第一是減少樣本的特徵(即維度),第二就是我們這裡要說的“正則化”(又稱為“懲罰”,penalty)。
從多項式變換和線性回歸說起
在非線性變換小節中,我們有討論Q次多項式變換的定義和其包含關係,這裡如果是10次多項式變換,那麼繫數的個數是11個,而2次多項式的繫數個數是3。從中我們可以看出,所有的2次多項式其實是10次多項式加上一些限制,即w3=w4=…=w10=0。
基於上面的討論,我們希望能將二次多項式表示成十次多項式再加上一些約束條件,這一步的目的是希望能拓寬一下視野,在推導後面的問題的時候能容易一些。
這個過程,我們首先要將二次多項式的繫數w拓展到11維空間,加上w3=w4=…=w10=0這個條件得到假設集合H2;然後為了進一步化簡,我們可以將這個條件設定的寬鬆一點,即任意的8個wi為0,只要其中有三個繫數不為0就行,得到一組新的假設空間H2’,但這個問題的求解是一個NP-hard的問題,還需要我們修正一下;最後,我們還需要將這個約束條件進一步修正一下得到假設集合H(C),給繫數的平方的加和指定一個上限,這個假設集合H(C)和H2’是有重合部分的,但不相等。
最後,我們把H(C)所代表的假設集合稱為正則化的假設集合。
下圖表示了這個約束條件的變化:
正則化的回歸問題的矩陣形式
由上圖所示,我們現在要求解的是在一定約束條件下求解最佳化問題,求解這個問題可以用下麵的圖形來描述。
本來要求解Ein的梯度,相當於在一個橢圓藍色圈中求解梯度為零的點,而下麵這個圖表示,繫數w在半徑是根號C的紅色球裡面(w需要滿足的約束條件),求解藍色區域使得梯度最小的點。
那麼,最優解發生在梯度的反方向和w的法向量是平行的,即梯度在限制條件下不能再減小。我們可以用拉格朗日乘數的方法來求解這個w。
Ridge Regression
Ridge Regression是利用線性回歸的矩陣形式來求解方程,得到最佳解。
Augmented Error
我們要求解這個梯度加上w等於0的問題,等同於求解最小的Augmented Error,其中wTw這項被稱為regularizer(正則項)。我們透過求解Augmented Error,Eaug(w)來得到回歸的繫數Wreg。這其實就是說,如果沒有正則項的時候(λ=0),我們是求解最小的Ein問題,而現在有了一個正則項(λ>0),那麼就是求解最小的Eaug的問題了。
不同的λ造成的結果
從上圖可以看出,當λ=0的時候就會發生過擬合的問題,當λ很小時(λ=0.0001),結果很接近理想的情況,如果λ很大(λ=1),會發生欠擬合的現象。所以加一點正則化(λ很小)就可以做到效果很好。
正則化和VC理論
我們要解一個受限的訓練誤差Ein的問題,我們將這個問題簡化成Augmented Error的問題來求解最小的Eaug。
原始的問題對應的是VC的保證是Eout要比Ein加上複雜度的懲罰項(penalty of complexity)要小。而求解Eaug是間接地做到VC Bound,並沒有真正的限制在H(C)中。
wTw可以看成是一個假設的複雜度,而VC Bound的Ω(H)代表的是整個假設集合有多麼的複雜(或者說有多少種選擇)。
這兩個問題都好像是計算一個問題的複雜度,我們該怎麼聯絡著兩種複雜度的表示方式呢?其理解是,一個單獨的很複雜的多項式可以看做在一類很複雜的假設集合中,所以Eaug可以看做是Eout的一個代理人(proxy),這其實是我們運用一個比原來的Ein更好一點點代理人Eaug來貼近好的Eout。
一般性的正則項
L1 Regularizer
L1 Regularizer是用w的一範數來算,該形式是凸函式,但不是處處可微分的,所以它的最佳化問題會相對難解一些。
L1 Regularizer的最佳解常常出現在頂點上(頂點上的w只有很少的元素是非零的,所以也被稱為稀疏解sparse solution),這樣在計算過程中會比較快。
L2 Regularizer
L2 Regularizer是凸函式,平滑可微分,所以其最佳化問題是好求解的。
最優的λ
噪聲越多,λ應該越大。由於噪聲是未知的,所以做選擇很重要,我將在下一小節中繼續接受有關引數λ選擇的問題。
總結
過擬合表現在訓練資料上的誤差非常小,而在測試資料上誤差反而增大。其原因一般是模型過於複雜,過分得去擬合資料的噪聲和異常點。正則化則是對模型引數新增先驗,使得模型複雜度較小,對於噪聲以及outliers的輸入擾動相對較小。
正則化符合奧卡姆剃刀原理,在所有可能選擇的模型,能夠很好的解釋已知資料並且十分簡單才是最好的模型,也就是應該選擇的模型。從貝葉斯估計的角度看,正則化項對應於模型的先驗機率,可以假設複雜的模型有較小的先驗機率,簡單的模型有較大的先驗機率。
參考資料
機器學習中的範數規則化之(一)L0、L1與L2範數
http://blog.csdn.net/zouxy09/article/details/24971995
機器學習中的範數規則化之(二)核範數與規則項引數選擇
http://blog.csdn.net/zouxy09/article/details/24972869
作者Jason Ding
http://blog.csdn.net/jasonding1354/article/details/44006935#comments
親愛的讀者朋友們,您們有什麼想法,請點選【寫留言】按鈕,寫下您的留言。
資料人網(http://shujuren.org)誠邀各位資料人來平臺分享和傳播優質資料知識。
公眾號推薦:
好又樂書屋,分享有益處,有趣味的內容,傳播正能量。
閱讀原文,更多精彩!
分享是收穫,傳播是價值!