首页 > 解决方案 > 派对包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 datatrainings_set 返回变量重要性感兴趣?

我之前以不同的标题发布了这个问题,再次发布(稍微重新起草),我希望有人能够提供答案?

标签: rmachine-learningrandom-forest

解决方案


函数中的OOB参数cforest是 for a logical defining out-of-bag predictions

这仅TRUE在您传递通常是测试数据框的newdata参数时。cforest如果newdata参数在那里并且你已经设置OOB=TRUE,那么你会得到out-of-bag predictions这个newdata

我希望这能澄清你的疑问。


推荐阅读