經(jīng)驗(yàn)誤差與過擬合
錯誤率為分類錯誤的樣本數(shù)占樣本總數(shù)的比例,相應(yīng)的精度=1-錯誤率,模型的實(shí)際預(yù)測輸出與樣本的真實(shí)輸出之間的差異稱為“誤差”,模型在訓(xùn)練集上的誤差稱為“訓(xùn)練誤差”,在新樣本上的誤差稱為“泛化誤差”。我們希望得到在新樣本上表現(xiàn)好的學(xué)習(xí)器,也就是泛化誤差小的學(xué)習(xí)器,但是并不是泛化誤差越小越好,我們應(yīng)該盡可能出訓(xùn)練樣本中學(xué)出適用于所有潛在樣本的“普遍規(guī)律”,然而模型把訓(xùn)練樣本學(xué)的太好,很可能把訓(xùn)練完本自身的特點(diǎn)當(dāng)做所有潛在樣本都具有的一般性質(zhì),這樣就導(dǎo)致了泛化性能下降,這種現(xiàn)象稱為“過擬合”,相對立的是“欠擬合”,是指訓(xùn)練樣本的一般性質(zhì)尚未學(xué)好。欠擬合比較容易克制,例如在決策樹學(xué)習(xí)中擴(kuò)展分支、在神經(jīng)網(wǎng)絡(luò)中增加訓(xùn)練輪數(shù),然而過擬合是無法避免的,我們所能做的就是盡量“緩解”,在現(xiàn)實(shí)生活中,我們往往有有多種學(xué)習(xí)算法可供選擇,對于同一算法,當(dāng)使用不同參數(shù)配置時,也會產(chǎn)生不同的模型。
評估方法
通過“訓(xùn)練集”訓(xùn)練出機(jī)器學(xué)習(xí)模型,通過“測試集”來測試模型對新樣本的判別能力,然后以測試集上的“測試誤差”作為泛化誤差近似,當(dāng)需要注意的是,測試集應(yīng)該盡可能與測試集互斥,即測試樣本盡量不在訓(xùn)練樣本中出現(xiàn)、未在訓(xùn)練過程中使用。解釋為什么(老師出了10道習(xí)題供同學(xué)們練習(xí),考試時老師又用同樣的這10道題作為考題,這個考試成績是否能反應(yīng)出同學(xué)們真實(shí)情況,機(jī)器學(xué)習(xí)的模型是希望得到泛化能力強(qiáng)的模型,獲得舉一反三的能力)。
我們一共包含m個樣例的數(shù)據(jù)集D={(x1,y1),{x2,y2}...,(xm,ym)}},既要訓(xùn)練,又要測試,我們通常對D進(jìn)行適當(dāng)?shù)奶幚?,從中產(chǎn)出訓(xùn)練集S和測試集T。
留出法
“留出法”直接將數(shù)據(jù)集D劃分為兩個互斥的集合,其中一個集合作為訓(xùn)練集S,另一個作為測試集T,D=S∪T,S∩T=? 需要注意的是,訓(xùn)練/測試的劃分要盡可能的保持?jǐn)?shù)據(jù)的一致性,避免應(yīng)數(shù)據(jù)的劃分過程引入額外的偏差而對最終結(jié)果產(chǎn)生影響,也就是兩個集合中樣本類別比例要相似,這種保留類別比例的采樣方式稱為“分層采樣”??杉词故沁@樣,仍然存在多種劃分方式, 例如可以把D中的樣本排序,然后把前350個正例放到訓(xùn)練集中,也可以把最后350個正例放到訓(xùn)練集中,.....這不同的劃分將導(dǎo)致不同的訓(xùn)練/測試集,模型估計(jì)必然會有偏差,
因此,單次使用留出法得到的估計(jì)結(jié)果往往不夠穩(wěn)定可靠,在使用留出法時,一般要采用若干次隨機(jī)劃分、重復(fù)實(shí)驗(yàn)取平均值作為留出法的結(jié)果。此外我們使用留出法對數(shù)據(jù)集D進(jìn)行劃分,會有一個很尷尬的局面,當(dāng)訓(xùn)練集S過多,訓(xùn)練出的模型可能更加接近用D訓(xùn)練出的結(jié)局,但是由于測試集T太少,評估結(jié)果不夠穩(wěn)定精確;若令訓(xùn)練集T的樣本數(shù)過多,這訓(xùn)練出的模型和用整個數(shù)據(jù)集D訓(xùn)練出的模型相差就更加大了,這個問題沒有完美的解決方法,常見做法是將2/3~4/5的樣本用于訓(xùn)練。
交叉驗(yàn)證法
“交叉驗(yàn)證法”先將數(shù)據(jù)集D劃分為k個大小相似的互斥子集,即 D = D1∪D2....∪Dk, Di∩ Dj= ?(i≠j),每個子集 Di都盡可能保持?jǐn)?shù)據(jù)分布的一致性,即從D中通過分層采樣得到。然后,每次用k-1 個子集的并集作為訓(xùn)練集,其余的那個子集作為測試集;這樣就可獲得k組訓(xùn)練/測試集,從而可進(jìn)行k 次訓(xùn)練和測試,最終返回的是這k 個測試結(jié)果的均值。通常把交叉驗(yàn)證法稱為“k折交叉驗(yàn)證”。
與留出法類似,k折交叉驗(yàn)證要隨機(jī)使用不同的劃分重復(fù)p次,最終的評估結(jié)果是這p 次k 折交叉驗(yàn)證結(jié)果的均值。
“留一法”是數(shù)據(jù)集D包含m個樣本,若令 k=m,得到交叉驗(yàn)證的一個特例,留一法不收隨機(jī)樣本劃分方式的影響,劃分方式為m個子集,每個子集一個樣本,使得訓(xùn)練集和初始數(shù)據(jù)集只少一個樣本,所以被訓(xùn)練出的模型很接近實(shí)際的評估模型,但是留一法也有缺點(diǎn),當(dāng)數(shù)據(jù)集m很大的時候,根本無法承受訓(xùn)練m個模型的計(jì)算(m等于一百萬)。
自助法
給定包含m個樣本的數(shù)據(jù)集D,我們對它進(jìn)行采樣產(chǎn)生數(shù)據(jù)集D': 每次隨機(jī)從D中挑選一個樣本7,將其拷貝放入D' 然后再將該樣本放回初始數(shù)據(jù)集D中,使得該樣本在下次采樣時仍有可能被采到,這個過程重復(fù)執(zhí)行m 次后,我們就得到了包含m個樣本的數(shù)據(jù)集D',這就是自助采樣的結(jié)果,顯然,D 中有一部分樣本會在D'中多次出現(xiàn),而另一部分樣本不出現(xiàn).可以做一個簡單的估計(jì),樣本在m 次采樣中始終不被采到的概率是取極限得到
即通過自助來樣,初始數(shù)據(jù)集D 中約有36.8% 的樣本未出現(xiàn)在采樣數(shù)據(jù)集D'中.于是我們可將D' 用作訓(xùn)練集, D\D' 用作測試集;這樣實(shí)際評估的模型與期望評估的模型都使用m個訓(xùn)練樣本,而我們?nèi)杂袛?shù)據(jù)總量約1/3 的、沒在訓(xùn)練集中出現(xiàn)的樣本用于測試.這樣的測試結(jié)果,亦稱"包外估計(jì)"
自助法在數(shù)據(jù)集較小、難以有效劃分訓(xùn)練/測試集是很有用;此外,自助法產(chǎn)生的數(shù)據(jù)集改變了初始數(shù)據(jù)集的分布,這會引起估計(jì)偏差,因此在數(shù)據(jù)量足夠大的時候還是留出法和交叉驗(yàn)證法更常用一些。
調(diào)參與最終模型
在進(jìn)行模型評估與選擇的時候,除了要對使用學(xué)習(xí)算法進(jìn)行選擇,還需對算法參數(shù)進(jìn)行設(shè)定,這就是常說的“參數(shù)調(diào)節(jié)”簡稱“調(diào)參”。對每種參數(shù)配置都訓(xùn)練出模型,然后把最好的模型作為結(jié)果,但是對每種參數(shù)訓(xùn)練出模型是不可行的,現(xiàn)實(shí)中常用的做法,是對每個參數(shù)選定一個范圍和變化步長,例如[0,0.2],步長選定0.05,則實(shí)際要評估的參數(shù)為5個,但即便是這樣同樣是不可行的,假設(shè)一個算法有3個參數(shù),每個參數(shù)有5個候選參數(shù),那么一共需要考慮53=125個模型,參數(shù)調(diào)的不好往往直接影響模型的關(guān)鍵性能。
這就需要在計(jì)算開銷和性能估計(jì)中進(jìn)行折中考慮。
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4783瀏覽量
101239 -
機(jī)器學(xué)習(xí)
+關(guān)注
關(guān)注
66文章
8446瀏覽量
133124
發(fā)布評論請先 登錄
相關(guān)推薦
機(jī)器學(xué)習(xí)模型評估指標(biāo)
![<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>模型</b><b class='flag-5'>評估</b>指標(biāo)](https://file1.elecfans.com/web2/M00/A1/CD/wKgZomT4BgmAYtguAAAN2aGC5IM261.jpg)
部署基于嵌入的機(jī)器學(xué)習(xí)模型
三種電路仿真軟件比較及器件模型加入方法
機(jī)器學(xué)習(xí)之模型評估和優(yōu)化
![<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>之<b class='flag-5'>模型</b><b class='flag-5'>評估</b>和優(yōu)化](https://file.elecfans.com/web2/M00/49/FF/pYYBAGKhvIWAZX-QAAAy9ewBUwk966.png)
NLP的介紹和如何利用機(jī)器學(xué)習(xí)進(jìn)行NLP以及三種NLP技術(shù)的詳細(xì)介紹
![NLP的介紹和如何利用<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>進(jìn)行NLP以及<b class='flag-5'>三種</b>NLP技術(shù)的詳細(xì)介紹](https://file.elecfans.com/web1/M00/53/19/pIYBAFscjWqAKPqjAAAWEl98hww098.jpg)
機(jī)器學(xué)習(xí)的三種交叉驗(yàn)證
機(jī)器學(xué)習(xí)的模型評估與選擇詳細(xì)資料說明
![<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b>的<b class='flag-5'>模型</b><b class='flag-5'>評估</b>與選擇詳細(xì)資料說明](https://file.elecfans.com/web1/M00/B8/E4/pIYBAF55YH2AAZXKAA_nb-Grzkg131.png)
機(jī)器學(xué)習(xí)模型評估的11個指標(biāo)
![<b class='flag-5'>機(jī)器</b><b class='flag-5'>學(xué)習(xí)</b><b class='flag-5'>模型</b><b class='flag-5'>評估</b>的11個指標(biāo)](https://file.elecfans.com/web1/M00/BA/6D/o4YBAF6dA1CAC5KIAAICxWXM19c234.png)
這三種學(xué)習(xí)模式在于深度學(xué)習(xí)的未來
![這<b class='flag-5'>三種</b><b class='flag-5'>學(xué)習(xí)</b>模式在于深度<b class='flag-5'>學(xué)習(xí)</b>的未來](https://file.elecfans.com/web1/M00/CB/7C/o4YBAF-SMxeAGlrkAAAUqKQElV4862.png)
深度學(xué)習(xí)的三種學(xué)習(xí)模式介紹
![深度<b class='flag-5'>學(xué)習(xí)</b>的<b class='flag-5'>三種</b><b class='flag-5'>學(xué)習(xí)</b>模式介紹](https://file.elecfans.com/web1/M00/CC/05/pIYBAF-SfrGANM-TAAAUqKQElV4142.png)
如何評估機(jī)器學(xué)習(xí)模型的性能?機(jī)器學(xué)習(xí)的算法選擇
靜電放電ESD三種模型及其防護(hù)設(shè)計(jì)
![靜電放電ESD<b class='flag-5'>三種</b><b class='flag-5'>模型</b>及其防護(hù)設(shè)計(jì)](https://file.elecfans.com/web2/M00/11/AF/pYYBAGEjX2CAcHQBAAAbjMuxM3k247.jpg)
評論