我們的主要目標是想知道,如何預測資料將被分到哪一類?
我們要如何不使用新的資料而去估計test error rate
5.1 Cross-Validation
test error 的定義為:由測試資料估計出來的估計值與測試資料的平均誤差平方和。
Chapter 6 會講如何使用 trainning error rate 去估計 test error rate 。
此節重點為探討由trainning observations中擷取部份資料作為testing observation進而估計test error 。
5.1.1 The Validation Ser Approach
- 將手上有的資料(avaliable set) 隨機 分割為兩個部分
- trainning set (p177 blue)
- validdation set or hold out set (p177 米色部分)
- 由 trainning set 配適模型
- 由 validation set 估計預測值
- MSE作為 test error 判斷工具
- 回顧Chapter 3 – p91 使用Auto data set 說明validation set approach
- p91 – mpg(每加侖行駛的英里數)為應變數,hoursepower(馬力)為解釋變數,可知資料呈現非線性關係。
- 資料呈現非線性,由p92 table 可知horsepower平方也是顯著變數。
- 那是否次方向越高所配適出來的模型是越來越好?
- 使用 Validation method 將392個data隨機分割為196vs196,再用不同的模型去看error rate
- 由Figure5.2 p178 指出quadratic fit 的MSE 比 linear fit 低,但是 cutic fit 卻微微升高了。
- 故暗示次方高未必預測能力就比較好。
- p178 Figure 5.2 右圖
- 右圖為重複使用Validation method方法10次產生得MSE curve
- 顯示出qua fit 的MSE 皆比 linear fit 還好很多但在更高次方卻未必。
- 10 次 的最小 validation set MSE都不一致。
- 故課本指出對於這筆資料,配適linear 不是適當的。
- drawback
- 當trainning data 很小時,Validation approach 需要將trainning隨機分割,這樣分割後的trainning更小,再用很小的validation set進行估計validation error rate ,容易使validation error rate 高估 error rate 。
- p178 第一點不懂!幹
5.1.2 Leave-One-Out Cross-Validation (LOOCV)
- LOOCV與validation approach 類似,只是LOOCV試圖validation set approach上的缺點。
- LOOCV的運作內容
- 對trainning set進行分割,同樣是分成兩個部分,分別為trainning與validation。
- validation set 只取一個,trainning set 部分則有n-1個
- 對此方法重複n次,如p179的Figure 5.3 ,但是他的分割並非隨機?!(課本p180畫黃色重點部分)
- 每一個validation set(single sample)計算出的MSE近似不偏,但是卻高度變異(p179 畫黃色重點部分)
- 重複進行n次後,將n個MSE取平均即為(p179form5.1)
- LOOCV的兩個優點
- LOOCV估計出的test error 擁有較小的偏誤
- 由於運用n-1個樣本盡情建模幾乎近似全部的trainning set,故不會像validation approach一樣高估test error rate。
- 由於validation approach適用隨機分割,而LOOCV並非隨機分割,所以模擬多次的情況下LOOCV,所模擬出來都會是一樣的。(p180)
- Figure5.4左圖指出此方式也顯示,LOOCV針對非線性資料Auto,qua fit 勝過 linear fit。
- LOOCV缺點
- 當樣本數極大時,非常耗時。
- 詢問關於 form 5.2(p180)
5.1.3 K-Fold Cross-Validation
- 方法說明
- 與LOOCV類似,由trainning set中 隨機 分割k個不重疊的part,每一個part就以外的就是trainning set(p181本人圖解操)。
- 將k次的MSE取平均之後就是–此方法的test error
- LOOCV為KFCV的special case
- 一般而言,大多取k=5 or 10
- 為何多取5 or 10 而不是 k=n?
- 最大的優點是在計算,如LOOCV所提到的樣本數很大問題。
- 相反的k=10 只需10次,比LOOCV適合。
- 5.1.4會提到KFCV非計算上的優點