Cross-Validation
交叉驗證技術綱要
我想知道是否有人知道交叉驗證技術的概要,其中討論了它們之間的差異以及何時使用它們的指南。維基百科列出了最常用的技術,但我很好奇是否還有其他技術,以及它們是否有分類法。
例如,我剛剛遇到一個允許我選擇以下策略之一的庫:
- 堅持
- 引導程序
- K 交叉驗證
- 留一個
- 分層交叉驗證
- 平衡分層交叉驗證
- 分層堅持
- 分層引導
我試圖理解分層和平衡在引導、堅持或 CV 中的含義。
如果人們願意,我們也可以把這篇文章變成一個社區維基,並在這裡收集關於技術或分類的討論。
您可以添加到該列表:
- 重複交叉驗證
- 離開組交叉驗證
- 袋外(用於隨機森林和其他袋裝模型)
- 632+引導程序
至於如何使用這些技術或何時使用它們,我並沒有太多的建議。您可以使用 R 中的caret包來比較 CV、Boot、Boot632、leave-one-out、leave-group-out 和 out-of-bag 交叉驗證。
通常,我通常使用 boostrap,因為它的計算強度低於重複 k 倍 CV 或留一法 CV。Boot632 是我選擇的算法,因為它不需要比引導程序更多的計算,並且在某些情況下比交叉驗證或基本引導程序更好。
我幾乎總是對隨機森林使用袋外誤差估計,而不是交叉驗證。袋外錯誤通常是無偏的,隨機森林需要足夠長的時間來計算。