泛化誤差:學(xué)習(xí)器在新樣本上的誤差為泛化誤差一姿。顯然,我們希望得到泛化誤差小的學(xué)習(xí)器和措。
過擬合:學(xué)習(xí)器把訓(xùn)練樣本學(xué)得‘太好’了的時候奴烙,很可能把訓(xùn)練樣自身的一些特點當(dāng)作了所有潛在樣本都會具有的一般性質(zhì)助被,這樣導(dǎo)致泛化性能下降。此現(xiàn)象稱為‘過擬合’缸沃。過擬合是機器學(xué)習(xí)的關(guān)鍵障礙恰起,無法徹底避免修械,只能緩解趾牧。
模型評估方法:有三種。
1.留出法:
將數(shù)據(jù)集D分為訓(xùn)練集S與測試集T肯污,訓(xùn)練集應(yīng)該盡量與測試集互斥翘单,即測試樣本盡量不要在訓(xùn)練集中出現(xiàn)吨枉。S訓(xùn)練出模型后,以T來評估測試誤差哄芜,作為泛化誤差的估計貌亭。數(shù)據(jù)的劃分要保持數(shù)據(jù)分布的一致性。實際中认臊,往往采用若干次隨機劃分圃庭、每次產(chǎn)生一個訓(xùn)練/測試集用于實驗評估,100次就有100個結(jié)果失晴,最后以100次的結(jié)果作為均值剧腻。缺點:有時候由于T太小,模型的評估未必準確涂屁。如果增大T书在,則S與D差別更大,被評估的模型與用D訓(xùn)練出的模型相比可能有比較大的差別拆又,降低了評估結(jié)果的保真性儒旬。
2.交叉驗證法:
將數(shù)據(jù)集D分為k個大小相似的互斥子集。k-1個子集作為訓(xùn)練集帖族、剩下的一個作為測試集栈源。這樣進行k次訓(xùn)練和測試,最終返回k個測試結(jié)果的均值竖般。
存在一個特例:留一法:數(shù)據(jù)集D有m個樣本凉翻,令k=m,留一法不受樣本隨機劃分的影響捻激,所以評估結(jié)果比較準確制轰。但如果數(shù)據(jù)集較大時留一法比較消耗資源,成本過大胞谭。
查準率與查全率:
查準率:被查出來是糖尿病的人有多少是真正的糖尿病患者(鑒別假陽性)垃杖。
查全率:真正的糖尿病人有多少被查了出來(鑒別出沒有被查出的糖尿病患者)。
ROC與AUC:
很多學(xué)習(xí)器是為測試樣本產(chǎn)生一個實值或概率預(yù)測丈屹,然后將這個預(yù)測值與一個分類閾值進行比較调俘,若大于閾值分為正類、小于閾值為反類旺垒。根據(jù)這個實值或概率預(yù)測結(jié)果對樣本進行排序彩库,最可能是正例的排在前面,最不可能是正例的排在后面先蒋。
這樣分類就相當(dāng)于在排序過程中以某個截斷點將樣本分為兩部分骇钦,前一部分判作正例,后一部分作反例竞漾。
所以排序性能的好壞體現(xiàn)了學(xué)習(xí)器泛化性能的好壞眯搭。ROC即是從此角度出發(fā)來研究學(xué)習(xí)器泛化性能的窥翩。對樣例的預(yù)測結(jié)果進行排序,按照排序順序逐個把樣本作為正例進行預(yù)測鳞仙,每次計算出‘真正例率(TPR)’與‘假正例率(FPR)’寇蚊。橫軸為‘假正例率’、縱軸為‘真正例率’棍好。
進行學(xué)習(xí)器比較時若一個學(xué)習(xí)器的ROC曲線被另一個完全包住仗岸,則可斷言后者性能優(yōu)于前者,若兩個學(xué)習(xí)器的roc曲線發(fā)生交叉此時則用ROC曲線下的面積AUC進行判斷借笙。
偏差爹梁、方差、噪聲
泛化誤差可以分解為偏差提澎、方差與噪聲之和姚垃。
偏差度量了學(xué)習(xí)算法的期望預(yù)測與真實結(jié)果的偏離程度,即刻畫了學(xué)習(xí)算法本身的擬合能力
方差度量了同樣大小的訓(xùn)練集的變動所導(dǎo)致的學(xué)習(xí)性能的變化盼忌,即刻畫了數(shù)據(jù)擾動所造成的影響积糯。
噪聲則表達了在當(dāng)前任務(wù)上任何學(xué)習(xí)算法所能達到的期望泛化誤差的下界,即刻畫了學(xué)習(xí)問題的本身難度谦纱,是客觀存在的看成。