r - R ranger 包中的预测概率
问题描述
我正在尝试使用随机森林分类在 R 中构建模型。(通过 Ned Horning 编辑代码)我首先使用randomForest
package 但后来 found ranger
,它承诺更快的计算。
起初,我使用下面的代码在拟合模型后获得每个类的预测概率randomForest
:
predProbs <- as.data.frame(predict(randfor, imageBlock, type='prob'))
这里的概率类型如下:
我们在模型中有 500 棵树,其中 250 棵表示观察结果为 1 类,因此概率为 250/500 = 50%
在ranger
,我意识到没有type = 'prob'
选择。
我搜索并尝试了一些调整,但没有任何进展。我需要一个包含上面提到的概率的对象ranger
。
有人可以就这个问题提供一些建议吗?
解决方案
您需要训练“概率分类器”类型的ranger
对象:
library("ranger")
iris.ranger = ranger(Species ~ ., data = iris, probability = TRUE)
此对象在函数中使用时计算矩阵 (n_samples, n_classes) predict.ranger
:
probabilities = predict(iris.ranger, data = iris)$predictions
推荐阅读
- swift - CLLocation 和时间戳
- docker - Docker Tomcat 记录到 catalina.out 和控制台
- typescript - 你如何在同一个事件发射器中处理多种类型-Typescript
- vba - VBA - 根据标题复制粘贴值
- android - google_play_services_version 没有正确的值
- stripe-payments - Stripe Connect API - 如何检索已连接帐户的状态?
- javascript - 将带有双引号的字符串字段从烧瓶传递到javascript
- portaudio - sounddevice.PortAudioError:打开 OutputStream 时出错:内部 PortAudio 错误 [PaErrorCode -9986]
- python - fastapi - 可选的 OAuth2 身份验证
- vue.js - v-on 处理程序中的错误(Promise/async):“TypeError:无法读取未定义的属性‘个人’”