首页 > 解决方案 > caret::train 包中 type = 'prob' 参数的问题

问题描述

我正在训练一个随机森林模型来caret基于 3 个分类变量对光栅图像进行分类。我有兴趣获得这三个类别的班级成员概率。这可以使用来完成,type = 'prob'但问题是我得到的只是一个单一的概率图像,范围从 0 到 1。

model_rf <- caret::train(xVar ~ . , method = "rf", data = dt_train,importance = TRUE, type="prob")
predict_p_rf <- raster::predict(object = image.x, model = model_rf,类型 = '概率')

我的问题,1.有没有办法在三个单独的输出中获得这三个类别的类成员概率?2. 概率图像代表什么,因为它的范围从 0 到 1,而存在三个不同的类别。我不确定更高的值(例如 1)是否代表现有类别/类别中的更高成员资格。

标签: rrandom-forestcaret

解决方案


这更顺畅,terra::predictraster::predict您可以使用index参数来指定您想要的输出变量。

predict_p_rf <- predict(image.x, model_rf, type = 'prob', index=1:3)

?raster::predict

数据表示属于特定类别的预测概率(0 是最低概率,1 是最高概率)。


推荐阅读