機器學習高方差和高偏差問題

2021-08-18 20:39:17 字數 2023 閱讀 1037

在講模型高方差和高偏差問題前,先聊聊資料集分配和模型選擇。為了使得模型具有更好的泛化能力,我們在資料集分配問題上採用了6:2:2的分配原則,60%作為訓練集,20%作為交叉驗證集,20%作為測試集。當選擇模型時用訓練集訓練得到模型的一組權重,將這組權重帶入到模型中,並用交叉驗證集求出損失值,選取損失值最小的那乙個模型,最後就可用從未和模型擬合過的測試集計算學習演算法誤差。

接下來我們一起**一下模型的高偏差和高方差問題。

如上圖是吳恩達課程中的一組,第一幅圖是模型出現了高偏差(欠擬合),第二幅圖是最佳的模型,第三幅圖模型出現了高方差(過擬合),機器學中的欠擬合和過擬合對模型的精度都沒有幫助,因此歸納一下可以從一下幾個方面解決過擬合和欠擬合問題:

當模型出現高偏差時:

當模型出現高方差時:

當了解了高偏差和高方差的含義以及解決方式,接下來如何判斷模型處於高方差還是處於高偏差,以及這兩種情況能有效的指導更好的改善模型,這就需要學習曲線的幫助。

從上述這幅圖中可以看到,橫座標是多項式的次數,縱座標是誤差,可以看出粉紅色線為訓練誤差隨著多項式次數的增加越來越小,大紅色線為交叉驗證集誤差曲線,類似於二次函式曲線,在曲線圖左邊,訓練集誤差和驗證集誤差均很大,說明訓練集和驗證集均擬合的不是很佳,因此處於欠擬合狀態即(高偏差),在最右邊,訓練集擬合的很好,但是驗證集誤差很大,說明模型的泛化能力很差,只認識看到過的資料集,不認識沒看到的資料集說明處於模型處於高方差問題。因此通過該條曲線可以大概選擇出最佳的多項式次數。

在上述解決辦法中提到了修改lamda值可以解決高偏差高方差問題,下圖即是lamda值和兩者之間的關係,

在實際的cost function函式中是沒有正則化項,但是為了防止過擬合而加入了正則化項,目的是降低多項式中的權重(見以下兩個公式),以使得模型變得簡單,

因此對於lamda越大針對訓練集擬合的越差因此訓練集誤差會上公升,而驗證集一開始下降後來上公升,lamda越大會使得模型變得簡單容易出現欠擬合,lamda越小會使得模型出現過擬合,因此對於高偏差可以降低lamda值使模型變得複雜,對於高方差可以增加lamda值使模型每一項權重降低從而變得簡單。

最後一組曲線是資料集的大小對高偏差和高方差的影響:

隨著資料集的增加,模型的擬合越來越困難,因此訓練集誤差會有所上公升,而對於驗證集,隨著資料的增加,模型的泛化能力越來越強,驗證集誤差會有所下降。但是驗證集誤差值不會低於訓練集,因為訓練集是模型能見到的資料,而驗證集對模型來說是新資料。

對於高偏差問題,說明模型存在欠擬合,當資料集增加的時候訓練集誤差一定會上公升,因為模型欠擬合,資料集增多,模型還是擬合很困難,但是在改善,因此驗證集會有所下降,但是最後的誤差都會很大,而且訓練集誤差和驗證集誤差會很相近並且數值很大,因此對於高偏差增加資料集會徒勞無用。

針對高方差問題,模型對於訓練集擬合的很好,但是泛化能力太差,因此驗證集和訓練集的誤差值會增加,但是隨著資料集的增加,模型越來越困難擬合每乙個點,提高一定的泛化能力,最後會使得驗證集和訓練集誤差慢慢接近,因此針對高方差問題可以增加資料集提高模型泛化能力。

因此通過學習曲線可以有效指導我們正確改善模型效能的方向,大大節約時間。

高偏差和高方差

首先我來介紹一下高方差和高偏差的概念,可能很多人理解的不是很清楚。偏差 是指乙個模型的在不同訓練集上的平均效能和最優模型的差異。偏差可以用來衡量乙個模型的擬合能力。偏差越大,值平均效能越偏離最優模型。偏差衡量模型的 能力,物件是乙個在不同訓練集上模型,形容這個模型平均效能對最優模型的 能力。方差 v...

高方差和高偏差

1.高方差和高偏差 偏差 描述的是 值 估計值 的期望與真實值之間的差距。偏差越大,越偏離真實資料集。方差 描述的是 值的變化範圍,離散程度,也就是離其期望值的距離。方差越大,結果資料的分布越散。理解偏差和方差 bias variance 的兩個關鍵資料是訓練集誤差 train set error ...

高方差與高偏差學習筆記

error bias variance。這裡的error大概可以理解為模型的 錯誤率,是有兩部分組成的,一部分是由於模型太簡單而帶來的估計不準確的部分 bias 樸素貝葉斯是高偏差低方差的演算法 另一部分是由於模型太複雜而帶來的更大的變化空間和不確定性 variance error反映的是整個模型的...