r - 派对包R中的条件推理树:如何根据OOB数据预测模型和方差重要性?
问题描述
我使用Rcforest
中的party
包来计算条件推理树。与随机森林类似,我想检索解释的方差和基于OOB
数据的方差重要性(我读到随机森林返回解释的方差和基于 OOB 数据的变量重要性)。为此,cforest
我使用了以下代码:
model <- party::cforest(y ~ x1 + x2 + x3 + x4 , data=trainings_set , control=cforest_unbiased(ntree=1000, minsplit=25 , minbucket=8 , mtry=4))
model.pred <- predict(model, type="response" , OOB=TRUE)
R2=1 - sum((trainings_set$y-model.pred)^2)/sum((trainings_set$y-mean(trainings_set$y))^2)
varimp_model=party::varimp(model, conditional = TRUE, threshold = 0.2, OOB = TRUE)
我对命令是否OOB=TRUE
会导致模型被预测并根据OOB data
trainings_set 返回变量重要性感兴趣?
我之前以不同的标题发布了这个问题,再次发布(稍微重新起草),我希望有人能够提供答案?
解决方案
函数中的OOB
参数cforest
是 for a logical defining out-of-bag predictions
。
这仅TRUE
在您传递通常是测试数据框的newdata
参数时。cforest
如果newdata
参数在那里并且你已经设置OOB=TRUE
,那么你会得到out-of-bag predictions
这个newdata
。
我希望这能澄清你的疑问。
推荐阅读
- tensorflow - 将多个 tfrecord 设置到 Tensorflow 对象检测 API 的配置文件中
- ansible - 如何在外部定义未命名的项目列表
- python - 从 PyQt5 中的 QGraphicsScene 中选择项目
- angular - 在 Angular 6 中应用 DomSanitizationService
- java - 为什么使用 ExecutorCompletionService 的 Spring Boot 中的线程不会并行启动?
- sql - 在 SQL Server 的列中为某些值添加前导零
- sql - 我们可以通过游标从表中获取记录,然后通过远程包调用将这些记录插入到远程表中吗?
- php - 教义 - 带有额外列的关联表,插入问题
- sql - 是否可以在表格链接中使用 OR 而不是 AND
- angular - 指令@Input 在测试中始终未定义