过拟合(overfitting)和欠拟合(underfitting)出现原因及如何避免方案
生活随笔
收集整理的這篇文章主要介紹了
过拟合(overfitting)和欠拟合(underfitting)出现原因及如何避免方案
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
文章目錄
- 欠擬合
- 一、什么是欠擬合?
- 二、欠擬合出現(xiàn)原因
- 三、解決欠擬合(高偏差)的方法
- 過(guò)擬合
- 一、什么是過(guò)擬合?
- 二、過(guò)擬合出現(xiàn)原因
- 三、解決過(guò)擬合(高方差)的方法
欠擬合
一、什么是欠擬合?
欠擬合是指模型不能在訓(xùn)練集上獲得足夠低的誤差。換句換說(shuō),就是模型復(fù)雜度低,模型在訓(xùn)練集上就表現(xiàn)很差,沒(méi)法學(xué)習(xí)到數(shù)據(jù)背后的規(guī)律。
二、欠擬合出現(xiàn)原因
模型復(fù)雜度過(guò)低
特征量過(guò)少
三、解決欠擬合(高偏差)的方法
1. 模型復(fù)雜化? 對(duì)同一個(gè)算法復(fù)雜化。例如回歸模型添加更多的高次項(xiàng),增加決策樹(shù)的深度,增加神經(jīng)網(wǎng)絡(luò)的隱藏層數(shù)和隱藏單元數(shù)等? 棄用原來(lái)的算法,使用一個(gè)更加復(fù)雜的算法或模型。例如用神經(jīng)網(wǎng)絡(luò)來(lái)替代線(xiàn)性回歸,用隨機(jī)森林來(lái)代替決策樹(shù)等2. 增加更多的特征,使輸入數(shù)據(jù)具有更強(qiáng)的表達(dá)能力? 特征挖掘十分重要,尤其是具有強(qiáng)表達(dá)能力的特征,往往可以抵過(guò)大量的弱表達(dá)能力的特征? 特征的數(shù)量往往并非重點(diǎn),質(zhì)量才是,總之強(qiáng)特最重要? 能否挖掘出強(qiáng)特,還在于對(duì)數(shù)據(jù)本身以及具體應(yīng)用場(chǎng)景的深刻理解,往往依賴(lài)于經(jīng)驗(yàn)3. 調(diào)整參數(shù)和超參數(shù)? 超參數(shù)包括:- 神經(jīng)網(wǎng)絡(luò)中:學(xué)習(xí)率、學(xué)習(xí)衰減率、隱藏層數(shù)、隱藏層的單元數(shù)、Adam優(yōu)化算法中的β1和β2參數(shù)、batch_size數(shù)值等- 其他算法中:隨機(jī)森林的樹(shù)數(shù)量,k-means中的cluster數(shù),正則化參數(shù)λ等4. 增加訓(xùn)練數(shù)據(jù)往往沒(méi)有用? 欠擬合本來(lái)就是模型的學(xué)習(xí)能力不足,增加再多的數(shù)據(jù)給它訓(xùn)練它也沒(méi)能力學(xué)習(xí)好5. 降低正則化約束? 正則化約束是為了防止模型過(guò)擬合,如果模型壓根不存在過(guò)擬合而是欠擬合了,那么就考慮是否降低正則化參數(shù)λ或者直接去除正則化項(xiàng)過(guò)擬合
一、什么是過(guò)擬合?
過(guò)擬合是指訓(xùn)練誤差和測(cè)試誤差之間的差距太大。換句換說(shuō),就是模型復(fù)雜度高于實(shí)際問(wèn)題,模型在訓(xùn)練集上表現(xiàn)很好,但在測(cè)試集上卻表現(xiàn)很差。模型對(duì)訓(xùn)練集"死記硬背"(記住了不適用于測(cè)試集的訓(xùn)練集性質(zhì)或特點(diǎn)),沒(méi)有理解數(shù)據(jù)背后的規(guī)律,泛化能力差。
二、過(guò)擬合出現(xiàn)原因
三、解決過(guò)擬合(高方差)的方法
1. 增加訓(xùn)練數(shù)據(jù)數(shù)? 發(fā)生過(guò)擬合最常見(jiàn)的現(xiàn)象就是數(shù)據(jù)量太少而模型太復(fù)雜? 過(guò)擬合是由于模型學(xué)習(xí)到了數(shù)據(jù)的一些噪聲特征導(dǎo)致,增加訓(xùn)練數(shù)據(jù)的量能夠減少噪聲的影響,讓模型更多地學(xué)習(xí)數(shù)據(jù)的一般特征? 增加數(shù)據(jù)量有時(shí)可能不是那么容易,需要花費(fèi)一定的時(shí)間和精力去搜集處理數(shù)據(jù)? 利用現(xiàn)有數(shù)據(jù)進(jìn)行擴(kuò)充或許也是一個(gè)好辦法。例如在圖像識(shí)別中,如果沒(méi)有足夠的圖片訓(xùn)練,可以把已有的圖片進(jìn)行旋轉(zhuǎn),拉伸,鏡像,對(duì)稱(chēng)等,這樣就可以把數(shù)據(jù)量擴(kuò)大好幾倍而不需要額外補(bǔ)充數(shù)據(jù)? 注意保證訓(xùn)練數(shù)據(jù)的分布和測(cè)試數(shù)據(jù)的分布要保持一致,二者要是分布完全不同,那模型預(yù)測(cè)真可謂是對(duì)牛彈琴了2. 使用正則化約束? 在代價(jià)函數(shù)后面添加正則化項(xiàng),可以避免訓(xùn)練出來(lái)的參數(shù)過(guò)大從而使模型過(guò)擬合。使用正則化緩解過(guò)擬合的手段廣泛應(yīng)用,不論是在線(xiàn)性回歸還是在神經(jīng)網(wǎng)絡(luò)的梯度下降計(jì)算過(guò)程中,都應(yīng)用到了正則化的方法。常用的正則化有l(wèi)1正則和l2正則,具體使用哪個(gè)視具體情況而定,一般l2正則應(yīng)用比較多3. 減少特征數(shù)? 欠擬合需要增加特征數(shù),那么過(guò)擬合自然就要減少特征數(shù)。去除那些非共性特征,可以提高模型的泛化能力4. 調(diào)整參數(shù)和超參數(shù)? 不論什么情況,調(diào)參是必須的5. 降低模型的復(fù)雜度? 欠擬合要增加模型的復(fù)雜度,那么過(guò)擬合正好反過(guò)來(lái)6. 使用Dropout? 這一方法只適用于神經(jīng)網(wǎng)絡(luò)中,即按一定的比例去除隱藏層的神經(jīng)單元,使神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)簡(jiǎn)單化7. 提前結(jié)束訓(xùn)練? 即early stopping,在模型迭代訓(xùn)練時(shí)候記錄訓(xùn)練精度(或損失)和驗(yàn)證精度(或損失),倘若模型訓(xùn)練的效果不再提高,比如訓(xùn)練誤差一直在降低但是驗(yàn)證誤差卻不再降低甚至上升,這時(shí)候便可以結(jié)束模型訓(xùn)練了總結(jié)
以上是生活随笔為你收集整理的过拟合(overfitting)和欠拟合(underfitting)出现原因及如何避免方案的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: android 视频转字节,如何将视频文
- 下一篇: 静物摄影用光技巧_室内人像摄影想要拍好,