Cross-Validation

隨機森林不需要交叉驗證嗎?

  • June 6, 2017

說隨機森林不需要交叉驗證(k-fold 或其他)是否公平?我讀到就是這種情況,因為我們可以查看現成的性能指標,而這些指標也在做同樣的事情。

請幫助我在 RF 的背景下理解這一分類問題。謝謝!

是的,隨機森林的袋外性能與交叉驗證非常相似。本質上,您得到的是使用較少樹的替代隨機森林留一。所以如果做得正確,你會得到輕微的悲觀偏見。確切的偏差和方差屬性將與外部交叉驗證您的隨機森林有所不同。

與交叉驗證一樣,正確性的關鍵點(即輕微的悲觀偏差,而不是大的樂觀偏差)是隱含的假設,即您的數據的每一行都是一個獨立的案例。如果不滿足這個假設,袋外估計將過於樂觀(就像“普通”交叉驗證一樣)——在這種情況下,建立一個分成獨立組的外部交叉驗證可能會容易得多而不是讓隨機森林處理這種依賴結構。


假設您在行之間具有這種獨立性,您可以使用隨機森林的袋外性能估計,就像相應的交叉驗證估計一樣:作為泛化誤差的估計或用於模型調整(@horaceT 提到的參數或例如提升) . 如果您將它用於模型調整,一如既往,您需要對最終模型的泛化誤差進行另一個獨立估計。

話雖如此,樹的數量和變量的數量都相當容易修復,因此隨機森林是我考慮的模型之一,其樣本量對於數據驅動的模型調整來說太小了。

  • 預測誤差不會隨著樹木數量的增加而增加——它只是在某個時候不會進一步減少。因此,您只需投入更多的計算時間就可以了。
  • 每棵樹中要考慮的變量數量取決於您的數據,但恕我直言,也不是很關鍵(從某種意義上說,您可以例如使用具有類似數據的先前應用程序的經驗來修復它)。
  • 葉大小(用於分類)通常再次保留為 1 - 這再次不會消耗泛化性能,而只是計算時間和內存。

引用自:https://stats.stackexchange.com/questions/283760

comments powered by Disqus