在二元分类器上选择边界以优化精度和召回率

数据挖掘 scikit-学习 逻辑回归 分类器
2021-09-27 05:14:26

我有一个逻辑回归分类器,它显示了不同概率边界处的精度和召回率的不同性能水平,如下所示:

在此处输入图像描述

分类器决定某物属于哪个类的默认阈值为 0.5。但是,我是否正确理解为了获得最佳的性能权衡,我应该将决策边界设置为以下约 0.82?这可以在 Scikit-Learn 中完成,但我想确保我得出正确的结论。任何意见,将不胜感激。

1个回答

准确率和召回率曲线的交点当然是一个不错的选择,但它不是唯一可能的选择。

选择主要取决于应用程序:在某些应用程序中具有很高的召回率是至关重要的(例如火警系统),而在其他一些应用程序中,精度更为重要(例如,决定某人是否需要有风险的医疗)。当然,如果你的应用需要高召回率,你会选择 0.6 之前的阈值,如果它需要高精度,你会选择 0.85-0.9 左右的阈值。

如果这些情况都不适用,人们通常会选择一个评估指标来优化:F1-score 将是一个常见的指标,有时是准确度(但如果存在严重的类不平衡,则不要使用准确度)。F1-score 可能在两条曲线相交的点附近是最佳的,但不确定:例如它可能在 0.8 之前,当召回率缓慢下降而精度快速提高时(这只是一个例子,我当然不确定)。

我的观点是,即使在这种情况下这是一个完全合理的选择,通常也没有特别的理由自动选择精确度和召回率相等的点。