当前位置: 首页 > news >正文

科普:ROC AUC与PR AUC

在评价二分类模型性能时,有许多评价指标,其中,有一对是用面积AUC(Area Under the Curve)做评价的:ROC AUCPR AUC

本文我们对ROC AUCPR AUC进行多维度对比分析:


一、定义与核心原理

维度ROC AUCPR AUC
全称Receiver Operating Characteristic AUCPrecision-Recall AUC
横轴假正率(FPR)= FP / (FP + TN)召回率(Recall)= TP / (TP + FN)
纵轴真正率(TPR/Recall)= TP / (TP + FN)精确率(Precision)= TP / (TP + FP)
曲线生成方式调整分类阈值,计算不同阈值下的TPR和FPR调整分类阈值,计算不同阈值下的Precision和Recall
数值意义模型对正负样本的全局排序能力模型对正类样本的查准与查全的综合能力

二、使用场景对比

场景类型ROC AUCPR AUC
类别平衡数据适用(如男女用户分类)适用,但ROC AUC更直观
中度不平衡仍可用,但需谨慎解读(如正类占10%)更优(如用户流失预测)
严重不平衡易虚高(如欺诈检测正类占0.1%)首选(直接反映正类性能)
业务需求需全局排序(如信用评分)需聚焦正类(如癌症筛查)
典型场景示例
  1. 金融风控(正类占1%)
    • ROC AUC=0.95:可能因负类主导而虚高,无法反映欺诈识别的实际效果。
    • PR AUC=0.35:直接暴露模型对正类的低识别能力,需优化特征或采样策略。
  2. 广告点击预测(正类占5%)
    • ROC AUC=0.85:表明模型整体区分能力良好。
    • PR AUC=0.65:提示需提高精确率(减少误推成本)。

三、选择标准

决策因素优先选择ROC AUC优先选择PR AUC
正类比例正类≥10%正类<10%
业务目标需全局风险排序(如客户分层)需精准识别正类(如医学诊断)
误判成本容忍度可接受较高误判(如推荐系统)误判成本高(如法律审核)
模型解释性需直观展示整体性能需聚焦正类细节表现

四、与类别不平衡程度的关系

不平衡程度ROC AUC表现PR AUC表现
平衡(1:1)可靠,反映全局性能(如AUC=0.9优秀)可靠,与ROC AUC互补(如AUC=0.88)
中度不平衡(1:10)可能虚高(如AUC=0.85,实际正类识别差)更敏感(如AUC=0.6,提示需优化)
严重不平衡(1:100)虚高严重(如AUC=0.95但正类全漏)真实反映问题(如AUC=0.2,模型无效)
示例分析
  • 正类占0.5%的欺诈检测
    • ROC AUC=0.92:看似优秀,但可能因模型正确分类大量负类(TN)导致虚高。
    • PR AUC=0.15:直接显示模型对欺诈交易的识别能力极差(随机模型的PR AUC=0.005)。
  • 结论:在严重不平衡时,PR AUC是唯一可信指标

建议

  • 类别不平衡时:PR AUC是黄金指标,ROC AUC仅作参考。
  • 平衡数据时:两者互补,优先ROC AUC。
  • 业务决策时:以PR曲线选择阈值,以PR AUC评估模型优先级。

附:正样本比例与不平衡程度及推荐评估指标的对应表


正样本比例不平衡程度推荐评估指标备注
<1%严重不平衡PR AUC、F1分数、召回率(Recall)、MCC、G-Mean优先关注正类的查全率(Recall)和综合性能(PR AUC),避免ROC AUC的虚高误导。
1%~5%严重不平衡PR AUC、F1分数、召回率(Recall)、MCC、G-Mean需结合过采样(SMOTE)或代价敏感学习,重点关注少数类的识别能力。
5%~10%中度不平衡PR AUC、F1分数、G-Mean、平衡准确率(Balanced Accuracy)、ROC AUC平衡查准与查全,可辅以ROC AUC验证全局排序能力。
10%~20%轻微不平衡ROC AUC、F1分数、精确率(Precision)、PR AUC常规处理即可,关注业务核心指标(如误判成本)。
20%~40%较平衡准确率(Accuracy)、ROC AUC、F1分数、精确率/召回率(按业务需求侧重)无需特殊处理,模型优化重点转向特征工程或复杂度调整。
>40%平衡准确率(Accuracy)、ROC AUC、混淆矩阵(TP/FP/TN/FN)常规分类任务,指标选择取决于业务容忍度(如FP或FN的代价)。

主要指标
  1. 严重不平衡(<5%)

    • 核心指标:PR AUC(直接反映正类性能)、召回率(避免漏检)。
    • 辅助指标:MCC(综合所有类别)、G-Mean(平衡正负类识别能力)。
    • 禁用指标:准确率(虚高且无意义)。
  2. 中度不平衡(5%~10%)

    • 核心指标:PR AUC(仍优先)、F1分数(平衡查准与查全)。
    • 辅助指标:ROC AUC(验证全局能力)、平衡准确率(简单鲁棒)。
  3. 轻微不平衡(10%~20%)

    • 核心指标:ROC AUC(全局排序)、F1分数(平衡性能)。
    • 业务适配:若需高精确率(如广告推荐),优先精确率;若需高召回率(如用户流失预警),优先召回率。
  4. 实际应用

    • 金融风控:严重不平衡时,PR AUC + 召回率 + 误判成本矩阵。
    • 医学诊断:中度不平衡时,召回率 + 特异度(Specificity)。
    • 推荐系统:轻微不平衡时,精确率 + ROC AUC。

相关文章:

科普:ROC AUC与PR AUC

在评价二分类模型性能时&#xff0c;有许多评价指标&#xff0c;其中&#xff0c;有一对是用面积AUC&#xff08;Area Under the Curve&#xff09;做评价的&#xff1a;ROC AUC与PR AUC 本文我们对ROC AUC与PR AUC进行多维度对比分析&#xff1a; 一、定义与核心原理 维度RO…...

Vue3父组件访问子组件方法与属性完全指南

在Vue3的组件化开发中&#xff0c;父子组件间的通信是核心功能之一。本文将详细介绍五种父组件访问子组件属性/方法的实现方案&#xff0c;包含最新的<script setup>语法糖实践。&#xff08;综合1579&#xff09; 一、ref defineExpose&#xff08;推荐方案&#xff0…...

AI时代保护自己的隐私

人工智能最重要的就是数据&#xff0c;让我们面对现实&#xff0c;大多数人都不知道他们每天要向人工智能提供多少数据。你输入的每条聊天记录&#xff0c;你发出的每条语音命令&#xff0c;人工智能生成的每张图片、电子邮件和文本。我建设了一个网站(haptool.com)&#xff0c…...

Android APK组成编译打包流程详解

Android APK&#xff08;Android Package&#xff09;是 Android 应用的安装包文件&#xff0c;其组成和打包流程涉及多个步骤和文件结构。以下是详细的说明&#xff1a; 一、APK 的组成 APK 是一个 ZIP 格式的压缩包&#xff0c;包含应用运行所需的所有文件。解压后主要包含以…...

TCP长连接与短连接

TCP长连接与短连接 TCP&#xff08;传输控制协议&#xff09;中的长连接和短连接是两种不同的连接管理方式&#xff0c;各有优缺点&#xff1a; 短连接 短连接是指客户端与服务器完成一次数据交换后就断开连接。下次需要通信时&#xff0c;再重新建立连接。 特点&#xff1…...

C#委托(delegate)的常用方式

C# 中委托的常用方式&#xff0c;包括委托的定义、实例化、不同的赋值方式以及匿名委托的使用。 委托的定义 // 委托的核心是跟委托的函数结构一样 public delegate string SayHello(string c);public delegate string SayHello(string c);&#xff1a;定义了一个公共委托类型 …...

C#从入门到精通(35)—如何防止winform程序因为误操作被关闭

前言: 大家好,我是上位机马工,硕士毕业4年年入40万,目前在一家自动化公司担任软件经理,从事C#上位机软件开发8年以上!我们在开发的上位机软件运行起来以后,一般在右上角都有一个关闭按钮,正常情况下点击关闭按钮就能关闭软件,但是不排除我们不想关闭软件,但是因为不…...

docker本地镜像源搭建

最近Deepseek大火后&#xff0c;接到任务就是帮客户装Dify&#xff0c;每次都头大&#xff0c;因为docker源不能用&#xff0c;实在没办法&#xff0c;只好自己搭要给本地源。话不多说具体如下&#xff1a; 1、更改docker的配置文件&#xff0c;添加自己的私库地址&#xff0c…...

Sqlserver安全篇之_TLS的证书概念

证书的理解 参考Sqlserver的官方文档https://learn.microsoft.com/zh-cn/sql/database-engine/configure-windows/certificate-overview?viewsql-server-ver16 TLS(Transport Layer Security)传输层安全和SSL(Secure Sockets Layer)安全套接字层协议位于应用程序协议层和TCP/…...

Kafka生产者相关

windows中kafka集群部署示例-CSDN博客 先启动集群或者单机也OK 引入依赖 <dependency><groupId>org.apache.kafka</groupId><artifactId>kafka-clients</artifactId><version>3.9.0</version></dependency>关于主题创建 理论…...

技术问题汇总:前端怎么往后端传一个数组?

场景 现在一个专门负责复习算法的服务&#xff0c;筛选出了用户今天需要复习的笔记的ids&#xff0c;现在要调用笔记服务根据ids查询的接口。 请问复习服务怎么将ids发到笔记服务&#xff0c;笔记服务怎么接收。 思路 发的时候肯定是用字符串&#xff0c;接收的时候&#xf…...

【03】STM32F407 HAL 库框架设计学习

【03】STM32F407 HAL 库框架设计学习 摘要 本文旨在为初学者提供一个关于STM32F407微控制器HAL&#xff08;Hardware Abstraction Layer&#xff09;库框架设计的详细学习教程。通过本文&#xff0c;读者将从零开始&#xff0c;逐步掌握STM32F407的基本知识、HAL库的配置步骤…...

智能图像处理平台:图像处理配置类

这里我们先修改一下依赖&#xff0c;不用JavaCV&#xff0c;用openCV。 导入依赖&#xff1a; <!-- JavaCV 依赖&#xff0c;用于图像和视频处理 --> <!-- <dependency>--> <!-- <groupId>org.bytedeco</groupId>--> &l…...

【图文详解】什么是微服务?什么是SpringCloud?

目录 一.认识微服务架构 ??微服务带来的挑战 二.微服务解决方案SpringCloud ??SpringCloud的版本 ??SpringCloud和SpringBoot的关系 ??SpringCloud实现方案 Spring Cloud Netfix Spring Cloud Alibaba ??Spring Cloud 实现对比 在入门Spring Cloud 之前&…...

基于ssm的校园跑腿管理系统+vue

作者主页&#xff1a;舒克日记 简介&#xff1a;Java领域优质创作者、Java项目、学习资料、技术互助 文中获取源码 项目介绍 系统共有管理员、用户两个角色 管理员主要的功能用户信息管理、任务信息管理、任务类型管理、接单信息管理、公告信息管理、投诉信息管理、公告类型管…...

5个GitHub热点开源项目!!

1.自托管 Moonlight 游戏串流服务&#xff1a;Sunshine 主语言&#xff1a;C&#xff0c;Star&#xff1a;14.4k&#xff0c;周增长&#xff1a;500 这是一个自托管的 Moonlight 游戏串流服务器端项目&#xff0c;支持所有 Moonlight 客户端。用户可以在自己电脑上搭建一个游戏…...

docker通用技术介绍

docker通用技术介绍 1.docker介绍 1.1 基本概念 docker是一个开源的容器化平台&#xff0c;用于快速构建、打包、部署和运行应用程序。它通过容器化技术将应用及其依赖环境&#xff08;如代码、库、系统工具等&#xff09;打包成一个标准化、轻量级的独立单元&#xff0c;实…...

#渗透测试#批量漏洞挖掘#某图创图书馆集群管理系统updOpuserPw SQL注入(CVE-2021-44321)

免责声明 本教程仅为合法的教学目的而准备&#xff0c;严禁用于任何形式的违法犯罪活动及其他商业行为&#xff0c;在使用本教程前&#xff0c;您应确保该行为符合当地的法律法规&#xff0c;继续阅读即表示您需自行承担所有操作的后果&#xff0c;如有异议&#xff0c;请立即停…...

智能合约安全 | 合约无效化攻击

目录&#xff1a; 智能合约安全 合约无效化攻击 合约自毁函数 selfdestruct 攻击实现 漏洞防御 总结 智能合约安全 合约无效化攻击 合约无效化攻击类同于web安全中的逻辑漏洞中的一种 我们这里拿一个典型的例子来讲解 有这样一份智能合约, 每个人可以向其中发送1 eth 第七个…...

RabbitMQ 的介绍与使用

一. 简介 1> 什么是MQ 消息队列&#xff08;Message Queue&#xff0c;简称MQ&#xff09;&#xff0c;从字面意思上看&#xff0c;本质是个队列&#xff0c;FIFO先入先出&#xff0c;只不过队列中存放的内容是message而已。 其主要用途&#xff1a;不同进程Process/线程T…...

Unity热更新原理与方案选型:从AOT限制到HybridCLR实践

1. 热更新不是“打补丁”&#xff0c;而是游戏生命周期的呼吸系统很多人第一次听说Unity热更新&#xff0c;脑子里浮现的是“改个UI文字不用重发包”“修个崩溃不用上架审核”——这没错&#xff0c;但太浅了。我带过三支手游团队&#xff0c;从2017年用AssetBundle硬啃&#x…...

对比直接使用厂商api体验taotoken在延迟与可用性上的差异

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 对比直接使用厂商 API 体验 Taotoken 在延迟与可用性上的差异 在构建依赖大模型能力的应用时&#xff0c;开发者通常会直接调用特定…...

PPT怎么转PDF?一键快捷操作与全方位转换方法测评

在日常工作中&#xff0c;我们经常需要将PowerPoint演示文稿转换成PDF格式。无论是为了保证演示文件的兼容性、方便分享给他人&#xff0c;还是用于打印和存档&#xff0c;PPT转PDF都是一项必不可少的技能。本文将为你深入讲解PPT转PDF的多种方法&#xff0c;包括快捷键操作、软…...

终极指南:5分钟搭建Rust高性能HTTP文件服务器,告别繁琐配置

终极指南&#xff1a;5分钟搭建Rust高性能HTTP文件服务器&#xff0c;告别繁琐配置 【免费下载链接】simple-http-server Simple http server in Rust (Windows/Mac/Linux) 项目地址: https://gitcode.com/gh_mirrors/si/simple-http-server Simple HTTP Server是一款基…...

工业机器视觉工控机选型指南:从硬件配置到现场调试

1. 产品定位与核心价值解析在工业自动化领域&#xff0c;尤其是机器视觉应用场景中&#xff0c;稳定、可靠且性能强劲的硬件平台是整套系统能够7x24小时无间断运行的基石。朗锐智科推出的这款机器视觉工控机&#xff0c;从其核心配置来看&#xff0c;精准地瞄准了中高端视觉检测…...

仓内与仓外智能物流设计技术难点

智能物流系统根据空间和边界可划分为仓内物流&#xff08;Intralogistics&#xff09;与仓外物流&#xff08;External Logistics&#xff09;。两者由于运行环境、控制变量和边界条件的根本差异&#xff0c;面临着截然不同的技术设计难点。一、 仓内智能物流设计技术难点&…...

《纳瓦尔宝典》幸福篇精读:程序员如何在敲码之余获得内心的平静与幸福

本文是《纳瓦尔宝典》第三部分"学习幸福"的完整精读笔记&#xff0c;专为程序员群体量身打造。结合技术职场高压、内卷严重的现状&#xff0c;拆解纳瓦尔关于幸福的核心哲学&#xff0c;提供可落地的日常实践方法。引言&#xff1a;为什么程序员更需要学习幸福&#…...

用一块老芯片玩转计数器:手把手教你用74390与非门搭一个24小时制时钟电路

用一块老芯片玩转计数器&#xff1a;手把手教你用74390与非门搭一个24小时制时钟电路 记得大学时第一次在实验室看到LED数字管跳动的那种兴奋感吗&#xff1f;那种从抽象理论到具象显示的魔法时刻&#xff0c;正是电子设计的魅力所在。今天我们就用上世纪70年代诞生的74390这块…...

【云计算学习之路】学习Centos7系统:服务搭建(NFS)

文章目录【云计算学习之路】学习Centos7系统:服务搭建(NFS)前言一、NFS 核心原理与架构1.1 NFS 服务简介1.2 NFS 核心依赖与守护进程、端口机制1.2.1 基础依赖组件1.2.2 NFS 核心守护进程1.2.3 核心通信端口规则1.3 NFS 完整工作流程&#xff08;附原理图解&#xff09;1.4 常用…...

基于 Vibe Coding 的 OJ 平台

基于 Vibe Coding 的 OJ 平台 Github: https://github.com/wjlwjlwjlwjl-cmd/vibe-coding-based-oj-platform Gitee: https://gitee.com/wangs-joyful-home/vibe-coding-based-oj-platform 一个类 LeetCode 的在线编程评测平台&#xff0c;支持题目管理、代码提交、自动判题、提…...