吳恩達機器學習 過擬合問題

2021-10-04 21:50:59 字數 1498 閱讀 2278

看到這篇文章的同學,我希望是已經學習了幾種不同的學習演算法,包括線性回歸和邏輯回歸,它們能夠有效地解決許多問題,但是當將它們應用到某些特定的機器學習應用時,會遇到過擬合(over-fitting)的問題,可能會導致它們效果很差。

如果我們有非常多的特徵,我們通過學習得到的假設可能能夠非常好地適應訓練集(代價函式可能幾乎為0),但是可能會不能推廣到新的資料。

下圖是乙個回歸問題的例子:

第乙個模型是乙個線性模型,欠擬合,不能很好地適應我們的訓練集;第三個模型是乙個四次方的模型,過於強調擬合原始資料,而丟失了演算法的本質:**新資料。我們可以看出,若給出乙個新的值使之**,它將表現的很差,是過擬合,雖然能非常好地適應我們的訓練集但在新輸入變數進行**時可能會效果不好;而中間的模型似乎最合適。

分類問題中也存在這樣的問題:

就以多項式理解, x的次數越高,擬合的越好,但相應的**的能力就可能變差。

問題是,如果我們發現了過擬合問題,應該如何處理?

1、丟棄一些不能幫助我們正確**的特徵。可以是手工選擇保留哪些特徵,或者使用一些模型選擇的演算法來幫忙(例如pca降維

2、正則化。 保留所有的特徵,但是減少引數的大小(magnitude)。

使用人工複檢變數清單,選擇哪些變數更重要,哪些變數需要保留,哪些變數需要捨棄。或者使用模型選擇演算法。

缺點:捨棄了一些特徵同時也捨棄了一些資訊,而這些特徵或許對問題都有用。比如:房價**,所有的特徵可能都對最後房價的結果有影響

上面的回歸問題中如果我們的模型是:

我們可以從之前的事例中看出,正是那些高次項導致了過擬合的產生,所以如果我們能讓這些高次項的係數接近於0的話,我們就能很好的擬合了。 所以我們要做的就是在一定程度上減小這些引數theta的值,這就是正則化的基本方法。我們決定要減少theta3和theta4的大小,我們要做的便是修改代價函式,在其中theta3和theta4設定一點懲罰。這樣做的話,我們在嘗試最小化代價時也需要將這個懲罰納入考慮中,並最終導致選擇較小一些的theta3和theta4。 修改後的代價函式如下:

通過這樣的代價函式選擇出的theta3和theta4對**結果的影響就比之前要小許多。假如我們有非常多的特徵,我們並不知道其中哪些特徵我們要懲罰,我們將對所有的特徵進行懲罰,並且讓代價函式最優化的軟體來選擇這些懲罰的程度。這樣的結果是得到了乙個較為簡單的能防止過擬合問題的假設:

其中入又稱為正則化引數(regularization parameter)。 注:根據慣例,我們不對theta0進行懲罰。經過正則化處理的模型與原模型的可能對比如下圖所示:

如果選擇的正則化引數入過大,則會把所有的引數都最小化了,導致模型變成

吳恩達機器學習 偏差與方差 欠擬合與過擬合

在吳恩達機器學習課程的第86課時中,講解了偏差和方差與欠擬合和過擬合的關係。1 偏差與方差的概念 先看下網上關於偏差與方差的例子。該例子可以理解為射擊打靶。偏差指的是多次射擊的平均環數與環心的偏差度,顯然上方的兩個圖的偏差較小,而下方兩圖偏離圓心較遠,偏差較大。方差指的是多次射擊的成績穩定狀態,顯然...

吳恩達機器學習 55過擬合問題 56代價函式

目前所學的學習演算法 線性回歸和邏輯回歸 一 過度擬合 例子 線性擬合 房價 欠擬合,具有高偏差 擬合的很好 過擬合,具有高方差 通常是變數太多,擬合出來的影象看起來很符合資料集,而且代價函式接近0,但是它無法泛化到新的資料集中 二 解決過度擬合 1 減少變數的數量 2 正則化 保留所有的特徵變數,...

吳恩達機器學習問題2

吳恩達課程中遇到的問題 第三週程式設計題 問題1 如果有大佬麻煩告知下 謝謝 就是為啥寫的 m,n size x 但是size x 是118 28,但是 m n 是 100 2?問題2 代價函式costfuction裡,為啥計算梯度grad的時候,明明公式是 最後乘的是x,但是 程式卻要寫成x 即x...