一文理解机器学习中二分类任务的评价指标 AUPRC 和 AUROC

🍉 CSDN 叶庭云:https://yetingyun.blog.csdn.net/


在机器学习的二分类任务中,评估模型性能是至关重要的一步。两种常用的评价指标是 Precision-Recall Curve 下的面积 (AUPRC)Receiver Operating Characteristic Curve 下的面积 (AUROC)。本博客将深入分析这两种评价指标,包括它们的定义、计算方法、优缺点,以及在实际应用中的适用场景。

一、基本定义

1.1 Receiver Operating Characteristic Curve 和 AUROC

ROC 曲线 是一种通过绘制真正例率(True Positive Rate, TPR)与假正例率(False Positive Rate, FPR)来评估分类模型性能的图形工具。AUROC 则是 ROC 曲线下的面积,取值范围为 0 到 1,值越大表示模型性能越好

  • 真正例率 (TPR):也称为召回率,计算公式为:

    TPR = TP TP + FN \text{TPR} = \frac{\text{TP}}{\text{TP} + \text{FN}} TPR=TP+FNTP

  • 假正例率 (FPR):计算公式为:

    FPR = FP FP + TN \text{FPR} = \frac{\text{FP}}{\text{FP} + \text{TN}} FPR=FP+TNFP

1.2 Precision-Recall Curve 和 AUPRC

Precision-Recall Curve 通过绘制查准率(Precision)与召回率(Recall)来评估模型性能。AUPRC 是查准率 - 召回率曲线下的面积,同样取值范围为 0 到 1,值越大表示模型性能越好。

  • 查准率 (Precision):计算公式为:

    Precision = TP TP + FP \text{Precision} = \frac{\text{TP}}{\text{TP} + \text{FP}} Precision=TP+FPTP

  • 召回率 (Recall)

    TPR = TP TP + FN \text{TPR} = \frac{\text{TP}}{\text{TP} + \text{FN}} TPR=TP+FNTP

二、计算方法

2.1 ROC 曲线和 AUROC 的计算

  1. 阈值选择:模型输出通常为概率或评分,通过设定不同的阈值,将概率转化为二分类结果。
  2. 计算 TPR 和 FPR :对于每一个阈值,计算对应的TPR 和 FPR
  3. 绘制曲线:以 FPR 为横轴,TPR 为纵轴,绘制不同阈值下的点,连接成 ROC 曲线。
  4. 计算面积:AUROC 通过数值积分等方法计算 ROC 曲线下的面积。

2.2 Precision-Recall 曲线和 AUPRC 的计算

  1. 阈值选择:与 ROC 曲线相同。
  2. 计算 Precision 和 Recall :对于每一个阈值,计算对应的查准率和召回率
  3. 绘制曲线:以 Recall 为横轴,Precision 为纵轴,绘制不同阈值下的点,连接成 PR 曲线。
  4. 计算面积:AUPRC 通过数值积分等方法计算 PR 曲线下的面积。

三、比较与对比

3.1 适用场景

  • AUROC:适用于类别分布较为平衡的场景,能够全面反映模型在各个阈值下的表现。
  • AUPRC:在类别不平衡(即正负样本比例悬殊)的情况下更为有效,因为它更关注正类的表现。

3.2 对类别不平衡的敏感性

  • AUROC:在类别高度不平衡时,AUROC 可能会高估模型的性能,因为假正例率容易受到大量负类样本的影响。
  • AUPRC:由于查准率直接反映了正类的预测准确性,AUPRC 在处理不平衡数据时更能真实反映模型的效果。

3.3 信息利用

  • AUROC:考虑了所有可能的阈值,全面反映模型的区分能力。
  • AUPRC:更关注正类的预测表现,对于实际需要高查准率或高召回率的应用场景更具指导意义。

3.4 数值解释

  • AUROC:等同于随机选取一个正例和一个负例,模型将正例评分高于负例的概率。
  • AUPRC :无法直接与概率解释关联,但更直观地反映了模型在预测正类时的准确性和全面性

四、优缺点分析

4.1 AUROC

优点

  • 综合考虑所有阈值下的性能,全面评估模型的区分能力。

  • 对类别平衡和不平衡数据均适用。

缺点

  • 在类别极度不平衡时,可能会掩盖模型在少数类上的不足。

  • 对假正例率较为敏感,可能导致对实际关注的正类性能评价不足。

4.2 AUPRC

优点

  • 在类别不平衡时表现更好,能够更准确反映正类的预测性能。

  • 对查准率和召回率的变化更敏感,适用于需要高查准率或高召回率的任务。

缺点

  • 只关注正类,忽略了负类的预测情况,可能不全面。

  • 难以进行概率解释,不如 AUROC 直观。

五、实际应用中的选择

在选择使用 AUROC 还是 AUPRC 时,应根据具体问题的需求和数据分布特点进行权衡:

  • 类别平衡 :如果数据集中的正负类比例较为均衡,AUROC 和 AUPRC 都可以使用,但 AUROC 更为常见
  • 类别不平衡 :当正类样本远少于负类样本时,AUPRC 更能准确反映模型的实际性能,推荐使用。
  • 应用需求:如果任务对正类预测的准确性(查准率)和全面性(召回率)有明确要求,AUPRC 更为合适;若需要综合评估模型的整体区分能力,AUROC 则更适用。

六、实例分析

假设我们有一个疾病预测模型,用于预测罕见疾病(正类样本较少)。在这种情况下:

  • 使用 AUROC 可能会得到较高的分数,即使模型在正类预测上表现不佳,因为负类样本众多,假正例率低。
  • 使用 AUPRC 能够更真实地反映模型在检测疾病患者(正类)时的效果,避免被大量负类样本掩盖。

因此,在这种医疗诊断的场景下,AUPRC 是更合适的评价指标

七、总结

Area Under the Precision-Recall Curve (AUPRC ) 和 Area Under the Receiver Operating Characteristic Curve (AUROC) 是评估二分类模型性能的两个重要指标。AUROC 适用于全面评估模型的区分能力,尤其在类别分布较为平衡时很适合;AUPRC 在处理类别不平衡问题时更具优势,能够更准确地反映模型在少数类上的预测性能。选择合适的评价指标应结合具体应用场景和数据特性,确保模型评估的准确性和有效性。


相关推荐
Crossoads1 小时前
【汇编语言】端口 —— 「从端口到时间:一文了解CMOS RAM与汇编指令的交汇」
android·java·汇编·深度学习·网络协议·机器学习·汇编语言
机智的叉烧2 小时前
前沿重器[57] | sigir24:大模型推荐系统的文本ID对齐学习
人工智能·学习·机器学习
IT古董12 小时前
【漫话机器学习系列】019.布里(莱)尔分数(Birer score)
人工智能·深度学习·机器学习
gang_unerry13 小时前
量子退火与机器学习(1):少量数据求解未知QUBO矩阵,以少见多
人工智能·python·算法·机器学习·数学建模·矩阵·量子计算
视觉&物联智能14 小时前
【杂谈】-为什么Python是AI的首选语言
开发语言·人工智能·python·深度学习·机器学习
IT古董15 小时前
【机器学习】机器学习的基本分类-强化学习-模型预测控制(MPC:Model Predictive Control)
人工智能·机器学习·分类
qq_5290252918 小时前
Torch.gather
python·深度学习·机器学习