驗證集

驗證集

在機器學習中,一般將樣本分成獨立的三部分訓練集(train set),驗證集(validation set)和測試集(test set)。其中,測試集用來檢驗最終選擇最優的模型的性能如何。

目錄

正文


在機器學習和模式識別等領域中,一般需要將樣本分成獨立的三部分訓練集(train set),驗證集(validation set ) 和測試集(test set)。其中訓練集用來估計模型,驗證集用來確定網路結構或者控制模型複雜程度的參數,而測試集則檢驗最終選擇最優的模型的性能如何。一個典型的劃分是訓練集佔總樣本的50%,而其它各佔25%,三部分都是從樣本中隨機抽取。
但是,當樣本總量少的時候,上面的劃分就不合適了。常用的是留少部分做測試集。然後對其餘N個樣本採用K折交叉驗證法。就是將樣本打亂,然後均勻分成K份,輪流選擇其中K-1份訓練,剩餘的一份做驗證,計算預測誤差平方和,最後把K次的預測誤差平方和再做平均作為選擇最優模型結構的依據。特別的K取N,就是留一法(leave one out) 。