问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

通过三个直观步骤理解ROC曲线

创作时间:
作者:
@小白创作中心

通过三个直观步骤理解ROC曲线

引用
CSDN
1.
https://blog.csdn.net/deephub/article/details/106799969

ROC曲线是评估分类模型性能的重要工具。本文通过三个直观的步骤,帮助读者理解ROC曲线的概念和计算方法。

ROC曲线是一个用于评估分类模型效果好坏的可视化表示。在这篇文章中,我将分三个步骤来构建ROC曲线。

步骤1:获取分类模型预测

当我们训练一个分类模型时,模型会输出每个样本属于正类的概率。以贷款偿还为例,模型会给出借款人偿还贷款的概率。概率值通常在0到1之间,数值越高表示借款人越有可能偿还贷款。

接下来,我们需要选择一个阈值,将概率值分为“会偿还”和“不会偿还”两类。例如,如果选择0.35作为阈值:

  • 所有概率值达到或超过0.35的预测,被归类为“会偿还”
  • 所有概率值低于0.35的预测,被归类为“不会偿还”

然后,我们需要评估这些分类是否正确。通过比较预测结果和实际结果,我们可以构建一个混淆矩阵:

  • 所有真正积极的样本(实际会偿还的)用蓝点表示
  • 如果被正确分类为“会偿还”,则为真正例(TP)
  • 如果被错误分类为“不会偿还”,则为假阴性(FN)
  • 所有负样本(实际不会偿还的)用红点表示
  • 如果被正确分类为“不会偿还”,则为真负例(TN)
  • 如果被错误分类为“会偿还”,则为假阳性(FP)

步骤2:计算真阳性率和假阳性率

有了混淆矩阵,我们可以计算两个重要指标:

  • 真阳性率(TPR):所有实际会偿还的样本中,被正确分类的比例
  • 假阳性率(FPR):所有实际不会偿还的样本中,被错误分类的比例

计算公式如下:

以图4为例,当阈值为0.35时:

  • 正确分类90%的阳性样本(TPR = 90%)
  • 错误分类40%的阴性样本(FPR = 40%)

从图中可以看出,随着阈值的增加:

  • TPR和FPR都会降低
  • 阈值为0时,所有样本都被分类为“会偿还”,因此TPR = 100%,FPR = 100%
  • 阈值为1时,所有样本都被分类为“不会偿还”,因此TPR = 0%,FPR = 0%

步骤3:绘制每个阈值点的TPR和FPR

为了绘制ROC曲线,我们需要计算多个不同阈值下的TPR和FPR(这一步通常由相关库自动完成,如scikit-learn)。

对于每个阈值,在坐标系中:

  • x轴表示FPR
  • y轴表示TPR

然后用一条线将这些点连接起来。这就是ROC曲线!

曲线下方的面积称为AUC(Area Under the Curve)。AUC值越高,表示模型在区分正负样本方面表现越好。理想情况下,我们希望ROC曲线尽可能靠近左上角,以获得更高的AUC值。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号