使用隨機森林算法時用到了交叉驗證,突然陷入沉思,有測試集的情況下用交叉驗證做什么?整理思路如下:
1、訓練集,顧名思義,就是拿來訓練模型的數據集,通過這個數據訓練得到模型的參數;
2、驗證集,可以用來做超參數的選取與模型的選取,在沒有測試集的情況下也可以評價模型的性能。
3、測試集,用來評價模型的效果。
總結:驗證集只是參與模型的選取或者超參數的選取等等,交叉驗證雖然做了多個模型,但是實際最終的模型與這多個模型無關,還是用的所有樣本訓練的。個人理解是如果不涉及到超參數的選取,可以不做交叉驗證,即不划分專門的驗證集,就拿所有的訓練集和驗證集建模即可。測試集只是用來評價模型的效果,最終的模型還是用全部樣本訓練的。
注:
參數:就是模型可以根據數據可以自動學習出的變量,應該就是參數。比如,深度學習的權重,偏差等
超參數:就是用來確定模型的一些參數,超參數不同,模型是不同的(比如說:假設都是CNN模型,如果層數不同,模型不一樣,雖然都是CNN模型。),超參數一般就是根據經驗確定的變量。在深度學習中,超參數有:學習速率,迭代次數,層數,每層神經元的個數等等。