如何在mlr中使用multiclass.au1p测量

时间:2017-04-12 20:28:49

标签: r auc mlr multiclass-classification

我正在尝试在mlr包中使用multiclass.au1p度量。它给我一个错误说

  

FUN中的错误(X [[i]],...):测量multiclass.au1p需要   预测类型为:' prob'!

当我尝试将预测类型设置为prob时,它为我提供了类似于以下任何使用的分类器的错误

  

setPredictType.Learner(learner,predict.type)中的错误:尝试   预测probs,但classif.xgboost.multiclass不支持!

我该如何解决这个问题?

以下是我的代码

UPDATE `textbooks` 
SET `isbns` = '{"HE":[{"isbn":"9781337763639","type":"Single Term HW & eBook University"}],"HS":[]}'
WHERE `id` = 939;

2 个答案:

答案 0 :(得分:4)

它不适用于makeMulticlassWrapper,因为这不支持概率预测(目前)。当我尝试在代码中将其设置为prob时,我也会收到错误。

有效的代码:

Clslearn = makeLearner("classif.xgboost", predict.type = "prob")
rdesc = makeResampleDesc("CV", iters = 3)
r = resample(Clslearn, iris.task, rdesc, measures = list(mlr::acc, mlr::multiclass.au1p, mlr::multiclass.au1u))

答案 1 :(得分:2)

您需要使用支持预测概率的分类器。您可以获得包含listLearners()功能的列表:

listLearners(properties = "prob")