关于使用随机森林的训练结果制作ROC曲线

时间:2017-05-30 09:45:28

标签: r random-forest roc

我正在使用插入包的列车功能来制作如下的随机森林模型。

control <- trainControl(method="repeatedcv", number=10, repeats=5)
model <- train(BM~., data=cadrenal, method="rf", preProcess="scale", trControl=control)enter code here
BM是分类行,呈现B(良性)或M(恶性)。 对于这个模型,准确度不如下面那么高。

Random Forest 

77 samples
 4 predictor
 2 classes: 'B', 'M' 

Pre-processing: scaled (4) 
Resampling: Cross-Validated (10 fold, repeated 5 times) 
Summary of sample sizes: 69, 69, 69, 70, 69, 70, ... 
Resampling results across tuning parameters:

  mtry  Accuracy   Kappa    
  2     0.7728571  0.4858102
  3     0.7650000  0.4708351
  4     0.7678571  0.4724770

准确度用于使用最大值选择最佳模型。 模型使用的最终值为mtry = 2

然后,我尝试使用此模型制作ROC,如下所示。

cadrenal$malignancy <- factor(1*(cadrenal$BM == 'M'))
pre = predict(model, type='prob')
perf = prediction(pre[,2], cadrenal$malignancy)
pred = performance(perf, "tpr","fpr")
plot(pred,main="ROC Curve for Random Forest",col=2,lwd=2)

然后,尽管模型的准确性很低,但我得到的AOC为1的ROC曲线。

有人教我制作ROC曲线有什么问题吗?

0 个答案:

没有答案
相关问题