什么是 AUC - ROC 曲线?

数据挖掘 公制 奥克
2022-02-10 15:55:43

AUC - ROC 曲线是在各种阈值设置下分类问题的性能度量。ROC 是概率曲线,AUC 表示可分离性的程度或度量。

Roc 和 AUC 一样吗?

2个回答

相关的概念,但不一样。

ROC-接收器工作曲线

曲线下的 AUC 面积

感谢这篇文章的解释

缩写

AUC 大部分时间用于表示 AUROC,这是一种不好的做法,因为正如 Marc Claesen 指出的那样,AUC 是模棱两可的(可能是任何曲线),而 AUROC 不是。


解读 AUROC

AUROC 有几种等效的解释

  • 均匀抽取的随机正数排在均匀抽取的随机负数之前的期望。
  • 在均匀绘制的随机负数之前排名的正数的预期比例。
  • 如果排名在均匀绘制的随机负数之前被拆分,则预期的真阳性率。
  • 预期的负数比例排在均匀绘制的随机正数之后。
  • 如果排名在均匀绘制的随机正数之后被拆分,则预期的误报率。

更进一步:如何推导出 AUROC 的概率解释?


计算 AUROC

假设我们有一个概率二元分类器,例如逻辑回归。

在呈现 ROC 曲线(= 接收者操作特征曲线)之前,必须了解混淆矩阵的概念。当我们进行二元预测时,可能有 4 种结果:

  • 我们预测 0 而真正的类实际上是 0:这称为True Negative,即我们正确地预测该类是负的 (0)。例如,防病毒软件不会将无害文件检测为病毒。
  • 我们预测 0 而真正的类实际上是 1:这称为False Negative,即我们错误地预测该类是负的 (0)。例如,防病毒软件无法检测到病毒。
  • 我们预测 1 而真正的类实际上是 0:这称为False Positive,即我们错误地预测类是正的 (1)。例如,防病毒软件将无害文件视为病毒。
  • 我们预测 1 而真正的类实际上是 1:这称为True Positive,即我们正确地预测类是正的 (1)。例如,防病毒软件正确地检测到了病毒。

为了得到混淆矩阵,我们检查了模型所做的所有预测,并计算这四种结果中的每一种发生了多少次:

在此处输入图像描述

在这个混淆矩阵的例子中,在被分类的 50 个数据点中,45 个被正确分类,5 个被错误分类。

由于要比较两个不同的模型,使用单个度量而不是多个度量通常更方便,因此我们从混淆矩阵计算两个度量,稍后我们将它们合并为一个:

  • 真阳性率TPR),又名。灵敏度、命中率召回率,定义为TPTP+FN. 直观地说,这个指标对应于被正确认为是正的正数据点相对于所有正数据点的比例。换句话说,TPR 越高,我们将错过的正数据点越少。
  • 误报率FPR),又名。fall-out,定义为FPFP+TN. 直观地说,这个指标对应于被错误地认为是正的负数据点相对于所有负数据点的比例。换句话说,FPR 越高,错误分类的负面数据点就越多。

要将 FPR 和 TPR 组合成一个指标,我们首先计算具有许多不同阈值的前两个指标(例如0.00;0.01,0.02,,1.00) 对于逻辑回归,然后将它们绘制在一个图表上,横坐标为 FPR 值,纵坐标为 TPR 值。得到的曲线称为 ROC 曲线,我们考虑的度量是这条曲线的 AUC,我们称之为 AUROC。

下图以图形方式显示了 AUROC:

在此处输入图像描述

在该图中,蓝色区域对应于接收器操作特征 (AUROC) 曲线下的区域。对角线上的虚线表示随机预测变量的 ROC 曲线:它的 AUROC 为 0.5。随机预测器通常用作基线,以查看模型是否有用。

如果您想获得一些第一手经验:

没有 AUC 和 ROC 是两个不同的东西。

AUC 代表“曲线下面积”。ROC 代表“接受者操作特征曲线”。

ROC 是一个指标,它给出了一个单一的值,用于在给定阈值的情况下量化分类模型的性能。例如,您可以选择 0.5 作为猫对狗分类器的阈值。如果阈值未知,则我们绘制一个图表,其中 x 轴为阈值,y 轴为 ROC 指标。

这种曲线下的面积(AUC)就是所谓的 AUROC!AUC 不仅限于 ROC。它也可以与其他指标一起使用,例如精确召回曲线。