解释 ROC 曲线的垂直和水平部分

数据挖掘 机器学习 可视化
2022-02-16 03:23:17

我不清楚如何解释 ROC 曲线的垂直和水平部分。我可以从中获得哪些重要信息?这是 Robert Monarch 所著的“Human-in-the-Loop Machine Learning”一书中的一段文字:

在这个例子中,我们可以看到 ROC 曲线的线在前 20% 处几乎是垂直的。这告诉我们,对于 20% 最有信心的预测,我们几乎 100% 准确。最后 30% 的 ROC 曲线几乎是水平的,为 1.0。这告诉我们,当我们对一个标签进行 30% 最不自信的预测时,剩下的标签很少。

在此处输入图像描述

1个回答

解释是从了解 ROC 曲线的组成部分得出的。

首先,提醒一下:ROC 曲线代表软二元分类器的性能,即预测表示实例为正的可能性的数值(通常是概率)的分类器。

ROC 曲线的点对应于以预测值/概率的不同阈值分割实例时发生的情况。例如,假设我们有 10 个具有以下预测和状态的实例,按预测值递减排序:

predicted value   gold status
  1.0                  P
  0.95                 P
  0.95                 P
  0.85                 N
  0.70                 P
  0.55                 P
  0.52                 N
  0.47                 P
  0.26                 N
  0.14                 N
  • 如果阈值设置为 0.60,我们有 4 个 TP、1 个 FP、2 个 FN 和 3 个 TN。
  • 如果阈值设置为 0.75,我们有 3 个 TP、1 个 FP、3 个 FN 和 3 个 TN。
  • 等等

如果分类器做得不错,顶部应该只包含黄金正实例,底部只包含负实例,因为分类器预测这些实例的值非常高(分别非常低)。相比之下,中间部分更可能包含错误。

这意味着,对于一个像样的分类器,我们只会遇到正实例,直到从顶部到某个阈值:在我的示例中,有 3 P 个实例高于阈值 = 0.85,因此在 0.85 和 1 之间选择的任何阈值都没有 FP 实例。这意味着 FPR=0,TPR 范围从 0 到 3/10,因此 ROC 曲线上的一条垂直线从原点到 (0,0.3)。

在我的示例中对最低值应用相同的观察,我们看到,当阈值在 0 和 0.47(排除)之间时,我们没有 FN,所以我们有一个完美的 TPR=1,因此有一条来自 (1,1) 的水平线到 (0.8, 1)。

排名的这两个极端部分就是作者所说的“最自信的预测”和“最不自信的预测”。顺便说一句,后者不是一个很好的术语,因为实际上底部是分类器对否定实例非常有信心的地方。如果有的话,分类器最不自信的部分是在排名的中间。

[编辑:忘记回答这个问题]

我可以从中获得哪些重要信息?

所以这两条直线显示了分类器可以走多远:

  • 没有任何误报(左下垂直线)
  • 不产生任何假阴性错误(右上水平线)

它在想要以召回为代价获得完美精度的应用程序中很有用,反之亦然。然而,一般情况下(例如优化 F1 分数),最佳阈值位于曲线中间的某个位置。

当然,线越长,分类器总体上就越好。从几何上看,很明显,当这两条线很长时,曲线下面积 (AUC) 就很大。请注意,理论上分类器可能会出现一些接近极端的错误(即短线),但在中等范围内仍然表现良好,但实际上很少见。