ROC曲线,AUC,和P-R曲线的关系

ROC-AUC 与 PR-AUC 的区别与联系 相关术语解释: 正例 负例 预测正 真正例 (true positive, TP) 假正例 (false positive, FP) 预测负 假负例 (false negative, FN) 真负例 (true negative, TN) 真正例率 (true positive ratio) :TPR=TPTP+FNTPR=\frac{TP}{TP+FN}TPR=TP+FNTP​,表示的是所有正例中被预测为正例的比例 假正例率 (false positive ratio):FPR 阅读详情
AI摘要

本文深入探讨了ROC曲线、AUC以及P-R曲线在二值分类器评估中的应用,对比了它们各自的优缺点,特别是在正负样本分布不均衡情况下的表现。通过具体实例,详细解释了这些指标的计算方法及曲线绘制过程。

ROC曲线,AUC,和P-R曲线的关系

前言:二值分类器的指标很多,比如precision、recall、F1 score、P-R曲线 等
发现这些指标或多或少只能反映模型在某一方面的性能。相比而言,ROC曲线则有很多优点,经常作为评估二 值分类器最重要的指标之一。

P-R曲线


Precision(查准率):P=TP/(TP+FP) 即预测结果中真正的正例的比例。
Recall(查全率):R=TP/(TP+FN) 即所有正例中被正确预测出来的比例。
PR曲线,横坐标是Recall,纵坐标是precision
P-R曲线的横轴是召回率,纵轴是精确率。对于一个排序模型来说,其P-R曲 线上的一个点代表着,在某一阈值下,模型将大于该阈值的结果判定为正样本, 小于该阈值的结果判定为负样本,此时返回结果对应的召回率和精确率。整条P-R 曲线是通过将阈值从高到低移动而生成的。图2.1是P-R曲线样例图,其中实线代表 模型A的P-R曲线,虚线代表模型B的P-R曲线。原点附近代表当阈值最大时模型的 精确率和召回率。

由图可见,当召回率接近于0时,模型A的精确率为0.9,模型B的精确率是1, 这说明模型B得分前几位的样本全部是真正的正样本,而模型A即使得分最高的几 个样本也存在预测错误的情况。并且,随着召回率的增加,精确率整体呈下降趋 势。但是,当召回率为1时,模型A的精确率反而超过了模型B。这充分说明,只用 某个点对应的精确率和召回率是不能全面地衡量模型的性能,只有通过P-R曲线的 整体表现,才能够对模型进行更为全面的评估。

ROC曲线

ROC曲线的横坐标是假(false)阳(positive)性(rate),纵坐标是真(true)阳(positive)性,(PR曲线,横坐标是Recall,纵坐标是precision)

P是真实的正样本的数量(TP+FN),N是真实的负样本的数量(FP+TN),TP是P个正样本中 被分类器预测为正样本的个数,FP是N个负样本中被分类器预测为正样本的个 数。
栗子🌰:
我们举一个医院诊断病 人的例子。假设有10位疑似癌症患者,其中有3位很不幸确实患了癌症(P=3), 另外7位不是癌症患者(N=7)。医院对这10位疑似患者做了诊断,诊断出3位癌症 患者,其中有2位确实是真正的患者(TP=2)。那么真阳性率TPR=TP/P=2/3。对 于7位非癌症患者来说,有一位很不幸被误诊为癌症患者(FP=1),那么假阳性率 FPR=FP/N=1/7。对于“该医院”这个分类器来说,这组分类结果就对应ROC曲线上 的一个点(1/7,2/3)。

如何画ROC

事实上,ROC曲线是通过不断移动分类器的“截断点”来生成曲线上的一组关
键点的,通过下面的例子进一步来解释“截断点”的概念。
在二值分类问题中,模型的输出一般都是预测样本为正例的概率。假设测试 集中有20个样本,表2.1是模型的输出结果。样本按照预测概率从高到低排序。在 输出最终的正例、负例之前,我们需要指定一个阈值,预测概率大于该阈值的样 本会被判为正例,小于该阈值的样本则会被判为负例。比如,指定阈值为0.9,那 么只有第一个样本会被预测为正例,其他全部都是负例。上面所说的“截断点”指 的就是区分正负预测结果的阈值。
通过动态地调整截断点,从最高的得分开始(实际上是从正无穷开始,对应 着ROC曲线的零点),逐渐调整到最低得分,每一个截断点都会对应一个FPR和 TPR,在ROC图上绘制出每个截断点对应的位置,再连接所有点就得到最终的 ROC曲线。


就本例来说,当截断点选择为正无穷时,模型把全部样本预测为负例,那 么FP和TP必然都为0,FPR和TPR也都为0,因此曲线的第一个点的坐标就是 (0,0)。当把截断点调整为0.9时,模型预测1号样本为正样本,并且该样本确实 是正样本,因此,TP=1,20个样本中,所有正例数量为P=10, 故TPR=TP/P=1/10;这里没有预测错的正样本,即FP=0,负样本总数N=10, 故FPR=FP/N=0/10=0,对应ROC曲线上的点(0,0.1)。依次调整截断点,直到画 出全部的关键点,再连接关键点即得到最终的ROC曲线,下图所示。
其实,还有一种更直观地绘制ROC曲线的方法。首先,根据样本标签统计出 正负样本的数量,假设正样本数量为P,负样本数量为N;接下来,把横轴的刻度 间隔设置为1/N,纵轴的刻度间隔设置为1/P;再根据模型输出的预测概率对样本进 行排序(从高到低);依次遍历样本,同时从零点开始绘制ROC曲线,每遇到一 个正样本就沿纵轴方向绘制一个刻度间隔的曲线,每遇到一个负样本就沿横轴方 向绘制一个刻度间隔的曲线,直到遍历完所有样本,曲线最终停在(1,1)这个 点,整个ROC曲线绘制完成。

AUC

首先要记住,AUC Aera Under Curve。
AUC指的是ROC曲线下的面积大小,该值能够量化地反映基于 ROC曲线衡量出的模型性能。计算AUC值只需要沿着ROC横轴做积分就可以了。 由于ROC曲线一般都处于y=x这条直线的上方(如果不是的话,只要把模型预测的 概率反转成1−p就可以得到一个更好的分类器),所以AUC的取值一般在0.5~1之 间。AUC越大,说明分类器越可能把真正的正样本排在前面,分类性能越好。

ROC曲线相比P-R曲线有什么特点?

当正负样本的分布发生变化时,ROC曲线的形状 能够基本保持不变,而P-R曲线的形状一般会发生较剧烈的变化。
举例来说,图2.3是ROC曲线和P-R曲线的对比图,其中图2.3(a)和图 2.3©是ROC曲线,图2.3(b)和图2.3(d)是P-R曲线,图2.3©和图 2.3(d)则是将测试集中的负样本数量增加10倍后的曲线图。

可以看出,P-R曲线发生了明显的变化,而ROC曲线形状基本不变。这个特点 让ROC曲线能够尽量降低不同测试集带来的干扰,更加客观地衡量模型本身的性 能。这有什么实际意义呢?在很多实际问题中,正负样本数量往往很不均衡。比 如,计算广告领域经常涉及转化率模型,正样本的数量往往是负样本数量的1/1000 甚至1/10000。若选择不同的测试集,P-R曲线的变化就会非常大,而ROC曲线则 能够更加稳定地反映模型本身的好坏。所以,ROC曲线的适用场景更多,被广泛 用于排序、推荐、广告等领域。

但需要注意的是,选择P-R曲线还是ROC曲线是因 实际问题而异的,如果研究者希望更多地看到模型在特定数据集上的表现,P-R曲 线则能够更直观地反映其性能。

机器学习——性能度量(PR曲线和ROC曲线) 性能度量:衡量模型泛化能力的评价标准(反映了任务需求,在对比不同模型的能力时,使用不同的性能度量往往会导致不同的评判结果。模型的好坏,不仅取决于算法和数据,还决定于任务需求。P为precision即精准率(查准率),R为recall即召回率,所以P-R曲线是反映了准确率与召回率之间的关系。一般横坐标为recall,纵坐标为precision。ROC全称Receiver Operating Characteristic,即受试者工作特征,坐标图式的分析工具。 阅读详情

相关推荐

PR曲线和F1、ROC曲线和AUC

最近阅读机器学习,在评估学习器的性能时,书中提到了P、R、F1值度量和ROC曲线和AUC值度量。P、R、F1 预测结果 正例 反例 真实情况 正例 TP(真正例) FN(假反例) 反例 FP(假正例)

teminusign的博客 2万+

机器学习实验三之——ROC与PR曲线

ROC曲线(Receiver Operating Characteristic Curve)是用来评估二分类模型性能的一种常见方法。它是基于分类模型对不同阈值下的预测结果进行排序,并计算真正率(True Positive Rate,即召回率)和假正率(False Positive Rate)之间的关系而得到的曲线。真正率指分类器在所有实际为正例中正确预测为正例的比例,可以通过以下公式计算: 真正率 = TP / (TP + FN)

m0_63916929的博客 1万+

分类任务算法的性能度量

一.准确率 - accuracy 这个好理解,就是分类正确的样本数占样本总数的比例,但在二分类且正反例不平衡的情况下,这个基本没有参考价值,举个栗子: 在测试集里,有100个sample,99个反例,只有1个正例。如果我的模型不分青红皂白对任意一个sample都预测是反例,那么我的模型的accuracy是 正确的个数/总个数 = 99/100 = 99%,你拿着这个accuracy高达99%的...

aiqi6666的博客 1821

PR曲线详解

目录PR曲线概念precision(精准率)和recall(召回率)PR曲线功能说明 PR曲线概念 PR曲线中的P代表的是precision(精准率),R代表的是recall(召回率),其代表的是精准率与召回率的关系,一般情况下,将recall设置为横坐标,precision设置为纵坐标。 precision(精准率)和recall(召回率) 上述中介少了PR曲线的实质代表为precision(精准率)和recall(召回率),但是这二者是什么呢?下面咱们进行相关的讲述。 首先,我们了解一下混淆矩阵,如下表

gz7seven 7万+

19. PR曲线是什么?如何计算?

PR(Precision-Recall)曲线是一种用于评估二分类模型性能的工具,重点关注的是正例的精确性(Precision)和召回率(Recall)之间的权衡关系。与ROC曲线不同,PR曲线将真正例率(TPR)和假正例率(FPR)替换为精确性和召回率,因此更适合于不平衡类别分布的情况,其中正例的数量较少。

weixin_44808274的博客 1465

别再折腾SNAP了!ENVI 5.6.0 直接拖拽打开Sentinel-2 L2A数据的正确姿势

本文详细介绍了ENVI 5.6.0直接处理Sentinel-2 L2A数据的高效方法,无需通过SNAP进行繁琐的重采样预处理。通过直接拖拽XML文件,用户可以快速加载不同分辨率的波段数据,显著提升工作效率。文章还对比了直接打开与SNAP重采样流程的优劣,并提供了常见问题解决方案和高级应用技巧。

weixin_30296405的博客 633

matlab 曲线检测_11566 P-R、ROC、DET 曲线及 AP、AUC 指标全解析(下)

.  上篇讲解了 P-R、ROC、DET 三种曲线,本篇来讲解 AP、AUC 两种指标。指标的作用,就是用一个数字衡量二分类器的好坏,便于对不同的二分类器进行比较。本篇会讲解 AP、AUC 两种指标的定义,它们与各种曲线的关系,以及如何准确、高效、简洁地编程计算两种指标。五、Average Precision(AP)指标  AP 指标的定义是这样的:把阈值设置在紧靠每个正例之下,计算正类的查准率 ...

weixin_39622628的博客 804

Java黑皮书课后题第5章:*5.9(找出得最高分的前两个学生)编写程序,提示用户输入学生的个数、每个学生名字及分数,最后显示获得最高分的学生

*5.9(找出得最高分的前两个学生)编写程序,提示用户输入学生的个数、每个学生名字及分数,最后显示获得最高分的学生名字、次高分的学生名字题目题目概述next()读取一个字符与nextLine()读取一行破题代码 题目 题目概述 *5.9(找出得最高分的前两个学生)编写程序,提示用户输入学生的个数、每个学生名字及分数,最后显示获得最高分的学生名字、次高分的学生名字 使用Scanner类的next()方法而不是nextLine()方法来读取名字 next()读取一个字符与nextLine()读取一行 举个例子理

weixin_46356698的博客 2154

绘制ROC曲线及P-R曲线

ROC曲线(Receiver Operating Characteristic Curve)以假正率(FPR)为X轴、真正率(TPR)为y轴。曲线越靠左上方说明模型性能越好,反之越差。ROC曲线下方的面积叫做AUC(曲线下面积),其值越大模型性能越好。P-R曲线(精确率-召回率曲线)以召回率(Recall)为X轴,精确率(Precision)为y轴,直观反映二者的关系。两种曲线都是分类模型常用的可视化评估工具。

九灵猴君的博客 3484

从零实现Unitree Go2的SLAM建图与导航:手把手集成slam_toolbox和nav2(附Rviz2可视化配置)

本文详细指导如何在Unitree Go2四足机器人上集成slam_toolbox和nav2,实现SLAM建图与导航功能。从ROS2环境配置、雷达数据处理到slam_toolbox参数优化,再到nav2路径规划与Rviz2可视化调试,提供完整解决方案。特别适合机器人开发者快速掌握ROS2导航栈在Unitree Go2上的应用实践。

weixin_33737134的博客 1229

银河麒麟V10离线升级OpenSSH实战:从编译到回滚全流程

OpenSSH作为Linux系统远程登录的核心组件,其版本升级直接关系到系统安全与等保合规。在信创环境下,银河麒麟V10自带的OpenSSH版本往往无法满足漏洞扫描与安全加固要求,而离线编译升级涉及依赖处理、编译参数、服务替换与回滚方案等多个技术环节。本文围绕银河麒麟V10(x86_64)平台,详细讲解OpenSSH离线升级的完整实操流程,包括环境摸底、依赖包安装、源码编译、配置文件兼容性处理、服务重启验证以及常见问题排查,并分享批量升级与安全加固的工程经验,帮助运维人员在不断网、不重装的前提下一次成功完成

weixin_30582943的博客 383

准确率、精确率、召回率、F1值、ROC/AUC整理笔记

文章目录前言一、TP、TN、FP、FN概念二、准确率、精确率(精准率)、召回率、F1值1.准确率(Accuracy)2.精确率(Precision)查准率3.召回率(Recall)查全率4.F1值(H-mean值)三、ROC曲线、AUC值1.ROC曲线2.AUC值总结 前言 案例代码https://github.com/2012Netsky/pytorch_cnn/blob/main/4_time_series_bikes.ipynb 对于分类问题,机器预测的和实际的还是会有所偏差,所以我们引入以下几个概

2d3d图像算法 halcon\opencv\c++\pcl\vtk\coluldcompare工具 程序员 学习者 1万+

史上最全工商银行核心系统建设历程:从“数据集中”到“ECOS”2.0,见证银行业信息科技跨时代发展征程

ECOS工程的直接成果是建成了工商银行第五代信息系统,即从单一核心银行系统到去核心化开放生态系统,率先开启了以智能化、开放化为特征,数据驱动引领经营模式变革,创新提出了一整套国际领先的分布式开放生态银行系统建设方案,在大型银行全分布式系统架构、主机下移、银行系统生态化转型、大规模交易型分布式数据库等多个领域再次实现“0到1”的突破,建成了具备国际领先水平的全分布式开放生态银行系统,继续勇立数字化转型潮头,推动高质量发展再上新台阶。工商银行的业务连续性管理水平实现了跨越式发展,有力地保障了业务发展。

银行信息系统应用架构详解 824

det曲线_11565 P-R、ROC、DET 曲线及 AP、AUC 指标全解析(上)

机器学习中,最「简单」的一种任务就是二分类任务了。比如,说话人验证(speaker verification)就是一个二分类任务:判断一句话是否是给定说话人说的。再比如,信息检索(information retrieval)本质上也是一个二分类任务:给定关键词,判断每篇文章是否与关键词相关,并把相关结果排序返回。许多二分类器的原理,都是给每个样例打一个分,然后设置一个阈值,分数高于阈值的样例就被分...

weixin_39664456的博客 1092

如何正确的计算两个角度的角度差?

这一步是必要的,因为它确保了无论a相对于b是在逆时针方向还是顺时针方向,d2总是正确地反映出绕圆相反方向的角度差。这样,当函数进行最后的比较时,它能够准确地比较两个方向的旋转路径并选择最短的一个。

小秋 AI SLAM 入门实战教程 4135

4.3 Langfuse 集成实战:追踪 OpenAI、LangChain 和 LangGraph 应用

本文介绍了如何将Langfuse集成到不同类型的AI应用中,包括原生OpenAI、LangChain和LangGraph应用。主要内容包括: 两种集成模式:手动追踪(精确控制)和自动追踪(通过回调机制) 三种应用场景的集成方案: 原生OpenAI应用:使用langfuse.trace()手动记录对话流程、LLM调用和工具执行 LangChain应用:通过LangfuseCallbackHandler自动追踪Agent执行过程 LangGraph应用:与LangChain相同的自动追踪方式,可可视化节点和状态

yonggeit的博客 3300

roc评估logistic_模型评估常用指标

一、 ROC曲线和AUC值在逻辑回归、随机森林、GBDT、XGBoost这些模型中,模型训练完成之后,每个样本都会获得对应的两个概率值,一个是样本为正样本的概率,一个是样本为负样本的概率。把每个样本为正样本的概率取出来,进行排序,然后选定一个阈值,将大于这个阈值的样本判定为正样本,小于阈值的样本判定为负样本,然后可以得到两个值,一个是真正率,一个是假正率。真正率即判定为正样本且实际为正样本的样本数...

weixin_39763683的博客 2050

yolov8涨点系列之替换幽灵卷积GhostConv

yolov8涨点系列之替换幽灵卷积GhostConv

zhang1379的博客 3564

机器学习:评价分类结果(ROC 曲线)

一、基础理解  1)定义 ROC(Receiver Operation Characteristic Curve) 定义:描述 TPR 和 FPR 之间的关系; 功能:应用于比较两个模型的优劣; 模型不限于是否通过极度偏斜的数据训练所得; 比较方式:ROC 曲线与坐标图形边界围成的面积,越大模型越优; TPR(True Pos...

ab1213456的博客 938

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

评估指标 -- Precision(查准率), Recall(查全率)和F1 score; PR曲线和mAP; ROC曲线和AUC

Precision, Recall 和 F1 score Precision – 查准率、精确率 Recall – 查全率、召回率 查准率和查全率是互相影响的,理想情况是希望两者都高,但是一般情况下查准率高、查全率就低,查全率高、查准率就低. 如果是做搜索,那就是保证查全的情况下提升查准率;如果做疾病监测、反垃圾,则是保证查准的条件下,提升查全率。 为了衡量在某一阈值下P和R的综合结果, 采用指...

赤道6号转向发动机的博客 4224

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

关系抽取中分类评价指标

新年第一篇博客~~,也是人生第一篇博客,愿能够坚持下去。 最近做关系抽任务时在评价指标方面遇到了一些问题,因此对分类评价指标进评价指标重新进行了学习,在此做个简单的总结。评价指标一般是指是对机器学习模型算法和参数好坏的一种定量评价方法,目前大部分评价指标——不管是准确率还是f值都只能片面反应模型的效果,所以如何运用评价指标就显得尤为重要,往往需要多种评价指标综合运用。 1 关系抽取中的主要评价指标 在关系抽取中我们常用的评价指标一般有准确率(Accuracy)、精确率(Precision)、召回率(Reca

Ming_LQ的博客 4458

【详细解释深度学习图像分类&检测评价指标】准确率Accuracy、精确率Precision、召回率Recall、mAP等(一文搞懂,建议收藏)

【详细解释深度学习图像分类&检测评价指标】准确率Accuracy、精确率Precision、召回率Recall、mAP等(一文搞懂,建议收藏)

cqy阳的博客 1万+

模型评估中的查准率、查全率、ROC曲线

P-R曲线 对于二分类问题,可以将训练集的真实类别与机器学习预测的类别划分为真正例(true positive) 、假正例(false positive) 、真反倒(true negative) 、假反例(false negative) 四种情形,令TP 、FP 、TN 、FN 分别表示其对应的样例数,则显然有TP+FP+TN+FN=样例总数。分类结果的“混淆矩阵”如下: 查准率 P 与查...

wxw_csdn的博客 1306

kmeans及模型评估指标_模型评估常用指标

一、 ROC曲线和AUC值在逻辑回归、随机森林、GBDT、XGBoost这些模型中,模型训练完成之后,每个样本都会获得对应的两个概率值,一个是样本为正样本的概率,一个是样本为负样本的概率。把每个样本为正样本的概率取出来,进行排序,然后选定一个阈值,将大于这个阈值的样本判定为正样本,小于阈值的样本判定为负样本,然后可以得到两个值,一个是真正率,一个是假正率。真正率即判定为正样本且实际为正样本的样本数...

weixin_39533432的博客 1566

机器学习——ROC、AUC、查准率、查全率、F1

错误率:有多少比例的西瓜被判断错误;查准率(precision):算法挑出来的西瓜中有多少比例是好西瓜;查全率(recall):所有的好西瓜中有多少比例被算法跳了出来。继续按照上述前提,对于二分类问题,我们根据真实类别与算法预测类别会有下面四个名词:在写下面四个名词前,需要给一些关于T(true)、F(false)、P(positive)、N(negative)的解释:P表示算法预测这个样本为1(好西瓜)、N表示算法预测这个样本为0(坏西瓜);

m0_58381606的博客 888

机器学习:分类模型常用的评估指标:混淆矩阵、精确率、召回率、F1 score、P-R曲线、ROC曲线、AUC面积、KS曲线

1、混淆矩阵(Confuse Matrix)(1)若一个实例是正类,并且被预测为正类,即为真正类TP(True Positive )(2)若一个实例是正类,但是被预测为负类,即为假负类FN(False Negative )(3)若一个实例是负类,但是被预测为正类,即为假正类FP(False Positive )(4)若一个实例是负类,并且被预测为负类,即为真负类TN(True Negative )2、准确率(Accuracy) 准确率是常用的一个评价指标,但是不适合样本不均衡的情况。

rubyw的博客 1013
上一篇: 能否说出几种降低过拟合和欠拟合风险的方法?
下一篇: 在自助法的采样过程中,对n个样本进行n次自助抽样,当n趋于无穷大时, 最终有多少数据从未被选择过?
GhostintheCode
博客等级 码龄8年 53粉丝 105原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值