1. 程式人生 > >測試集和驗證集的區別

測試集和驗證集的區別

訓練資料(Test Data):用於模型構建
驗證資料(Validation Data):可選,用於輔助模型構建,可以重複使用。
測試資料(Test Data):用於檢測模型構建,此資料只在模型檢驗時使用,用於評估模型的準確率。絕對不允許用於模型構建過程,否則會導致過渡擬合。

 實際上,兩者的主要區別是:驗證集用於進一步確定模型中的超引數(例如正則項係數、ANN中隱含層的節點個數等)而測試集只是用於評估模型的精確度(即泛化能力)!
 
舉個例子:假設建立一個BP神經網路,對於隱含層的節點數目,我們並沒有很好的方法去確定。此時,一般將節點數設定為某一具體的值,通過訓練集訓練出相應的引數後,再由交叉驗證集去檢測該模型的誤差;然後再改變節點數,重複上述過程,直到交叉驗證誤差最小。此時的節點數可以認為是最優節點數,即該節點數(這個引數)是通過交叉驗證集得到的。而測試集是在確定了所有引數之後,根據測試誤差來評判這個學習模型的;也可以說是用來評估模型的泛化能力。所以,驗證集主要主要是用於模型的調參。