(周志華)讀書筆記 -- 第二章 模型評估與選擇
阿新 • • 發佈:2018-12-30
隨手記下所學知識,很多圖表來自原書,僅供學習使用!
2.1 經驗誤差與過擬合
通常,我們使用"錯誤率"來表示分類中錯誤的樣本佔總樣本的比例.如果m個樣本中有a個錯誤樣本則錯誤率E=a/m
,對應的,1-a/m稱為精度,即"精度"=1-"錯誤率".更一般的情況來說,我們把機器學習的預測輸出和樣本真實輸出之間的差異稱為"訓練誤差"或者"經驗誤差".
一般來說,如果在訓練集中的表現精度高,而在測試集中表現的精度小,一般是過擬合.相反,如果是精度都不高一般是欠擬合.我們本來的目的是把訓練集這一類的特徵學出來,也就是要找訓練集和測試集的共同特徵,但是,雖然類有共性,但是每個個體之間是有差異的,如果是把訓練集自身的特徵當成了這一類的特徵,就是過擬合,如果,沒有學到什麼,訓練集(有可能訓練集也不低)測試集精度低,一般就是過擬合.比如說,訓練的時候是用的哈士奇,但是測試的時候是金毛,如果因為金毛耳朵,顏色和哈士奇不一樣而不認為金毛是狗,就是過擬合,但是如果是因為看到體型差不多,就認為是狗,就是欠擬合.(金毛和哈士奇圖片來自網路,侵權就刪...)
更加恰當的例子應該還是來自與原書.
2.2 評估方法
在測試過程中,我們一般會找一個測試集,測試集資料不在訓練中出現.至於為怎麼,很容易理解,就像學生考試一樣,用平時的訓練題作為考試題,這樣就不能考出來舉一反三的能力,可以看為是機械記憶.機器學習,本來就是要做一個能夠舉一反三的模型,要是考記憶能力,還不如直接弄個記事本,然後Ctrl+F直接查詢檔案中的關鍵字.
那麼還有一個問題,資料集就有一個,既要測試,又要訓練應該如何做呢?很簡單,分一為二.直接把一個數據集分成兩個,一個作為資料集,一個作為訓練集.