R ranger 包中的预测概率

Posted

技术标签:

【中文标题】R ranger 包中的预测概率【英文标题】:Predicted probabilities in R ranger package 【发布时间】:2019-09-03 09:31:32 【问题描述】:

我正在尝试在 R 中使用随机森林分类构建模型。 (通过 Ned Horning 编辑代码)我首先使用了 randomForest 包,但后来发现 ranger,它承诺更快的计算。

一开始,我使用下面的代码在用randomForest 拟合模型后得到每个类的预测概率为:

predProbs <- as.data.frame(predict(randfor, imageBlock, type='prob'))

这里的概率类型如下:

我们在模型中有 500 棵树,其中 250 棵表示观察结果为 1 类,因此概率为 250/500 = 50%

ranger 中,我意识到没有type = 'prob' 选项。

我搜索并尝试了一些调整,但没有任何进展。我需要一个包含上面提到的ranger 包的概率的对象。

有人可以就这个问题提供一些建议吗?

【问题讨论】:

【参考方案1】:

你需要训练一个“概率分类器”类型的ranger对象:

library("ranger")
iris.ranger = ranger(Species ~ ., data = iris, probability = TRUE)

此对象在predict.ranger 函数中使用时计算一个矩阵(n_samples, n_classes):

probabilities = predict(iris.ranger, data = iris)$predictions

【讨论】:

以上是关于R ranger 包中的预测概率的主要内容,如果未能解决你的问题,请参考以下文章

使用R中的RMS包预测生存?

R语言的ARIMA模型预测

未找到预测包中的 R forecast.holtwinters

使用 R 中“rpart”包中的生存树来预测新的观察结果

当我尝试预测 R 中的类别概率时出错 - 插入符号

如何使用 Ranger 按类别获取特征重要性?