如何优化插入符号的灵敏度

数据挖掘 机器学习 r
2022-03-03 20:02:11

我目前正在使用优化准确性的插入符号。是否可以针对灵敏度进行优化。我看到文档提到 metric = 'roc' 已被使用,但敏感性似乎不是选项之一。

2个回答

大概。这取决于您到底在做什么,特别是您正在使用哪个 summaryFunction 。如果它是用于常见二进制分类的 twoClassSummary,那么您应该可以指定metric='Sensitivity'. 如果不是这种情况,您还可以选择使用您自己的实现来覆盖默认性能 summaryFunction 来计算您想要的指标。

我强烈建议阅读http://topepo.github.io/caret/training.html#control上的文档

只要你有:

summaryFunction = twoClassSummary

在您设置的trainControl对象中,您可以设置:

metric = "Sens"  # or "ROC" or "Spec" whichever you desire

当您拟合模型时:

control <- trainControl(method = "repeatedcv", number = 5, repeats = 5, 
                        summaryFunction = twoClassSummary, classProbs = T, 
                        savePredictions = "final")

logreg.fit <- train(Class ~., data = training_data, method = "glm",
                    family = "binomial", trControl = control, metric = "Sens")

Max 在他的书中提到,针对灵敏度调整模型可能会通过调整模型以优化其来揭示该指标的改进,即您可能能够拟合具有改进的灵敏度的模型,该模型在特异性方面具有非常小的(如果有的话)折衷。这是数据中类别不平衡的特殊情况。