R

在 CART 中選擇複雜度參數

  • October 9, 2012

在創建 CART 模型的 rpart() 例程中,您指定要修剪樹的複雜度參數。我已經看到了兩種不同的選擇複雜度參數的建議:

  1. 選擇與最小可能的交叉驗證錯誤相關的複雜性參數。Quick-R和 HSAUR推薦使用此方法。
  2. 選擇其估計的交叉驗證誤差仍在最小可能交叉驗證誤差的 SE 內的最大復雜度參數。這是我對包文檔的解釋,其中說:“用於修剪的 cp 的一個好的選擇通常是平均值位於水平線下方的最左邊的值”,參考此圖

cp 的兩種選擇在我的數據集中產生了完全不同的樹。

似乎第一種方法總是會產生更複雜、可能過度擬合的樹。是否還有其他優點、缺點、文獻中的建議等。在決定使用哪種方法時我應該考慮到這些?如果有用的話,我可以提供有關我的特定建模問題的更多信息,但我試圖使這個問題足夠廣泛,以便與其他人相關。

在實踐中,我已經看到兩種方法都採用了,我認為通常你的結果不會有太大差異。

話雖如此,Hastie 等人在Elements of Statistical Learning推薦了“單一標準錯誤”規則,我傾向於相信他們的判斷(我的版本中的第 7.10 節,第 244 頁)。相關報價為:

“一個標準誤差”規則通常與交叉驗證一起使用,在該規則中,我們選擇最簡潔的模型,其誤差不超過最佳模型誤差的一個標準誤差。”

您對為什麼要遵循單一標準錯誤規則的直覺是正確的 - 您會這樣做以避免選擇過度擬合數據的模型。

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

comments powered by Disqus