如何切换 ROC 曲线以优化假阴性率?

How can I switch the ROC curve to optimize false negative rate?

ROC 曲线绘制 TPR 与 FPR,并根据训练集概率的排序改变阈值。选择的阈值是与最左上角的点相关联的概率。这基本上最大化了 TPR 并最小化了误报率。

但是,假设我的应用程序谈到了最小化漏报率?那么这条曲线会如何变化呢?两者之间的平衡如何?

在我看来,您对 ROC 曲线是什么有些误解。

随着阈值的变化,ROC 曲线绘制了 TPR 与 FPR。因此,ROC 曲线实际上是 3 维图,绘制了 3 个变量之间的关系:FPR、TPR 和阈值。图表上的每个点都反映了特定阈值的实际 TPR 和 FPR。图的左下角始终反映阈值 1,而右上角反映阈值 0。

ROC 曲线通常有两个用途:比较两个独立于阈值的不同模型,以及帮助 select 确定正确的阈值。预测分析应用程序的 "proper threshold" 会根据您要解决的具体问题而有很大差异,但一般来说,您可以使用 ROC 曲线来选择一个阈值,该阈值具有可接受的 TPR/FPR 权衡您的具体应用。简单地选择最接近左上角的点的阈值很少会给出理想的结果。

一旦您从 ROC 曲线中选择了一个看起来很理想的阈值,您可以调查混淆矩阵和其他评估指标(精度、召回率、准确性、F1 等)以进一步评估阈值。

为了回答您的直接问题,您认为 ROC 曲线没有直接显示 FNR 是正确的。在这种情况下,您可能需要使用 Sensitivity/Specificity 图表,该图表以类似于 ROC 曲线的方式绘制 TPR 与 TNR 的关系。据我所知,没有直接针对 FNR 的标准评估方法。相反,我通常只是切换数据中的 "positive" 和 "negative" 标签并重新绘制 ROC 曲线。这给出了(有效地)TNR vs FNR。

However, lets say my application talks about minimizing false negative rate? Then how would this curve change?

这条曲线将保持完全相同。但是您将不再选择左上角的点(picture). Instead, you would try to maximize true positive rate (1-FNR). 中的左圆圈如果您将所有点都指定为正数,这将真正最大化。因为这违反了分类(=是愚蠢的),您会选择一个更接近ROC 的右上角(图中右侧)。

How about a balance between the two?

左上角和右上角之间的一点(图片中间)