訓練集用來訓練模型,驗證集用于模型的選擇,而測試集用于最終對學習方法的評估。
在學習到不同的復雜度的模型中,選擇對驗證集有最小預測誤差的模型,由于驗證集有足夠多的數據,用它對模型進行選擇也是有效的。
但是,在許多實際應用中數據是不充足的,為了選擇好的模型,可以采用交叉驗證方法,交叉驗證的基本思想是重復地使用數據;把給定的數據進行切分,將切分的數據組合為訓練集和測試集,在此基礎上反復地進行訓練、測試以及模型選擇。
1、簡單交叉驗證
簡單交叉驗證是:首先隨機地將已給數據分成兩部分,一部分作為訓練集,另一部分作為測試集(比如,70%的數據為訓練集,30%的數據為測試集);然后用訓練集在各種情況下(例如,不同的參數個數)訓練模型,從而得到不同的模型;在測試集上評價各個模型的測試誤差,選出測試誤差最小的模型。
2、S折交叉驗證
應用最多是S折交叉驗證,方法如下:首先隨機地將已給數據切分為S個互不相交的大小相同的子集;然后利用S-1個子集的數據訓練模型,利用余下的子集測試模型;將這一過程對可能的S種選擇重復進行;最后選出S次評測中平均測試誤差最小的模型。
3、留一交叉驗證
S折交叉驗證的特殊情形是S==N,稱為留一交叉驗證,往往在數據缺乏的情況下使用,這里,N是給定數據集的容量。
-
機器學習
+關注
關注
66文章
8428瀏覽量
132831
發布評論請先 登錄
相關推薦
評論