到目前為止,我們已經學習了兩個演算法,包括線性回歸和邏輯回歸。在實際問題中,有可能會遇到過擬合問題,它會導致效果很差。這一節,我們介紹一下什麼是過擬合,以及解決過擬合問題的方法,正則化。
過擬合:如果我們有非常多的特徵,我們通過學習得到的假設可能能夠非常好地適應訓練集(代 價函式可能幾乎為 0),但是可能會不能推廣到新的資料。那麼你可能遇到了過擬合的問題。
如上圖所示,第乙個圖是乙個線性模型,欠擬合。不能很好的適應我們的訓練集。第三個模型是乙個四次方的模型,完全擬合我們的資料,過於強調擬合原始資料,丟失了演算法的本質。雖然可以很好的擬合我們給出的訓練資料,但是對於我們給出的檢驗資料卻會表現非常差,就是過擬合。中間的模型是最好的。
如上圖所示,x的次數越高,擬合的越好,但是相應的**能力可能會變差。
我們有兩個方法,乙個是手工去除一些特徵,或者使用演算法的幫助剔除不好的資料。另一種是保留所有的特徵,但是使用正則化,減小引數的大小。
上面問題中,我們的模型可能是:正則化的基本方法。我們決定要減小
修改以後的代價函式:
其中。經過處理之後與不經過處理得到的圖:
但是,如果你選擇的正則化引數過大,那麼就會把所有的引數都最小化了,導致模型變成了
所以對於正則化,我們要取乙個合理的 ? 的值,這樣才能更好的應用正則化。
正則化線性回歸的代價函式為:
我們在這個代價函式中不對
如果我們對上面的第二個式子進行簡化,那麼,我們可以得到:
從上邊我們可以看到,正則化以後的式子就是在原來演算法的基礎上令
同樣對於邏輯回歸,我們也給代價函式增加乙個正則化的表示式,得到代價函式:
通過求導,得出梯度下降演算法為:
注意其中的
吳恩達機器學習筆記4 正則化
1 多項式的例子 比如加1000 3 2 那麼為了使得下面這個加入懲罰項的式子min,就會盡量使得 3.4趨近於0,這就相當於由擬合的右圖的式子高次冪,變成了擬合為二次式。2 housing 例子 一般來說,取盡量小的值,會使得假設函式更加簡單,也會更易避免過擬合。上圖舉的例子多項式例子不同,我們並...
吳恩達機器學習(正則化)
圖1 是乙個線性模型,欠擬合或者叫做高偏差,不能很好地適應我們的訓練集 我們看看這些資料,很明顯,隨著房子面積增大,住房 的變化趨於穩定或者說越往右越平緩。因此線性回歸並沒有很好擬合訓練資料。圖2 恰當合適的擬合了資料 圖3 完美的擬合了訓練資料,稱之為過擬合或者叫做高方差,過於強調擬合原始資料,而...
吳恩達機器學習 學習筆記(過擬合 正則化)
1 underfitting 欠擬合 如果我們的假設函式是乙個一次函式,我們可能最後得到的是這樣的一條直線,很容易看出它的擬合效果不是很好,這種情況我們稱之為欠擬合。2 just right 擬合的很好 3 overfittiing 過擬合 如果我們給假設函式加入很多的高階項,最後得到的曲線會想盡一...