1. 程式人生 > 其它 >訓練集、驗證集、測試集的區別與聯絡

訓練集、驗證集、測試集的區別與聯絡

使用隨機森林演算法時用到了交叉驗證,突然陷入沉思,有測試集的情況下用交叉驗證做什麼?整理思路如下:

1、訓練集,顧名思義,就是拿來訓練模型的資料集,通過這個資料訓練得到模型的引數;

2、驗證集,可以用來做超引數的選取與模型的選取,在沒有測試機的情況下也可以評價模型的效能。

3、測試集,用來評價模型的效果。

總結:驗證集只是參與模型的選取或者超引數的選取等等,交叉驗證雖然做了多個模型,但是實際最終的模型與這多個模型無關,還是用的訓練集+驗證集訓練的,個人理解是如果不涉及到超引數的選取,可以不做交叉驗證,即不劃分專門的驗證集,就拿所有的訓練集和驗證集建模即可。

注:

引數:就是模型可以根據資料可以自動學習出的變數,應該就是引數。比如,深度學習的權重,偏差等

超引數:就是用來確定模型的一些引數,超引數不同,模型是不同的(比如說:假設都是CNN模型,如果層數不同,模型不一樣,雖然都是CNN模型。),超引數一般就是根據經驗確定的變數。在深度學習中,超引數有:學習速率,迭代次數,層數,每層神經元的個數等等。