上節課,我們提到了過擬合是機器學習中最危險的事情。本節我們討論用 regularization 來抑制過擬合(一般課程將 regularization 翻譯為正則化,但是在《技法》中還將 regularization 用於其它抑制過擬合的手段)
圖 14.1
接這上節課的例子, 10-th 和 2-th 多項式都能很好的擬合測試資料。但是 10-th 多項式 hypothesis 是過擬合,我們就想著要從 h10 退回到低次 h。現在的問題是用什麼標準去決定回退 step-back?為了回答這個問題,我們先看下圖 14-1 的 nested hypothesis。
從圖 14.1 中可以看出 hn
+1 包含了 hn, 即 hn 是 hn+1 的子集。也就說是對於高次 hn, 低於n 次的 h 都是它的子集。舉個例子來說,就是 h2 = h10 with constraint, w3=w4=...=w10 = 0
如果 regularization 是讓 g 從 h10 step back 到 h2 ,那還不如直接用 h2 呢。我們現在修改 regularization 是讓非 0 的 w 的個數不超過 3。 這樣的好處是比 h2 靈活,比 h10 風險小。但是這個問題不容易解,我們可以換一下條件,如圖 14-2 所示
圖 14-2
這樣的話,圖 14-2 左邊和右邊的 h overlaps but not same!同事 h(c) 還有個乙個性質如圖 14-3 所示(只有 h(c) 是圖 14-2 中右圖時才成立)
圖 14-3
圖 14-4 目前要解決的問題
針對圖 14-4 所示的問題,我們先看圖 14-5。圖 14-4 的問題就類似一組等高線去切紅色圓圈。
圖 14-5
圖 14-6
如圖 14-6 所示,在 ein 和 圓的相交處。如果 ein 的梯度和圓法向量不是平行的,那麼 ein 的梯度必定有乙個圓切線向量方向上的分量。那麼 ein還能往圓切線向量方向走。最終得到如下的結論
$$ \nabla e_(w_ \varpropto w_)$$
公式 14-1
即$$ \nabla e_(w_) = \frac w_$$
公式 14-2
如果我們知道 λ(λ 大於0) 的值,我們就能解得上式的解。這就是統計學上的 嶺回歸(關鍵我不是統計學專業的)
圖 14-7
如果我們的解的不是線性回歸,是 logistic 回歸。我們就等於求解公式 14-3 的最小值。我們將公式 14-3 稱做為增廣誤差, wtw 為正則項
$$ e_(w) + \fracw_w$$
公式 14-3 增廣誤差
現在我們來看下 regularization 的效果,如果 圖 14-8 所示。可以加一點點 λ 能有效抑制過擬合,加很大的 λ 有可能導致欠擬合
圖 14-8 regularitzion effect
將 λ/n*wtw 稱為 weight-decay regularization !
這裡還有個小小的需要注意的地方, 假設輸出的 x 在 [-1, +1] 範圍內。高次方項的值很小,同時 regularization 會限制 whigh order 大小。這樣在模型中的高次方項等於0,不起作用。這個時候需要換下座標系,本節用的是勒讓德多項式
圖 14-9 勒讓德多項式
q1: 如果 x 的取值範圍屬於 [-10000, 10000] 呢? 又該怎麼辦?當初在第 12 節課就應該想到這個問題
我們來討論一下 regularization 和 vc 維理論的關係
$$ e_ = e_(w) + \fracw_w$$
公式 14-4 增廣誤差
$$ e_(w) \leq e_(w) + \omega(\mathcal(c))$$
公式 14-5 vc bound
eaug 要比 ein 更接近 eout, 所以minized eaug 的效果更好。 另外 eaug 中的正則化項也等於是剔除了一些 hypothesis,等於降低了 hypothesis 空間的 vc 維度,這樣的話 ein 和 eout 的差值也就越小
圖 14-10 another view of augmented error
首先, aumented error 中的正則化項是針對單一 hypothesis, vc bound 中的 ω 是對於整個 hypothesis 空間的概念。如果單一 hypothesis 能很好 replace ω,那麼
我們該如何設計更一般的 regularization 項? 林老師給出的自己的建議,如圖 14-11 所示
圖 14-11 設計 regularization 項建議
在第 2 小節中我們詳細的介紹了 用 wtw 作正則化項,在機器學習中將 wtw 正則化項稱之為 l2 正則化, ∑|wn| = c 正則化項位 l1 正則化。 這兩個的具體的區別如圖 14-12 所示
圖 14-12
還是沒有理解 為什麼 l1 正則化項會導致稀疏解!!
我們現在來看下 雜訊和正則化係數 λ 的關係,如圖 14-13 所示
圖 14-13
基本的結論是不論是 stochastic nosie or deterministic noise 都是 nosie 雜訊強度越大越需要正則化(不知道為什麼,沒有 nosie 時候 λ 為 0 的效果是最好。而且對於某個 noise level 而言, 一開始隨著 λ 的增大, out-sample error 會迅速下降最終達到乙個最佳值。然後隨著 λ 的增大, out-sample error 緩慢上公升,此時應該是發生欠擬合)。而且林老師給出的解釋無法讓我相信,居然能那麼完美地用開車的例子來模擬(怎麼看都像是機械的、形上學的 、blabla 的),如圖 14-14 所示
圖 14-14
最後貼上本章的總結
圖 14-15
q1: 不知道怎麼回答,已更新第 12 節課筆記
t1: 第三小節,沒怎麼看懂。按照自己的理解瞎寫一通~~
t2:根據第四節內容,更新第八節內容(關於 target-dependent、plausible、friendly的討論)
圖 14-16
機器學習基石筆記01
是非題,如何用電腦來解?給定使用者,銀行判斷是否要給他信用卡。使用者有很多個維度,年齡,薪水,工作年限,債務等,把維度綜合起來給他乙個分數,超過門限就給信用卡,否則不給信用卡,x x1,x2,x3,xd w w1,w2,w3,wd h x sign wixi 門限 sign wixi 門限 1 si...
機器學習基石筆記(三)
三 how can machines learn?第三節首先介紹了linear regression,線性可分的線性規劃是有analytic solution的,林老師給我們推了一下,關鍵就是矩陣化的處理,簡化了很多的工作 上面三幅圖是整個推導的過程,需要注意的是,最後的x不一定是可逆的,因為我們的...
《機器學習基石》筆記一 機器學習簡介
人類學習是從不斷的觀察獲得經驗的技能。機器學習是從資料出發,通過數 算等方式獲得經驗增強的技能。1 存在一些內部的規則 2 程式設計無法把這個規則定義出來 3 有充足的資料 輸入樣本空間 x x x x x x輸出樣本空間 y y y y y y目標函式 要學習出的模式 f x yf x longr...