如何绘制ROC曲线

ROC曲线用于评估二分类学习器性能,通过混淆矩阵、FPR和TPR概念理解曲线绘制过程。当一个学习器的ROC曲线包围另一学习器时,表明其性能更优。通过对不同阈值的判断,得到一系列FPR和TPR,进而形成ROC曲线。AUC作为曲线下的面积,AUC越大,学习器性能越好。
AI助手已提取文章相关产品:

ROC(Receiver Operating Characteristic)曲线全称是“受试者工作特征”,通常用来衡量一个二分类学习器的好坏。如果一个学习器的ROC曲线能将另一个学习器的ROC曲线完全包住,则说明该学习器的性能优于另一个学习器。

绘制ROC曲线需要先了解两个概念:
1. 混淆矩阵,一个在评判二分类学习器的时候通常都会用到的表格

预测值预测值
实际值
TPFN
FPTN

2. FPR和TPR
FPR(False Positive Rate)和TPR(True Positive Rate)分别对应着ROC曲线的横纵坐标,其定义如下

TPR=TPTP+FN

FPR=FPFP+TN

但仍有一个问题,对于一个学习器它的预测结果只能产生一对(FPR,TPR),这只能绘制一个点,不足以绘制出一条曲线。实际上对于许多学习器在判定二分类问题时是预测出一个对于真值的范围在[0.0, 1.0]之间的概率值,而判定是否为真值则看该概率值是否大于设定的阈值(Threshold)。例如如果阈值设定为0.5则所有概率值大于0.5的均为正例,其余为反例。因此对于不同的阈值我们可以得到一系列相应的FPR和TPR,从而绘制出ROC曲线。
以下列数据举例:
y_true = [0, 1, 0, 1],真实值
y_score = [0.1, 0.35, 0.4, 0.8], 预测概率值
分别取4组判定正例用的阈值:[0.1, 0.35, 0.4, 0.8],可得相应4组FPR,TPR:
FPR: [1, 0.5, 0.5, 0]
TPR: [1, 1, 0.5, 0.5]
绘制ROC曲线图如下:
ROC Curve Example

ROC曲线所覆盖的面积称为AUC(Area Under Curve),可以更直观的判断学习器的性能,AUC越大则性能越好。对于该例的AUC值为0.75。

您可能感兴趣的与本文相关内容

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值