二分类评价指标AUROC和AUPR
文章目录
- 一、AUROC(Area Under the Receiver Operating Characteristic Curve)
- 二、AUPR(Area Under the Precision-Recall Curve)
- 三、区别
- 3.1 案例
- 3.2 如何选择?
在分类任务中, AUROC(受试者工作特征曲线下面积)和 AUPR(精确率-召回率曲线下面积)是两种常用的性能评估指标,尤其适用于不平衡数据集的情况。下面是这两者的定义和解释:
一、AUROC(Area Under the Receiver Operating Characteristic Curve)
-
定义:AUROC表示ROC曲线下面积。ROC曲线展示的是模型在不同阈值下的**真正例率(True Positive Rate, TPR)与假正例率(False Positive Rate, FPR)**之间的关系。其目的是衡量模型区分正负样本的能力。
-
真正例率(TPR):也称为召回率(Recall),表示被正确识别的正样本占所有真实正样本的比例:
T P R = 真正例 真正例 + 假反例 TPR = \frac{\text{真正例}}{\text{真正例} + \text{假反例}} TPR=真正例+假反例真正例 -
假正例率(FPR):表示被错误识别为正样本的负样本占所有真实负样本的比例:
F P R = 假正例 假正例 + 真反例 FPR = \frac{\text{假正例}}{\text{假正例} + \text{真反例}} FPR=假正例+真反例假正例 -
解读:
- AUROC 值范围在0到1之间,1表示完美分类,0.5表示随机猜测,低于0.5则表示模型表现不佳。
二、AUPR(Area Under the Precision-Recall Curve)
-
定义:AUPR表示精确率-召回率曲线下面积。PR曲线展示的是不同阈值下的**精确率(Precision)与召回率(Recall)**的关系。AUPR在处理正负样本数量严重不平衡时更有用。
-
精确率(Precision):表示被正确识别为正样本的实例占所有被预测为正样本实例的比例:
[
\text{精确率} = \frac{\text{真正例}}{\text{真正例} + \text{假正例}}
] -
召回率(Recall):与AUROC中的TPR相同,表示被正确识别为正样本的比例。
-
解读:
- AUPR值越高,表示模型在正样本上的检测性能越好,尤其是对于不平衡数据,AUPR比AUROC更能反映正样本的识别能力。
三、区别
3.1 案例
上图展示了ROC曲线和PR曲线,并分别计算了它们的AUROC和AUPR值。
-
左图:ROC曲线展示了不同阈值下真正例率(TPR)与假正例率(FPR)的关系,曲线下面积(AUROC)为衡量模型整体区分正负样本的能力。
- 曲线下的面积越大(接近1),模型的性能越好。
- 随机猜测的曲线是一条45度的对角线,AUROC为0.5。
-
右图:PR曲线展示了不同阈值下精确率(Precision)与召回率(Recall)的关系,曲线下面积(AUPR)衡量模型在正类样本上的表现,特别适用于正负样本不平衡的数据。
- 曲线下的面积越大(接近1),表示模型对正样本的检测能力越强。
3.2 如何选择?
-
何时使用 AUROC
- 当你的数据集是 平衡的,并且正负类别同样重要时。
- 当你希望评估模型在 所有阈值下的整体表现。
- 当你想了解模型 区分正负类样本的能力,而不太在意假正例的影响时。
-
何时使用 AUPR
- 当你的数据集是 不平衡的,正类很少但却非常关键时。
- 当你更关注模型的 精确率 和如何 正确识别正类样本 而不是生成过多假正例时。
- 当你在处理如疾病检测、欺诈检测或异常检测等对正类检测要求更高的任务时。
-
总结
- AUROC 适用于平衡数据集,提供了分类器整体区分正负类的能力。
- AUPR 更适用于不平衡数据集,特别关注正类的检测能力和减少假正例的能力。