人智導(八):模型的評價
均方誤差估計
針對迴歸模型,最常用的爲均方誤差估計(Mean Squarred Error)
- 模型評價:expected lowest testing MSE
- 注意學習模型的估算參數是lowest training MSE
- 模型需要在方差(variance)與偏差(bias)之間平衡
偏差與方差
二者的平衡
- 模型方差大,方法自由度就高,趨於非線性,擬合訓練數據好(偏差小)
- 偏差大且模型方差小(趨於線性),訓練精度相對低,但測試集上泛化能力強
- 理想的學習方法:低方差,低偏差(形式變化儘可能少)
- 如圖,左圖中黑線是真實的,右圖金黃線是training情況,右圖灰色線是testing情況
圖解偏差與方差
如圖
- 期望的學習方法:低偏差,低方差(左上圖)
- 偏差:準確度(點集質心距離靶心越近越好)(右上圖)
- 方差:精度(點越密越好)(左下圖)
模型評估:頂層設計
- 構建迴歸模型:training MSE(樂觀估計)
- 模型性能評價:test MSE(悲觀估計)
- 建模的目標:expected test MSE 最小化,即最小化 其中表示一組測試數據
驗證集方法
- 驗證集方法(holdout 方法)
- 樣例數據劃分爲不交疊兩部分:
- 訓練集生成模型,驗證集做測試評估
- 在驗證集上評估模型對未知數據預測的泛化能力
- 驗證集方法帶來的問題
- 不確定性:不同的驗證集可能給出的test MSE結果是非常不同的
- 在驗證集上評價test MSE是悲觀估計,用盡可能多的樣例參與模型性能訓練會更好
- 驗證集方法:一般是樣例數據集規模較大的情況下使用
重複holdout驗證
- 多次隨機劃分訓練集和驗證集,重複holdout方法評估模型取平均值,更魯棒
- 亦成爲蒙特卡洛(Monte Carlo)交叉驗證
留一交叉驗證
留一(leave-one-out)交叉驗證方法:
數據集包括n個樣例,選一份做驗證,其它n-1份爲訓練集,重複n次
非常高的計算代價(若n很大),評估一個學習算法需要生成模型n次,取平均的test MSE
適用於樣例集較小情況,充分利用訓練數據進行模型評估的方法
K-折交叉驗證方法
數據集等分爲k份,選一份做驗證,其它k-1份爲訓練集,重複k次
較高的計算代價,評估一個學習算法需要k次生成模型,取平均的test MSE
K-折交叉驗證較理想地折中考慮偏差與方差情況
留一與K-折交叉驗證效果
如圖