臺灣大學林軒田機器學習基石課程學習筆記14 -- Regularization

臺灣大學林軒田機器學習基石課程學習筆記14 -- Regularization

image.png

上節課我們介紹了過擬合發生的原因並介紹瞭解決overfitting的簡單方法。本節課,我們將介紹解決overfitting的另一種非常重要的方法:Regularization規則化。

圖片 圖片

1. Regularized Hypothesis Set

圖片

先來看一個典型的overfitting的例子:

image.png

如圖所示,在數據量不夠大的情況下,如果我們使用一個高階多項式(圖中紅色曲線所示),例如10階,對目標函數(藍色曲線)進行擬合。擬合曲線波動很大,雖然Ein很小,但是Eout很大,也就造成了過擬合現象。


那麼如何對過擬合現象進行修正,使hypothesis更接近於target function呢?一種方法就是regularized fit。

image.png

這種方法得到的紅色fit曲線,要比overfit的紅色曲線平滑很多,更接近與目標函數,它的階數要更低一些。那麼問題就變成了我們要把高階(10階)的hypothesis sets轉換爲低階(2階)的hypothesis sets。通過下圖我們發現,不同階數的hypothesis存在如下包含關係:image.png

我們發現10階多項式hypothesis sets裏包含了2階多項式hypothesis sets的所有項,那麼在H10中加入一些限定條件,使它近似爲H2即可。這種函數近似曾被稱之爲不適定問題(ill-posed problem)。


如何從10階轉換爲2階呢?首先,H10可表示爲: image.png

而H2可表示爲:image.png

所以,如果限定條件是w3=w4=⋯=w10=0,那麼就有H2=H10。也就是說,對於高階的hypothesis,爲了防止過擬合,我們可以將其高階部分的權重w限制爲0,這樣,就相當於從高階的形式轉換爲低階,fit波形更加平滑,不容易發生過擬合。image.png

那有一個問題,令H10高階權重w爲0,爲什麼不直接使用H2呢?這樣做的目的是拓展我們的視野,爲即將討論的問題做準備。剛剛我們討論的限制是H10高階部分的權重w限制爲0,這是比較苛刻的一種限制。下面,我們把這個限制條件變得更寬鬆一點,即令任意8個權重w爲0,並不非要限定w3=w4=⋯=w10=0,這個Looser Constraint可以寫成: image.png

image.pngimage.pngimage.pngLooser Constraint對應的hypothesis應該更好解一些,但事實是sparse hypothesis set H2′被證明也是NP-hard,求解非常困難。所以,還要轉換爲另一種易於求解的限定條件。


那麼,我們尋找一種更容易求解的寬鬆的限定條件Softer Constraint,即:image.png

其中,C是常數,也就是說,所有的權重w的平方和的大小不超過C,我們把這種hypothesis sets記爲H(C)。image.png

2. Weight Decay Regularization

現在,針對H(c),即加上限定條件,我們的問題變成:image.png

我們的目的是計算Ein(w)Ein(w)的最小值,限定條件是||w2||≤C。這個限定條件從幾何角度上的意思是,權重w被限定在半徑爲√C的圓內,而球外的w都不符合要求,即便它是靠近Ein(w)梯度爲零的w。image.png

下面用一張圖來解釋在限定條件下,最小化Ein(w)的過程:image.png

image.png有了這個平行的概念,我們就得到了獲得最優解需要滿足的性質:image.png

上面公式中的λ稱爲Lagrange multiplier,是用來解有條件的最佳化問題常用的數學工具,2/N是方便後面公式推導。那麼我們的目標就變成了求解滿足上面公式的Wreg。


之前我們推導過,線性迴歸的EinEin的表達式爲:image.png

計算Ein梯度,並代入到平行條件中,得到:image.png

這是一個線性方程式,直接得到Wreg爲:image.pngimage.png

如果對於更一般的情況,例如邏輯迴歸問題中,∇Ein不是線性的,那麼將其代入平行條件中得到的就不是一個線性方程式,Wreg不易求解。下面我們從另一個角度來看一下平行等式:

該函數中第二項就是限定條件regularizer,也稱爲weight-decay regularization。我們把這個函數稱爲Augmented Error,即Eaug(w)。


如果λ不爲零,對應於加上了限定條件,若λ等於零,則對應於沒有任何限定條件,問題轉換成之前的最小化Ein(w)。


下面給出一個曲線擬合的例子,λλ取不同的值時,得到的曲線也不相同:image.png

從圖中可以看出,當λ=0時,發生了過擬合;當λ=0.0001時,擬合的效果很好;當λ=0.01和λ=1時,發生了欠擬合。我們可以把λ看成是一種penality,即對hypothesis複雜度的懲罰,λ越大,w就越小,對應於C值越小,即這種懲罰越大,擬合曲線就會越平滑,高階項就會削弱,容易發生欠擬合。λ一般取比較小的值就能達到良好的擬合效果,過大過小都有問題,但究竟取什麼值,要根據具體訓練數據和模型進行分析與調試。

image.png

事實上,這種regularization不僅可以用在多項式的hypothesis中,還可以應用在logistic regression等其他hypothesis中,都可以達到防止過擬合的效果。image.png

3. Regularization and VC Theory

下面我們研究一下Regularization與VC理論之間的關係。Augmented Error表達式如下:image.png

VC Bound表示爲:image.pngimage.pngimage.png

4. General Regularizers

那麼通用的Regularizers,即Ω(w),應該選擇什麼樣的形式呢?一般地,我們會朝着目標函數的方向進行選取。有三種方式:

    1. target-dependent

    2. plausible

    3. friendlyimage.png

其實這三種方法跟之前error measure類似,其也有三種方法:

    1. user-dependent

    2. plausible

    3. friendly


regularizer與error measure是機器學習模型設計中的重要步驟。image.png

接下來,介紹兩種Regularizer:L2和L1。L2 Regularizer一般比較通用,其形式如下:image.png

這種形式的regularizer計算的是w的平方和,是凸函數,比較平滑,易於微分,容易進行最優化計算。

L1 Regularizer的表達式如下:image.pngimage.pngimage.png

下面來看一下λ如何取值,首先,若stochastic noise不同,那麼一般情況下,λ取值有如下特點:image.png

從圖中可以看出,stochastic noise越大,λ越大。


另一種情況,不同的deterministic noise,λ取值有如下特點:image.png

從圖中可以看出,deterministic noise越大,λ越大。

以上兩種noise的情況下,都是noise越大,相應的λ也就越大。這也很好理解,如果在開車的情況下,路況也不好,即noise越多,那麼就越會踩剎車,這裏踩剎車指的就是regularization。但是大多數情況下,noise是不可知的,這種情況下如何選擇λ?這部分內容,我們下節課將會討論。

5. Summary

本節課主要介紹了Regularization。首先,原來的hypothesis set加上一些限制條件,就成了Regularized Hypothesis Set。加上限制條件之後,我們就可以把問題轉化爲Eaug最小化問題,即把w的平方加進去。這種過程,實際上回降低VC Dimension。最後,介紹regularization是通用的機器學習工具,設計方法通常包括target-dependent,plausible,friendly等等。下節課將介紹如何選取合適的λ來建立最佳擬合模型。



點擊“關注”,訂閱我的公衆號哦~


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章