吳恩達機器學習筆記(5)——正則化(Regularization)

一、過擬合問題(Overfitting)

我們知道,機器學習訓練的目的是爲了讓模型更好的擬合實際情況,從而指導我們進行預測。評價一個模型擬合度是否優良的參考之一是它與實際數據集的偏差程度,我們用代價函數來定量,一般代價函數越小越好。那麼,是否會有一些意外情況出現呢?

1、線性迴歸的情況:
在這裏插入圖片描述
對於圖中的數據集,分別使用了不同次數的多項式進行擬合:線性迴歸模型下,模型預測與數據集有一些差距,但是大方向是不錯的(欠擬合,underfit/high bias);二次多項式模型下,模型與數據集的偏差更小了,模型曲線光滑平整(ok);四次多項式模型下,模型與數據集完全對應上,沒有偏差,但是曲線歪曲,在大方向上似乎並不是特別準(過度擬合Overfit/high variance)。
PS:Overfitting: if we have too many features, the learned hypothesis may fit the training set very well(代價函數=0), but fail to generalize(泛化) to new examples.

2、邏輯迴歸:
在這裏插入圖片描述
同樣的,對於圖中的數據集擬合,一次多項式簡單地劃分了兩個類型,但是有對應不上的;二次多項式的擬合度更好,但是仍有偏差;四次多項式通過歪曲的形狀,成功地擬合了數據集中的數據。

3、那麼,爲什麼會出現這樣的情況呢?表象地看,原因可能是:

對於一個模型,理想的情況下,修正項越多的越精確(對於多項式來說,可以用級數展開來理解)。可是實際上擬合時,修正項越多,我們就需要越多的數據集進行訓練,否則沒法限制住θ的範圍(舉個極端的例子,想象一下你只有一個數據點,此時即使是最簡單的線性擬合也有無數種可能)。
由上述分析,我們可以由兩種解決方案:
人爲地或者通過模型選擇則算法來減少特徵量(修正項),雖然這會損失一些我們看來是“有作用”的特徵量。
正則化,這種方法能保留住所有的特徵量。
對於第一種方案,之後的課程中會學習,我們本章學習的是第二種。




二、正則化和代價函數

爲了避免過擬合問題,且又想保留所有的特徵量,這裏引入了正則化算法。
首先來看一個例子:
在這裏插入圖片描述
通過降低三次項和四次項權重,即令​θ3​和​θ4​很小,使得擬合模型在大方向上是“二次多項式”在發揮影響,這樣就取得了較好的效果。
因此,正則化的思想是:small values for parameters θ.
因爲一個較小的θ值說明這是一個更簡單的假設模型,也就更不容易過擬合。

實際應用中,我們無法知道哪一項需要懲罰,因此我們將每一項都加入優化中,得到新的代價函數,在原有的代價函數基礎上加入一個正則化項,λ是正則化參數:
在這裏插入圖片描述
PS:這裏求和是從θ1開始的,因爲θ0 對應的特徵量是1。




三、線性迴歸的正則化

1、梯度下降法的正則化:
在這裏插入圖片描述
PS:將​θ0​單獨分開是因爲其對應的特徵量是1,約定俗成不必正則化
整理後可得:
在這裏插入圖片描述

2、正規方程的正則化:
在這裏插入圖片描述
一般的,L是一個n+1維度的矩陣。




四、邏輯迴歸的正則化

梯度下降法的正則化
首先,邏輯迴歸的正則化代價函數如下:在這裏插入圖片描述
因此:在這裏插入圖片描述

PPS.第二次作業: ./就是對矩陣每個元素求倒數,(.^-1也可以); 正則化時​θ是從1開始的!!!!0不正則化!!!!

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