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

科普: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…...

自动化测试无法启动(java.net.SocketException)

在运行测试代码,对浏览器进行自动化操作时,遇到了以下问题,添加依赖,编写了测试代码,但是程序无法运行 这个有两种原因(我使用的是谷歌浏览器): 网络问题: 因为需要从GitHub上下载对应包,所以有时候可能会出现网络问题,这个时候可以打开VPN之后,重新对程序进行启动 浏览器版本…...

大白话解释xxl-job是什么 有什么用 怎么用

XXL-JOB是什么&#xff1f; XXL-JOB就像快递公司的“总调度中心”&#xff0c;专门帮你的程序在不同服务器之间协调和执行定时任务。比如你有个电商系统&#xff0c;每天凌晨要统计订单数据、每小时要发促销短信&#xff0c;这些定时任务交给XXL-JOB来统一管理&#xff0c;它能…...

STM32G473VET6 在 Keil MDK 下手动移植 FreeRTOS 指南

下面将详细介绍如何在 Keil MDK 环境下将 FreeRTOS 手动移植到 STM32G473VET6 微控制器上。内容涵盖工程创建、获取源码、文件组织、移植层适配、测试任务编写以及编译调试等步骤。 1. 工程搭建&#xff08;Keil 项目创建&#xff09; 创建基础工程&#xff1a;首先准备一个基…...

WPF中对滚动条进行平滑滚动

有时候我们在动态添加内容时&#xff0c;需要将滚动条滚动到指定内容处。 一般我们会调用ScrollViewer的ScrollToVerticalOffset&#xff08;垂直方向&#xff09;函数和ScrollToHorizontalOffset&#xff08;水平方向&#xff09;函数来控制滚动条滚动到指定位置。 正常滚动效…...

API,URL,Token,XML,JSON是干嘛的

API&#xff0c;URL&#xff0c;Token&#xff0c;XML&#xff0c;JSON是干嘛的 API的作用 API&#xff08;Application Programming Interface&#xff0c;应用程序编程接口&#xff09;是一组定义和协议&#xff0c;用于构建和交互软件应用程序。API允许不同的软件系统之间…...

Threejs 解析几何体提取顶点数据流程

目录 前言 原生WebGL 整体解析过程简介 顶点颜色属性Geometry.colors Geometry转化为BufferGeometry 相关函数 WebGLAttributes.js WebGLGeometries.js WebGLObjects.js WebGLRenderer.js WebGLRenderer.js 前言 解析几何体对象&#xff0c;提取顶点数据&#xf…...

浮动与清除浮动

浮动&#xff08;float&#xff09;是CSS中用于布局的重要属性&#xff0c;它使元素脱离正常的文档流&#xff0c;并向左或向右移动&#xff0c;直到碰到另一个浮动元素或父元素的边界。 浮动的定义和作用 定义&#xff1a;浮动是通过设置 float 属性使元素脱离正常的文档流&a…...

YOLOv5 + SE注意力机制:提升目标检测性能的实践

一、引言 目标检测是计算机视觉领域的一个重要任务&#xff0c;广泛应用于自动驾驶、安防监控、工业检测等领域。YOLOv5作为YOLO系列的最新版本&#xff0c;以其高效性和准确性在实际应用中表现出色。然而&#xff0c;随着应用场景的复杂化&#xff0c;传统的卷积神经网络在处…...

极简Redis速成学习

redis是什么&#xff1f; 是一种以键值对形式存储的数据库&#xff0c;特点是基于内存存储&#xff0c;读写快&#xff0c;性能高&#xff0c;常用于缓存、消息队列等应用情境 redis的五种数据类型是什么&#xff1f; 分别是String、Hash、List、Set和Zset&#xff08;操作命…...

教育培训APP开发全攻略:从网校系统源码搭建到功能优化的技术方案

本篇文章&#xff0c;笔者将从网校系统源码搭建到功能优化的角度&#xff0c;全面解析教育培训APP的开发技术方案&#xff0c;帮助企业和开发者更好地理解如何提升在线教育平台的性能与用户体验。 一、教育培训APP开发的核心架构 教育培训APP的架构设计是其能否顺利运行和扩展…...

网络安全与认知安全的区别 网络和安全的关系

前言 说说信息安全 与网络安全 的关系 一、包含和被包含的关系 信息安全包括网络安全&#xff0c;信息安全还包括操作系统安全&#xff0c;数据库安全 &#xff0c;硬件设备和设施安全&#xff0c;物理安全&#xff0c;人员安全&#xff0c;软件开发&#xff0c;应用安全等。…...

16.1 LangChain 表达式语言(LCEL)深度解析:构建灵活高效的大模型应用流水线

LangChain 表达式语言(LCEL)深度解析:构建灵活高效的大模型应用流水线 关键词:LangChain 表达式语言、LCEL 编程范式、大模型应用编排、流式处理优化、生产级链式开发 1. LCEL 设计哲学与核心优势 1.1 为何需要 LCEL? #mermaid-svg-pIEGtObTES1T3LgF {font-family:"…...

介绍微信小程序中页面的生命周期函数和组件的生命周期函数

1.1 页面生命周期函数 这些函数主要用于管理页面的显示和隐藏。 onLoad(options): 页面加载时触发&#xff0c;options 是页面路由参数&#xff0c;可以在这里初始化数据。每当用户进入该页面时都会调用这个函数。 onShow(): 页面显示时触发。每当页面从后台切换到前台时都会…...

arm | lrzsz移植记录

1 我的使用场景 开发板无网络, 无奈只得用U盘拷贝文件 文件不大, 每次都插拔U盘, 很繁琐 原来的环境不支持rz等命令 就需要移植这个命令来使用 下载地址 https://ohse.de/uwe/releases/lrzsz-0.12.20.tar.gz 2 编译脚本 # 主要内容在这里 configure_for_arm(){mkdir -p $PA…...

智能机器人加速进化:AI大模型与传感器的双重buff加成

Deepseek不仅可以在手机里为你解答现在的困惑、占卜未来的可能&#xff0c;也将成为你的贴心生活帮手&#xff01; 2月21日&#xff0c;追觅科技旗下Dreamehome APP正式接入DeepSeek-R1大模型&#xff0c;2月24日发布的追觅S50系列扫地机器人也成为市面上首批搭载DeepSeek-R1的…...

Qt:day1

一、作业 写1个Widget窗口&#xff0c;窗口里面放1个按钮&#xff0c;按钮随便叫什么&#xff1b; 创建2个Widget对象&#xff1a; Widget w1, w2; w1.show(); w2不管&#xff1b; 要求&#xff1a; 点击 w1.btn&#xff0c;w1隐藏&#xff0c;w2显示&#xff1b; 点击 w2.btn&…...

端口映射/内网穿透方式及问题解决:warning: remote port forwarding failed for listen port

文章目录 需求&#xff1a;A机器是内网机器&#xff0c;B机器是公网服务器&#xff0c;想要从公网&#xff0c;访问A机器的端口方式&#xff1a;端口映射&#xff0c;内网穿透&#xff0c;使用ssh打洞端口&#xff1a;遇到问题&#xff1a;命令执行成功&#xff0c;但是端口转发…...

Java从根上理解 ConcurrentHashMap:缓存机制与性能优化

目录 一、ConcurrentHashMap 的核心原理1. 数据结构2. 锁机制3. 扩容机制二、ConcurrentHashMap 的缓存机制1. 缓存的实现2. 缓存的更新策略三、ConcurrentHashMap 的性能优化1. 减少锁竞争2. 优化数据结构3. 合理设置容量和负载因子四、具体代码示例1. 创建 ConcurrentHashMap…...

通过百度构建一个智能体

通过百度构建一个智能体 直接可用,我不吝啬算力 首先部署一个模型,我们选用deepseek14 构建智能体思考步骤,甚至多智能体; from openai import OpenAIclass Agent:def __init__(self, api_key, base_url, model...

【MySQL】(1) 数据库基础

一、什么是数据库 数据库自行选择了合适的数据结构来组织数据&#xff0c;方便用户写入&#xff08;存储介质&#xff0c;如硬盘&#xff0c;机器断电不会丢失数据&#xff09;和查询数据。在数据结构部分&#xff0c;我们讲到的 ArrayList、HashMap 集合类对象也能存储数据&am…...

DeepSeek后训练:监督微调和强化学习

注&#xff1a;此文章内容均节选自充电了么创始人&#xff0c;CEO兼CTO陈敬雷老师的新书《自然语言处理原理与实战》&#xff08;人工智能科学与技术丛书&#xff09;【陈敬雷编著】【清华大学出版社】 文章目录 DeepSeek大模型技术系列十二DeepSeek大模型技术系列十二》DeepS…...

基于 MetaGPT 自部署一个类似 MGX 的多智能体协作框架

MGX&#xff08;由 MetaGPT 团队开发的 mgx.dev&#xff09;是一个收费的多智能体编程平台&#xff0c;提供从需求分析到代码生成、测试和修复的全流程自动化功能。虽然 MGX 本身需要付费&#xff0c;但您可以通过免费服务和开源项目搭建一个类似的功能。以下是一个分步骤的实现…...

三个小时学完vue3 —— 简单案例(二)

三个小时学完vue3&#xff08;二&#xff09; 图片轮播案例 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><…...

数字人技术再超越,TANGO 可生成与音频匹配的全身手势视频

TANGO 是由东京大学与 CyberAgent AI Lab 于 2024 年共同研发的开源框架&#xff0c;专注于声音驱动的全身数字人生成。该技术能够根据目标语音音频生成与之同步的全身手势视频&#xff0c;突破了传统数字人技术仅支持面部或上半身动作的局限性。TANGO 的工作原理利用隐式分层音…...

释放微软bing的力量:深度剖析其主要功能

在浩瀚无垠的互联网海洋中,搜索引擎就如同指南针,引领我们找到所需要的信息。微软必应凭借其一系列强大功能,在搜索引擎领域脱颖而出,成为极具竞争力的一员。在这篇博客文章中,我们将深入探讨微软必应的主要功能,这些功能使其独具特色,成为全球用户的得力工具。 1. 智能…...

DeepSeek 开源周(2025/0224-0228)进度全分析:技术亮点、调用与编程及潜在影响

DeepSeek 技术开源周期间所有开放下载资源的目录及简要说明: 1. FlashMLA 描述:针对 Hopper GPU 优化的高效 MLA 解码内核,专为处理可变长度序列设计,显著提升大语言模型(LLM)的解码效率。性能:内存受限配置下可达 3000 GB/s 带宽,计算受限配置下可达 580 TFLOPS 算力(…...

let、const【ES6】

‌“我唯一知道的就是我一无所知。” - 苏格拉底 目录 块级作用域&#xff1a;var、let、const的对比&#xff1a;Object.freeze()&#xff1a; 块级作用域&#xff1a; 块级作用域指由 {} 包围的代码块&#xff08;如 if、for、while、单独代码块等&#xff09;形成的独立作用…...

PySpark中mapPartitionsWithIndex等map类算子生成器函数问题 - return\yield

PySpark中mapPartitionsWithIndex等map类算子生成器函数问题 - return\yield 顾名思义&#xff0c;本文讲述了map算子生成器函数的相关问题——return 和 yield的使用。 首先先讲结论&#xff0c;在使用map等迭代生成的算子时最好使用yield。 1、问题产生 在写代码的过程中&…...

网络原理 初识[Java EE]

目录 网络发展史 独立模式 网络互联 局域网 LAN 1. 基于网络直连 2. 基于集线器(Hub)组建 3. 基于交换机(Switch)组建 4. 基于交换机和路由器(Router)组建 广域网 WAN 网络通信基础 IP 地址 1. 概念 2. 格式 端口号 1. 概念 2.格式 认识协议 1. 概念 2. 作用…...