模型評估與選擇

經驗偏差與過擬合

  • 常見概念

偏差:學習器的實際預測輸出與樣本的真實輸出之間的差別算法

經驗偏差:學習器在訓練集上的偏差性能

泛化偏差:在新樣本上的偏差學習

過擬合:指學習時選擇的模型所包含的參數過多,以致於出現這一模型對已知數據預測得很好,但對未知數據預測得不好的現象測試

欠擬合:指對訓練樣本的通常性質還沒有學好.net

評估方法

  • 留出法

定義:將數據集 D 劃分爲兩個互斥的集合,其中一個集合做爲訓練集 S,另外一個做爲測試集 T,即 D = S \cup T, S \cap T = \varnothing.在 S 上訓練出模型後,用 T 來評估其測試偏差,做爲對泛化偏差的估計。3d

不一樣的劃分將致使不一樣的訓練/測試集,相應的,模型的評估結果也會有差異。所以,單次使用留出法獲得的估計結果每每不夠穩定可靠,在使用留出法時,通常要採用若干次隨機劃分、重複進行試驗評估後取平均值做爲留出法的評估結果。cdn

  • 交叉驗證法

先將數據集 D 劃分紅 k 個大小類似的互斥子集,即D = D_1 \cup D_2 \cup ... \cup D_k ,D_i \cap D_j = \varnothing (i\neq j ).而後,每次用 k - 1 個子集的並集做爲訓練集,餘下的那個子集做爲測試集;這樣就可得到 k 組訓練/測試集,從而可進行 k 次訓練和測試,最終返回這 k 個測試結果的均值。一般把這稱爲 k 折交叉驗證, k 的取值影響着交叉驗證評估結果的穩定性和保真性。將數據集 D 劃分爲 k 個子集存在多種劃分方式,爲減小因樣本劃分不一樣而引入的差異,k 折交叉驗證一般要隨機使用不一樣的劃分重複 p 次,最終的評估結果爲這 p 次 k 折交叉驗證結果的均值。blog

圖一:10折交叉驗證

  • 自助法

定義:給定包含 m 個樣本的數據集 D,咱們對它進行採樣產生數據集 D^{'}:每次隨機從 D 中挑選一個樣本,將其拷貝放入 D^{'},而後再將該樣本放回初始數據集 D 中,使得該樣本在下次採樣時仍有可能被採樣到;這個過程重複執行 m 次後,咱們就獲得了包含 m 個樣本的數據集 D^{'},這就是自助採樣的結果。it

性能度量

  • 錯誤率與精度

定義:錯誤率是分類錯誤的樣本數佔樣本總數的比例,精度是分類正確的樣本數佔樣本總數的比例io

  • 查準率、查全率與 F1

對於二分類問題,可將樣例根據其真實類別與學習器預測類別的組合劃分爲真正例、假正例、真反例、假反例四種情形,令TP、FP、TN、FN分別表示其對應的樣例數,則顯然有 TP + FP + TN + FN = 樣例總數。分類結果的混淆矩陣如表所示:

圖二:分類結果混淆矩陣

查準率 P 、查全率 R 與 F1 分別定義爲:

P = \frac{TP}{TP + FP}
R = \frac{TP}{TP + FN}
F1 = \frac{2 \times P \times R}{P + R} = \frac{2 \times TP}{樣例總數 + TP - TN}
  • ROC 與 AUC

ROC 全稱是「受試者工做特徵」曲線,ROC 曲線的縱軸是「真正例率」(TPR),橫軸是「假正例率」(FPR)。TPR 和 FPR 公式以下:

TPR = \frac{TP}{TP + FN}
FPR = \frac{FP}{TN + FP}

進行學習器的比較時,若一個學習器的 ROC 曲線被另外一個學習器的曲線徹底「包住」,則可斷言後者性能優於前者;若兩個學習器的 ROC 曲線發生交叉,則難以通常性地斷言二者孰優孰劣。此時若是必定要進行比較,則較爲合理的判據是比較 ROC 曲線下的面積,即 AUC。

圖三:ROC曲線與AUC示意圖

誤差與方差

對測試樣本 x,令y_D爲 x 在數據集中的標記, y 爲 x 的真實標記,f(x;D) 爲訓練集 D 上學得模型 f 在 x 上的預測輸出。以迴歸任務爲例,學習算法的指望預測爲:

\bar f(x) = E_D[f(x;D)]

使用樣本數相同的不一樣訓練集產生的方差爲:

var(x) = E_D[{(f(x;D) - \bar f(x))}^2]

噪聲爲:

\epsilon^2 = E_D[{(y_D - y)}^2]

指望輸出與真實標記的差異爲誤差,即:

bias^2(x) = {(\bar f(x) - y)}^2

指望泛化偏差

E(f;D) = bias^2(x) + var(x) + \epsilon^2

也就是說,泛化偏差可分解爲誤差、方差與噪聲之和

誤差度量了學習算法的指望預測與真實結果的偏離程度,即刻畫了學習算法自己的擬合能力;方差度量了一樣大小的訓練集的變更所致使的學習性能的變化,即刻畫了數據擾動所形成的影響;噪聲表達了在當前任務上任何學習算法所能達到的指望泛化偏差的下界,即刻畫了學習問題自己的難度

通常來講,誤差與方差是有衝突的,這稱爲誤差-方差窘境

  • 在訓練不足時,學習器的擬合能力不夠強,訓練數據的擾動不足以使學習器產生顯著變化,此時誤差主導了泛化錯誤率

  • 隨着訓練程度的加深,學習器的擬合能力逐漸加強,訓練數據發生的擾動漸漸能被學習器學到,方差逐漸主導了泛化錯誤率

  • 在訓練程度充足後,學習器的擬合能力已很是強,訓練數據發生輕微的擾動都會致使學習器發生顯著變化,若訓練數據自身的、非全局的特性被學習器學到了,則會發生過擬合

圖四:泛化偏差與誤差、方差的關係示意圖
相關文章
相關標籤/搜索