我使用Caret训练我的模型(二进制分类任务)。我如何确保train()不训练精度度量,而是根据特异性(TN /(TN + FP))度量标准?
什么适用于准确性:
control <- trainControl(method="cv", number=10)
metric <- "Accuracy"
set.seed(7)
fit.svm <- train(target_var ~., data=dataset, method="svmRadial", metric=metric, trControl=control)
无法改变:
metric = "Specificity"
有谁知道如何训练模型以优化特异性?
KR, Arnand
答案 0 :(得分:2)
尝试在summaryFunction
内twoClassSummary
和trainControl
以及classProbs = TRUE
内metric = "Spec"
指定train()
参数:
control <- trainControl(method="cv",
number=10,
summaryFunction = twoClassSummary,
classProbs = TRUE)
fit.svm <- train(target_var ~.,
data=dataset,
method="svmRadial",
metric="Spec",
trControl=control)