2015-02-09 42 views
4

randomForest包是否忽略nodesize參數?當我預測數據集的終端節點並檢查計數時,我看到的值小於nodesize。我會自己提交一個修復程序,但底層代碼是用Fortran編寫的。如果有人可以證實這種行爲,我會聯繫包維護者,並希望開始修復。randomForest包中忽略nodesize參數

> library(randomForest) 
> set.seed(1) 
> rf <- randomForest(mtcars[,-1], mtcars[,1], nodesize = 5) 
> nodes <- attr(predict(rf, mtcars[,-1], nodes = TRUE), 'nodes') 

# node counts of first tree 
> table(nodes[,1]) 

# first row is the terminal node ID#, second row is the count 
2 6 9 10 11 14 15 16 18 19 
5 3 3 6 4 2 3 1 3 2 

添加系統信息:從包維護者

Session info---------------------------------------------------------------- 
setting value      
version R version 3.1.1 (2014-07-10) 
system x86_64, mingw32    
ui  RStudio (0.98.1049)   
language (EN)       
collate English_United States.1252 
tz  America/Chicago    

Packages-------------------------------------------------------------------- 
package  * version date  source   
randomForest * 4.6.10 2014-07-17 CRAN (R 3.1.1) 
+0

你聽到從包維護什麼?我有同樣的問題... – User7598 2015-03-24 16:50:42

+1

他告訴我,它是由Breiman和Cutler編寫的原始規範,他只會改變文檔。爲了解決這個問題,我通過預測和放棄落在節點舒適度以下的節點來後處理RF。 – Zelazny7 2015-03-24 17:25:02

回答

0

響應:

該參數表現爲萊奧·佈雷曼預期的方式。錯誤 在於如何描述參數。這是一樣minsplit在 的rpart:::rpart.control()功能:

必須存在於一個節點,以便 的一瞬間被嘗試觀測的最小數量。

我將在下一個版本的幫助文件中的說明更改爲 解決此混淆。

最好的,安迪