[英]Using randomForest package in R, how to map Random forest prediction?
[英]Turning a Random Forest into a Decision Tree - Using randomForest package in R
是否可以生成决策树的树完全相同? 请注意,这是一个实验性问题。 据我了解,与单个决策树相比,随机森林具有两个导致“随机性”的参数:
1)在决策树的每个节点上随机采样的要素数量,以及
2)绘制一些训练示例来创建树。
直观地讲,如果我将这两个参数设置为其最大值,则应避免使用“随机性”,因此,每个创建的树都应该完全相同。 因为所有树木都是完全相同的,所以无论森林中树木的数量或不同的行径(即不同的种子值),我都应该获得相同的结果。
我已经使用R中的randomForest库测试了这个想法。我认为上述两个参数分别对应于'mtry'和'sampsize'。 我将这些值设置为最大值,但是不幸的是,仍然存在一些随机性,因为OOB误差估计值取决于森林中树木的数量?
您能否帮助我理解如何充分地使用R中的randomForest库的参数来消除随机决策林中的所有随机性?
除了mtry和sampsize之外,randomForest()中还有另一个相关的参数:replace。 默认情况下,通过替换来完成用于生长每棵树的数据点的采样。 如果要在所有树中使用所有数据点,则不仅需要将sampsize设置为数据点的数量,还需要设置replace = FALSE。
这是一个玩具示例,展示了您可以得到一棵相同树木的森林:
库(随机森林)
set.seed(17)
x <-矩阵(sample(5,50,replace = TRUE),10,5)
y <-factor(sample(2,10,replace = TRUE))
rf1 <-randomForest(x,y,mtry = ncol(x),sampsize = nrow(x),replace = FALSE,ntree = 5)
然后,可以使用getTree(rf1,1)等检查所有树是否相同。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.