機器學(xué)習(xí)是一個復(fù)雜的領(lǐng)域,其最大的挑戰(zhàn)之一是構(gòu)建可以預(yù)測新數(shù)據(jù)結(jié)果的模型。構(gòu)建一個完全擬合訓(xùn)練數(shù)據(jù)的模型很容易,但真正的考驗是它是否可以準(zhǔn)確預(yù)測新數(shù)據(jù)的結(jié)果。
本文深入探討了過擬合和泛化的概念,并探討了它們與偏差與方差權(quán)衡的關(guān)系。我們還將討論避免過度擬合和在模型中找到偏差和方差之間最佳平衡的技術(shù)。
過擬合
在機器學(xué)習(xí)中,過度擬合是當(dāng)模型變得過于復(fù)雜并開始過于接近訓(xùn)練數(shù)據(jù)時發(fā)生的常見問題。這意味著該模型可能無法很好地推廣到新的、看不見的數(shù)據(jù),因為它基本上記住了訓(xùn)練數(shù)據(jù),而不是真正學(xué)習(xí)底層模式或關(guān)系。用技術(shù)術(shù)語來說,考慮一個回歸模型,它需要線性關(guān)系,而是使用多項式表示。
當(dāng)模型太擅長從訓(xùn)練數(shù)據(jù)中學(xué)習(xí),但不擅長泛化到新數(shù)據(jù)時,就會發(fā)生過度擬合。這可能是深度學(xué)習(xí)模型的一個特殊問題,深度學(xué)習(xí)模型有許多參數(shù)可以調(diào)整以適應(yīng)訓(xùn)練數(shù)據(jù)。
欠擬合
欠擬合與機器學(xué)習(xí)中的過擬合相反。在欠擬合的情況下(見下圖最左邊的圖表),我們基本上指的是模型對于手頭的任務(wù)來說太簡單的情況。換句話說,模型沒有必要的復(fù)雜性來捕獲數(shù)據(jù)中的基礎(chǔ)模式。在技術(shù)術(shù)語中,考慮一個回歸模型,它需要一個多項式方程,而是使用線性關(guān)系表示。
考慮欠擬合的另一種方法是考慮預(yù)測房價的例子。如果我們要創(chuàng)建一個僅考慮房屋大小而忽略其他重要因素(如臥室數(shù)量)的模型,那么該模型可能會欠擬合數(shù)據(jù)。發(fā)生這種情況是因為模型沒有考慮所有相關(guān)信息,因此無法準(zhǔn)確預(yù)測房價。
欠擬合模型往往具有高偏差和低方差,這意味著它在訓(xùn)練和測試數(shù)據(jù)中都會犯很多錯誤。這是因為模型無法捕獲數(shù)據(jù)之間的關(guān)系,因此無法做出準(zhǔn)確的預(yù)測。
金發(fā)姑娘區(qū)和最佳模型復(fù)雜性
最佳模型復(fù)雜性是機器學(xué)習(xí)模型既不太簡單也不太復(fù)雜,但恰到好處地適合它正在處理的數(shù)據(jù)的最佳點。如果模型過于簡單,它可能無法捕獲數(shù)據(jù)中的所有重要模式和關(guān)系,并可能導(dǎo)致欠擬合。另一方面,如果模型太復(fù)雜,它可能會開始記住訓(xùn)練數(shù)據(jù),而不是學(xué)習(xí)底層模式,這可能導(dǎo)致過度擬合。
找到最佳模型復(fù)雜性的目標(biāo)是在模型擬合和模型復(fù)雜性之間取得平衡,其中模型足夠簡單,可以很好地推廣到新數(shù)據(jù),但又足夠復(fù)雜,可以捕獲訓(xùn)練數(shù)據(jù)中的重要模式。
在本文的其余部分,我們將重點介紹可用于找到最佳模型復(fù)雜性的不同技術(shù),例如從簡單模型開始并逐漸增加其復(fù)雜叉驗證以評估不同數(shù)據(jù)子集上的模型,以及使用正則化技術(shù)來防止過度擬合。
但首先,讓我們首先解釋機器學(xué)習(xí)中兩個非常重要的概念,即偏差和方差。
機器學(xué)習(xí)中的偏差和方差之間的差異
想象一下,嘗試創(chuàng)建一個模型來根據(jù)房屋的大小預(yù)測房屋的價格。我們有一個包含 100 間房屋及其相應(yīng)價格和大小的數(shù)據(jù)集。為了進行預(yù)測,我們決定使用僅考慮房屋大小的線性回歸模型。
現(xiàn)在,創(chuàng)建模型時可能會出現(xiàn)兩個問題:偏差和方差。當(dāng)模型過于簡單且無法準(zhǔn)確捕獲數(shù)據(jù)中的模式時,就會發(fā)生偏差。在這種情況下,如果我們使用只有一個特征(大?。┑木€性模型,該模型可能無法準(zhǔn)確預(yù)測房屋的價格,從而導(dǎo)致高偏差。
另一方面,當(dāng)模型過于復(fù)雜并且過度擬合數(shù)據(jù)時,就會發(fā)生方差,這意味著它與訓(xùn)練數(shù)據(jù)擬合得太近,但在新的、看不見的數(shù)據(jù)上表現(xiàn)不佳。在這種情況下,如果我們要使用具有許多特征(例如大小平方、大小立方等)的高階多項式模型,它可能會過度擬合數(shù)據(jù),從而導(dǎo)致高方差。
如上圖所示,高方差往往會分散模型的輸出,因為模型過于復(fù)雜并且與訓(xùn)練數(shù)據(jù)擬合得太近。從本質(zhì)上講,該模型捕獲了訓(xùn)練數(shù)據(jù)中的噪聲,而不是基礎(chǔ)模式。
而在高偏差的情況下,模型傾向于為幾乎所有輸入值產(chǎn)生相似的輸出,這與輸入和輸出之間的真實關(guān)系相去甚遠。最佳模型復(fù)雜性在于這兩個錯誤之間的平衡,正如我們將在權(quán)衡部分看到的那樣,模型具有足夠的靈活性來捕獲數(shù)據(jù)中的基礎(chǔ)模式,但又不會過度擬合訓(xùn)練數(shù)據(jù)的噪聲或特性。
什么是偏差-方差權(quán)衡?
偏差-方差權(quán)衡是指在偏差和方差之間建立可以很好地推廣到新數(shù)據(jù)的模型所需的平衡。過于簡單的模型將具有高偏差但低方差,而過于復(fù)雜的模型將具有低偏差但高方差。目標(biāo)是找到適當(dāng)?shù)膹?fù)雜程度,以最小化偏差和方差,從而生成一個可以準(zhǔn)確地泛化到新數(shù)據(jù)的模型。
為了在偏差和方差之間取得平衡,我們希望找到模型復(fù)雜度的最佳水平,使其能夠準(zhǔn)確預(yù)測房屋價格,同時很好地推廣到新數(shù)據(jù)。這可以通過創(chuàng)建誤差與模型復(fù)雜性圖來完成,該圖顯示了模型在不同復(fù)雜度級別的性能。通過分析此圖,我們可以確定模型復(fù)雜度的最佳水平,其中偏差和方差權(quán)衡是平衡的。
繪制誤差與模型復(fù)雜性的圖形首先要構(gòu)建一系列具有不同復(fù)雜程度的模型。例如,如果我們要創(chuàng)建一個線性回歸模型,我們可以從一個只有一個特征的簡單模型開始,然后逐漸包含更多特征以使模型更加復(fù)雜。
然后,我們將在部分數(shù)據(jù)上訓(xùn)練每個模型,并在單獨的測試集上評估其性能。為了測量測試集上的預(yù)測誤差,我們可以使用均方誤差(MSE)或平均絕對誤差(MAE)等指標(biāo)。
訓(xùn)練和評估每個模型后,我們可以根據(jù)模型復(fù)雜性繪制測試誤差。生成的圖形通常顯示 U 形曲線,其中誤差隨著模型復(fù)雜性的增加而減小,從而減少了偏差。但是,隨著模型變得過于復(fù)雜并開始過度擬合數(shù)據(jù),誤差最終會再次開始增加,從而增加方差。
要確定偏差和方差的最佳復(fù)雜度,請在圖形上查找檢驗誤差最低的點(如圖形中間的虛線所示)。這一點表示此特定問題的偏差和方差之間的最佳平衡。
了解機器學(xué)習(xí)中的泛化
泛化是模型在新數(shù)據(jù)上表現(xiàn)良好的能力。泛化良好的模型能夠?qū)π聰?shù)據(jù)做出準(zhǔn)確的預(yù)測,如果我們想在現(xiàn)實世界中使用該模型,這一點很重要。另一方面,泛化效果不佳的模型在訓(xùn)練的數(shù)據(jù)上可能表現(xiàn)良好,但可能無法對新數(shù)據(jù)做出準(zhǔn)確的預(yù)測。這是一個問題,因為這意味著該模型在實踐中可能沒有用。
當(dāng)我們訓(xùn)練機器學(xué)習(xí)模型時,我們希望它不僅能夠?qū)ξ覀冇脕碛?xùn)練它的數(shù)據(jù)做出準(zhǔn)確的預(yù)測,而且能夠?qū)λ郧皬奈匆娺^的新數(shù)據(jù)做出準(zhǔn)確的預(yù)測。這是因為,在現(xiàn)實世界中,我們并不總是可以訪問用于訓(xùn)練模型的完全相同的數(shù)據(jù),而是新的首次看到的數(shù)據(jù)點。因此,訓(xùn)練模型不僅要很好地擬合訓(xùn)練數(shù)據(jù),而且要很好地泛化到新數(shù)據(jù),這一點很重要。
解決過度擬合的正則化技術(shù)
各種正則化技術(shù)通過在損失函數(shù)中添加懲罰項來幫助防止過度擬合,這會阻止模型變得過于復(fù)雜。
常用的正則化有兩種類型:L1(套索)和 L2(脊)正則化。
套索回歸(L1 正則化)
雖然所有三種方法都為損失函數(shù)增加了一個懲罰項,但在套索回歸的情況下,正則化方法向損失函數(shù)添加一個與模型參數(shù)的絕對(模塊)值成比例的懲罰項。
這種方法鼓勵模型對不重要的特征給予較少的權(quán)重,因為它具有將某些參數(shù)驅(qū)動為零的效果,這有助于特征選擇。這意味著它可以幫助確定哪些特征是最重要的,并丟棄其余特征。這在處理高維數(shù)據(jù)集時非常有用,其中有許多功能可供選擇。
套索回歸在自變量數(shù)遠大于樣本數(shù)的高維數(shù)據(jù)集中特別有用。在這些情況下,套索回歸可以幫助識別最重要的變量并減少噪聲的影響。
套索回歸在自變量數(shù)遠大于樣本數(shù)的高維數(shù)據(jù)集中特別有用。在這些情況下,套索回歸可以幫助識別最重要的變量并減少噪聲的影響。
嶺回歸(L2 正則化)
嶺回歸是另一種類型的線性回歸,可用于處理機器學(xué)習(xí)模型中的過擬合。它類似于套索回歸,因為它在損失函數(shù)中添加了一個懲罰項(正則化項),但它不是像套索回歸那樣使用系數(shù)的絕對值,而是使用系數(shù)的平方。
這具有將不太重要的變量的系數(shù)縮小到零的效果,但與套索回歸不同,嶺回歸不會將它們精確設(shè)置為零。這意味著嶺回歸不能像套索回歸那樣執(zhí)行特征選擇,但它更適合所有特征在某種程度上都很重要的情況。
嶺回歸在處理具有高度共線性(特征之間的相關(guān)性)的數(shù)據(jù)集時特別有用。在這種情況下,模型可能無法確定哪些特征重要,哪些特征不重要,從而導(dǎo)致過度擬合。通過在損失函數(shù)中添加懲罰項,嶺回歸可以幫助減少過度擬合并使模型更加準(zhǔn)確。
彈性網(wǎng)絡(luò)回歸
彈性網(wǎng)絡(luò)回歸通過使用嶺回歸和套索回歸的技術(shù),結(jié)合了兩全其美的優(yōu)勢。通過將嶺回歸和套索回歸懲罰項添加到損失函數(shù)中,彈性凈回歸可以同時執(zhí)行特征選擇和特征收縮,這使得它比單獨使用任何一種技術(shù)都更加靈活和強大。
L1 正則化項嘗試將模型中的某些系數(shù)設(shè)置為零,這對于特征選擇很有用。這意味著它可以識別有助于預(yù)測目標(biāo)變量并排除不太重要的特征的最重要特征。
另一方面,L2 正則化項有助于控制模型中系數(shù)的大小。這對于特征收縮很有用,這意味著它可以減少不太重要的特征對模型性能的影響。
彈性網(wǎng)絡(luò)回歸在處理具有大量特征和高度多重共線性的數(shù)據(jù)集時特別有用,在這些數(shù)據(jù)集中,模型可能難以區(qū)分重要和不重要的特征。通過識別和縮小不太重要的特征,彈性凈回歸可以幫助減少過度擬合并提高模型的泛化性能。
解決過度擬合的交叉驗證技術(shù)
交叉驗證
是一種技術(shù),可用于通過評估機器學(xué)習(xí)模型在有限數(shù)據(jù)量上的性能來解決過度擬合問題?;舅枷胧菍?shù)據(jù)拆分為訓(xùn)練集和測試集,然后在訓(xùn)練集上擬合模型并在測試集上評估其性能。
K 折疊交叉驗證
一種流行的交叉驗證技術(shù)是 k 折交叉驗證,其中數(shù)據(jù)被分成 k 個大小相等的部分。模型在零件的 k-1 上訓(xùn)練,并在其余部分進行測試。此過程重復(fù) k 次,每個部分用于測試一次,并且性能在所有迭代中平均。
留一交叉驗證
留一交叉驗證是另一種技術(shù),其中將單個數(shù)據(jù)點作為測試集省略,并在剩余數(shù)據(jù)點上訓(xùn)練模型。請注意,留一交叉驗證是 k 折疊交叉驗證的特例,其中 k 等于數(shù)據(jù)集中的數(shù)據(jù)點數(shù)。對于每次迭代,將省略單個數(shù)據(jù)點作為測試集,并在其余數(shù)據(jù)點上訓(xùn)練模型。對每個數(shù)據(jù)點重復(fù)此過程,并計算平均性能。
如何選擇合適的模型復(fù)雜性
為機器學(xué)習(xí)模型選擇正確的復(fù)雜性對其性能至關(guān)重要。過于簡單的模型將無法捕獲數(shù)據(jù)的復(fù)雜性并且擬合不足,而過于復(fù)雜的模型將過度擬合數(shù)據(jù),并且在新數(shù)據(jù)上表現(xiàn)不佳。
要選擇最佳模型復(fù)雜性,請從簡單模型開始,逐漸增加復(fù)雜性,直到獲得滿意的結(jié)果。將數(shù)據(jù)拆分為訓(xùn)練集、驗證集和測試集,并使用驗證集選擇最佳模型復(fù)雜性。使用交叉驗證來評估模型在不同數(shù)據(jù)子集上的性能。
最后,使用 L1、L2 和彈性網(wǎng)絡(luò)等正則化技術(shù)來防止過度擬合。關(guān)鍵是平衡模型擬合和復(fù)雜性,評估性能并防止過度擬合,以便模型可以很好地泛化到新數(shù)據(jù)。
?
審核編輯:郭婷
評論
查看更多