機器學習中的模型評估方法

2021-10-08 16:50:00 字數 975 閱讀 2640

最近在打kaggle的比賽,看到很多人都用了k折驗證法,以前也接觸過這部分知識,想上網查點資料再鞏固一下這部分知識,發現很多人根本連驗證集和測試集都沒搞清楚,說的雲裡霧裡的,於是就想自己總結一下k折驗證法的基本概念,順便總結一下機器學習中的模型評估方法。

holdout檢驗

holdout檢驗是最簡單也是最直接的驗證方法,它將原始的樣本集合隨機劃分成訓練集和驗證集兩部分。比方說,對於某乙個模型,我們把樣本按照70%~30%的比例分成兩部分,70%的樣本用於模型訓練;30%的樣本用於模型驗證,包括繪製roc曲線、計算精確率和召回率等指標來評估模型效能。

holdout檢驗的缺點很明顯,即在驗證集上計算出來的最後評估指標與原始分組有很大關係。為了消除隨機性,研究者們引入了「交叉驗證」的思想。

交叉驗證

k-fold交叉驗證:首先將全部樣本劃分成k個大小相等的樣本子集;依次遍歷這k個子集,每次把當前子集作為驗證集,其餘所有子集作為訓練集,進行模型的訓練和評估;最後把這k次評估指標的平均值作為最終的評估指標。

留一驗證:每次留下乙個樣本作為驗證集,其餘所有樣本作為訓練集。樣本總數為n,依次對n個樣本進行遍歷,進行n次驗證,再將評估指標求平均值得到最終的評估指標。在樣本總數較多的情況下,留一驗證法的時間開銷極大。實際上,留一驗證是留p驗證的特例。留p驗證是每次留下p個樣本作為驗證集,其時間開銷遠遠高於留一驗證,故而很少在實際工程中被應用。

自助法

不管是holdout檢驗還是交叉檢驗,都是基於劃分訓練集的方法進行模型評估的。然而,當樣本規模較小時,將樣本集進行劃分會讓訓練集進一步減小,這可能會影響模型訓練效果。自助法是可以比較好的維持訓練集樣本規模的驗證方法。

自助法基於自助取樣法的檢驗方法。對於總數為n的樣本集合,進行n次有放回的隨機抽樣,得到大小為n的訓練集。n次取樣中,有的樣本會被重複取樣,有的樣本沒有被抽出過,將這些沒有被抽出的樣本作為驗證集,進行模型驗證,這就是自助法的驗證過程。

機器學習中模型評估方法

交叉驗證 什麼是交叉驗證 cv 交叉驗證的基本思想是把在某種意義下將原始資料 dataset 進行分組,一部分做為訓練集 train set 另一部分做為驗證集 validation set or test set 首先用訓練集對分類器進行訓練,再利用驗證集來測試訓練得到的模型 model 以此來做...

機器學習模型評估方法

分類模型評價度量 概率輸出型 這個有邏輯回歸 隨機森林 梯度提公升 adaboost等演算法,都是以概率作為輸出的。要想把概率型輸出變為分型別輸出,只要為其設立乙個閾值即可。positive predictive value 陽性 值 or precision 精度 陽性 值被 正確的比例。nega...

評估機器學習模型的方法

我們將資料劃分為訓練集 驗證集和測試集,並沒有在訓練模型的相同資料上對模型進行評估,其原因很快顯而易見 僅僅幾輪過後,三個模型都開始過擬合。也就是說,隨著訓練的進行,模型在訓練資料上的效能始終在提高,但在前所未見的資料上的效能則不再變化或者開始下降。機器學習的目的是得到可以泛化 generalize...