条件推断树在R语言party包中的应用:如何基于OOB数据预测模型和变量重要性?

我在R语言中使用party包的cforest函数来计算条件推断树。与随机森林类似,我想获取基于OOB数据的解释方差和变量重要性(我读到随机森林会返回基于OOB数据的解释方差和变量重要性)。为此,我使用了以下代码:

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数据返回?

我之前在不同的标题下发布过这个问题,现在重新发布(稍作修改),希望有人能提供答案?


回答:

cforest函数中的OOB参数用于定义袋外预测的逻辑值。

只有当你在cforest中传递newdata参数时(通常是一个测试数据框架),这个参数才为TRUE。如果newdata参数存在并且你设置了OOB=TRUE,那么你将在这个newdata上获得袋外预测

希望这能解答你的疑问。

Related Posts

如何对SVC进行超参数调优?

已关闭。此问题需要更加聚焦。目前不接受回答。 想要改进…

如何在初始训练后向模型添加训练数据?

我想在我的scikit-learn模型已经训练完成后再…

使用Google Cloud Function并行运行带有不同用户参数的相同训练作业

我正在寻找一种方法来并行运行带有不同用户参数的相同训练…

加载Keras模型,TypeError: ‘module’ object is not callable

我已经在StackOverflow上搜索并阅读了文档,…

在计算KNN填补方法中特定列中NaN值的”距离平均值”时

当我从头开始实现KNN填补方法来处理缺失数据时,我遇到…

使用巨大的S3 CSV文件或直接从预处理的关系型或NoSQL数据库获取数据的机器学习训练/测试工作

已关闭。此问题需要更多细节或更清晰的说明。目前不接受回…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注