使AUC成为优化培训的指标

时间:2015-05-07 11:15:39

标签: r random-forest r-caret training-data

我的数据集中有2个级别因子结果变量

str(as.factor(train2$outcome))
 Factor w/ 2 levels "0","1": 1 1 1 1 2 1 2 1 1 1 ...

当我使用具有默认度量的火车功能来优化evrt时似乎没问题。

cvCtrl <- trainControl(method="repeatedcv", number=3, repeats=5,classProb = TRUE)
modelFit <- train(as.factor(outcome) ~., data=train2, method="rf", trControl =cvCtrl)

但我想优化AUC。所以我使用这段代码

cvCtrl <- trainControl(method="repeatedcv", number=3, repeats=5, summaryFunction = twoClassSummary,classProb = TRUE)
modelFit <- train(as.factor(outcome) ~., data=train2, method="rf", trControl =cvCtrl, metric="ROC")

我收到一个错误:

Error in train.default(x, y, weights = w, ...) : 
  final tuning parameters could not be determined

我做错了什么?

1 个答案:

答案 0 :(得分:0)

您是否看到了警告

  

At least one of the class levels are not valid R variables names; This may cause errors if class probabilities are generated because the variables names will be converted to ...

使用01作为因素级别​​是一个坏主意和错误的来源。

最高