更新時間:2022-11-23 來源:黑馬程序員 瀏覽量:
一般而言,我們希望追求更好的擬合程度,因為越好的擬合意味著模型能夠越全面地學(xué)習(xí)到數(shù)據(jù)中的規(guī)律和信息。但是,在某些場景下,擬合程度過高意味著嚴(yán)重的“負(fù)面”問題。
例如,決策樹是一類數(shù)據(jù)擬合程度非常高的算法,但可能產(chǎn)生過擬合的問題。過擬合通俗點講就是在做分類訓(xùn)練時,模型過度學(xué)習(xí)了訓(xùn)練集的特征,使得訓(xùn)練集的準(zhǔn)確率非常高,但是將模型應(yīng)用到新的數(shù)據(jù)集時,準(zhǔn)確率卻很差。因此,避免過擬合是分類模型(重點是單一樹模型)的一個重要任務(wù)。通過以下方式可以有效避免過擬合。
(1)使用更多的數(shù)據(jù)。導(dǎo)致過擬合的根本原因是訓(xùn)練集和新數(shù)據(jù)集的特征存在較大的差異,導(dǎo)致原本完美擬合的模型無法對新數(shù)據(jù)集產(chǎn)生良好的效果。
(2)降維。通過維度選擇或轉(zhuǎn)換的方式,降低參與分類模型的特征數(shù)量,能有效防止原有數(shù)據(jù)集中的“噪聲”對模型的影響,從而達到避免過擬合的目的。
(3)使用正則化方法。正則化會定義不同特征的參數(shù)來保證每個特征有一定的效用,不會使某一特征特別重要。
(4)使用組合方法。例如,隨機森林、adaboost、xgboost等不容易產(chǎn)生過擬合的問題。
相似問題:過擬合不僅存在于決策樹中,也存在于其他監(jiān)督式學(xué)習(xí)中。例如,在做回歸時,基本上所有的模型都有各種誤差。當(dāng)你發(fā)現(xiàn)誤差非常小,甚至幾乎為0的時候,就要非常小心,因為這時候很可能已經(jīng)出現(xiàn)了信息泄露、具有強相關(guān)的特征、特征選取失誤等問題。