了解 ROC 曲线和 AUC 如何评估 AI/ML 中的分类器性能,从而优化 TPR 与 FPR,以用于欺诈检测和医疗诊断等任务。
接收者操作特征 (ROC) 曲线是一个图形图,它说明了二元分类模型在其判别阈值变化时的诊断能力。它是机器学习 (ML)中用于评估和比较分类器性能的基本工具。该曲线是通过在各种阈值设置下绘制真阳性率 (TPR) 与假阳性率 (FPR) 来创建的,从而全面了解模型在所有可能的分类阈值下的性能。这使其成为理解监督学习任务中灵敏度和特异性之间权衡的宝贵资产。
要理解 ROC 曲线的概念,必须先了解它的两个轴:
分类模型通常为每个实例输出一个概率或置信度分数。然后将阈值应用于此分数以做出最终的二元决策(例如,肯定或否定)。ROC 曲线是通过系统地将此阈值从 0 变为 1,并绘制每个值的 TPR 和 FPR 对而生成的。通常可以使用 TensorBoard 等工具或通过 Ultralytics HUB 等平台来可视化模型性能。
ROC 曲线的形状和位置揭示了模型性能的大量信息。
从 ROC 曲线得出的一个常见指标是曲线下面积 (AUC)。AUC 表示分类器将随机选择的阳性实例排在随机选择的阴性实例之上的概率。AUC 为 1.0 表示完美模型,而 AUC 为 0.5 对应于随机模型。这个单一的标量值对于比较不同的模型很有用。
ROC曲线被广泛应用于各个行业,以评估和选择用于部署的最佳模型。
医疗诊断: 在医学图像分析中,深度学习模型可能经过训练以检测乳房X光照片中的癌症。ROC曲线可帮助放射科医生和工程师评估模型区分恶性肿瘤和良性肿瘤的能力。通过分析曲线,他们可以选择一个分类阈值,该阈值可以平衡检测尽可能多的癌症的需求(高TPR)与因误报而导致不必要活检的风险(低FPR)。这是负责任的AI开发中的关键一步,并确保模型符合FDA等机构设定的临床标准。
信用卡欺诈检测: 金融机构使用机器学习模型来实时识别欺诈交易。可以使用 ROC 曲线来评估模型区分欺诈交易和合法交易的效果。银行可以使用该曲线来选择一个阈值,该阈值可以最大限度地检测欺诈行为,同时最大限度地减少被错误拒绝的合法交易数量,从而避免引起客户不满。这有助于构建强大的金融领域人工智能系统。
虽然 ROC 曲线功能强大,但务必了解它们与其他评估指标的不同之处。
准确率: 此指标可能会产生误导,尤其是在一个类别占主导地位的不平衡数据集中。通过简单地预测多数类别,模型可以实现高准确率。ROC 曲线和 AUC 提供了独立于阈值的视图,在这种情况下更稳健。
精确率和召回率: 这些指标侧重于正类的性能。精确率衡量正预测的准确性,而召回率 (TPR) 衡量实际正例的覆盖率。F1 分数结合了这些,但仍然依赖于特定的阈值。 相比之下,ROC 曲线评估所有阈值下 TPR 和 FPR 之间的权衡。 对于负类庞大且几乎不感兴趣的任务,精确率-召回率曲线可能更具参考价值。
mAP 和 IoU: ROC 曲线专为二元分类而设计。对于更复杂的任务,如目标检测或实例分割(Ultralytics YOLO 等模型常见),其他指标是标准指标。平均精度均值 (mAP)和交并比 (IoU)用于评估分类和定位的准确性。有关更多详细信息,请参阅我们的 YOLO 性能指标指南。可以使用 PyTorch 或 TensorFlow 等框架可视化这些指标。