西瓜书《机器学习》阅读笔记3——Chapter2_ROC曲线

本文详细介绍了ROC曲线的概念,展示了如何绘制ROC曲线,并探讨了在多个实例得分相同时的处理方法。此外,文章还解释了AUC作为性能度量的重要性,以及ROC曲线在不同operating condition下的不变性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下所有的讨论都是针对二分类任务。

ROC曲线介绍

ROC全称是Receive Operating Characteristic,中文称作受试者工作特征。
假设现在有m个测试集,其中正例数 m+ ,反例数为 m 。对任意一个实例,分类器有两种可能的输出:一种是直接输出label,一种是预测为正例的概率或者得分。
对于输出label的分类器,可以得到m个测试集上的预测结果。根据预测结果以及真实标记可以得到一个混淆矩阵。

  预测为P 预测为N
实际为P TP FN
实际为N FP TN



定义如下两个量:

TPR=TPTP+FN

FPR=FPFP+TN

称TPR为真正例率,表示实际为正例的样本中预测为正例的比例;称FPR为假正例率,表示实际为反例的样本中预测为正例的比例。ROC空间就是以FPR作为横轴,以TPR作为纵轴的二维空间。这样对于上面的混淆矩阵,我们计算出的(FPR,TPR)对应ROC空间上一个点,这个点表示的就是对应分类器的性能。

ROC空间中有四个特殊点:(0,0)表示实际为正例的样本全部预测错误,而实际为反例的样本全部预测正确;(0,1)表示所有样本全部预测错误;(1,0)表示所有样本全部预测正确;(1,1)表示实际为正例的样本全部预测正确,实际为反例的样本全部预测错误。在ROC空间中越靠近左上角的分类器,性能越好。

上面的介绍都是针对输出为label的分类器。而对于输出为正例概率或者得分的分类器,可以按照概率或者得分的大小对实例进行排序,这样排在前面的实例是正例的可能性大,排在后面的实例是正例的可能性小。然后按顺序,每次以当前实例的概率/得分做阈值。概率/得分超过或等于此阈值的实例预测为正例,否则预测为反例(其实就是把所有排在当前实例前面的实例以及当前实例预测为正例;其余预测为反例)。这样当前实例有m种,每一种都对应一次预测,而每一次预测都有对应的混淆矩阵。于是在ROC空间中我们可以得到m个点,这m个点的连线称为分类器的ROC曲线。m越大,曲线越光滑。

画ROC曲线

假设现在有四个样本 { (x1,0),(x2,0),(x3,1),

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值