Please enable JavaScript to view this site.

逻辑回归中的 ROC 曲线用于确定预测新观察值是 "失败"(0)还是 "成功"(1)的最佳临界值。如果您对 ROC 曲线不熟悉,可能需要花些功夫才能理解。逻辑回归的 ROC 曲线本示例如下。

首先,我们来介绍一下分类临界值的实际作用。当您选择一个分类临界值(比方说选择 0.5)时,就意味着您希望将模型预测概率等于或大于 0.5 的每个观测值都归类为 "成功"。请注意,无论实际观察到的结果是否成功,您都会将符合这一标准的观察结果归类为成功。不明白?别担心,没有听起来那么复杂。逻辑回归中的观察结果只能是 0 或 1。因此,对于给定的观察值,模型的预测概率可能是 0.51(51% 的成功概率),但您的观察值实际是 0(不成功)。我们稍后将讨论对观察结果进行正确或错误分类的重要性。现在,让我们回到 ROC 曲线上来。

曲线上的每个点都代表了对预测值进行分类的不同临界值。您可以选择 0 到 1 之间的任何值作为临界值,但手动选择每一个有意义的临界值会让您精疲力竭。因此,ROC 曲线要做的就是查看每一个可能的临界值,这些临界值会导致数据集中任何观察值的分类发生变化(如果将分类临界值从 0.5 提升到 0.6 不会导致观察值的分类发生变化,那么这就不是一个值得考虑的步骤)。每改变一个分类临界值,就会在图上画出一个点。但这个点会去哪里呢?要回答这个问题,让我们回到分类的结果上来,了解一下分类的作用和分类表。

无论您选择什么截止值,都会有一定数量的数据行被正确分类(您预测出了该行的正确值),也会有一定数量的数据行被错误分类。灵敏度和特异性分别是评价真阳性和真阴性比例的两个指标。换句话说,灵敏度是指使用特定临界值正确识别出 1 的比例,即真阳性率。反之,特异性是指正确识别为 0 的 0 的比例,即真阴性率。

用数学方法表示为

灵敏度 = (正确识别为 1 的数量)/(观察到的 1 总数)

特异性 = (正确识别为 0 的个数)/(观察到的 0 总数)

有了这些信息,我们就可以将所有信息整合在一起来理解 ROC 曲线。首先,我们要确定 ROC 曲线的坐标轴:Y 轴是灵敏度(或真阳性率),X 轴是 1-特异性。虽然需要额外的数学(和脑力)证明,但可以证明 1-特异性等同于假阳性率。

对于 ROC 曲线上的每一点(代表不同的临界值),该点的位置在 Y 轴上绘制为该临界值的灵敏度,在 X 轴上绘制为该临界值的 1 - 特异异性。因此,ROC 曲线以图形方式显示了试图最大化真阳性率与试图最小化假阳性率之间的权衡。在理想情况下,所有临界值的灵敏度和特异性都接近 100%,这意味着在所有情况下都能完美预测。如果做到了这一点,就不需要统计了,因为 "成功 "和 "失败 "是很容易区分的。事实上,如果使用逻辑回归,根本不可能拟合出这种模型。

最佳情况下的 ROC 曲线

最佳情况下的 ROC 曲线看起来像一个 90 度角。如果有了这条曲线,那么您可能就不需要统计了,因为区分 0 和 1 是轻而易举的事。请注意,在每一点上,灵敏度和特异性都达到了 100%(意味着 1-特异性为 0%)。事实上,这条曲线表明,存在一个灵敏度和特异性都达到 100%的临界点。另一种说法是,不存在假阳性和假阴性。这条 ROC 曲线的 AUC 为 1。

无检验力的 ROC 曲线:

另一种情况是,最差的 ROC 曲线(在 Prism 中)的预测效果不比偶然性好,这在 ROC 曲线中表现为一条呈 45 度的直线。拟合模型对结果的预测并不比掷硬币好。 另一种思考方式是,提高真阳性率(灵敏度)的唯一方法是同时提高相同数量的假阳性率(1 - 特异性):这根本不是什么好方法。这条 ROC 曲线的 AUC 为 0.5。

最坏情况下的 ROC 曲线:

请注意,在另一种情况下,模型的表现(理论上)可能比随机概率更差。回想一下,ROC 曲线绘制的是模型的灵敏度和特异性,而这两个值都是基于受试者的分类。您或许可以想象一个模型,在这个模型中,"成功"(或 1)被预测为 "失败"(或 0)的概率要高于随机概率。在这种情况下,模型仍然能够识别不同的结果组,但会对它们进行错误的分类(1 会被归类为 0,反之亦然)。在最极端的情况下,模型可以完美地预测所有观察到的 1 都是 0,而所有观察到的 0 都是 1。与 "最佳情况 ROC 曲线"相反,下图显示,对于每个临界值,灵敏度或特异性(或两者)均为 0%。这条 ROC 曲线的 AUC 为 0!

ROC 曲线下面积

ROC 曲线下面积(AUC)是一个综合指标,用于评估逻辑回归模型在所有可能的临界值下对阳性和阴性结果的分类效果。它的范围从 0.5 到 1,越大越好。人们有时会将 AUC 作为评估模型预测性能的一种手段,不过由于它代表了所有可能的截断值,而这在实践中并不可行,因此解读起来比较困难。我们建议直接解读 ROC 曲线,以此来选择临界值。

选择临界值

实际上,您只能为您的模型选择一个截止值。如何确定使用哪个截止值?这依赖于您的特异性方案。如果假阳性比假阴性更严重,那么就选择灵敏度高的截断值(在 ROC 图的 Y 轴上数值较高)。或者,如果假阳性更严重,则选择特异性高的临界值(ROC 图中左侧的值)。

© 1995-2019 GraphPad Software, LLC. All rights reserved.