前端进阶之旅前端进阶之旅
  • 基础篇HTML/CSS/JS 打底
  • 进阶篇原理与工程化
  • 高频篇面试最常问的那批
  • 精选篇按模块收敛的总结
  • 手写篇常考代码手写实现
  • 面经篇真实面试问题复盘
  • AI 篇NEWAI 时代的前端考点
  • 历年面经NEW按年份追踪真实考点
  • 每日一题每天一道,攒手感
  • 专项自测100 题快速查漏
  • 小程序题库小程序专项刷题
  • 算法题库NEW在线编码即时判题
  • 知识卡片NEW碎片时间过考点
  • 面试题大全常见问题解析
  • AI 答疑NEW随时提问,即时解析
  • AI 模拟面试NEW模拟真实面试 + 报告
  • AI 定制路线NEW按你的简历现排
  • AI 知识地图NEW串起全站知识点
  • 原理篇React / Vue 源码拆解
  • HTTP从报文一路讲到 HTTPS
  • 浏览器渲染、事件循环、进程
  • 计算机基础Linux、网络、操作系统
  • 设计模式23 种模式怎么用
  • Node学习指南从环境搭建到服务端
  • NPM工作流script、依赖与发布
  • Docker容器化部署上手
  • Canvas图形与动画实战
  • 前端系统进阶学习大型项目工程化
  • 前端综合文章长期沉淀的实践文
  • 思维导图知识点全景图
  • 学习路线按图索骥不跑偏
  • AI 热点NEWAI 每日动态
  • 公众号动态公众号历史文章
  • 博客动态站长的技术博客
  • 开发者导航常用工具与文档站
  • 基础篇HTML/CSS/JS 打底
  • 进阶篇原理与工程化
  • 高频篇面试最常问的那批
  • 精选篇按模块收敛的总结
  • 手写篇常考代码手写实现
  • 面经篇真实面试问题复盘
  • AI 篇NEWAI 时代的前端考点
  • 历年面经NEW按年份追踪真实考点
  • 每日一题每天一道,攒手感
  • 专项自测100 题快速查漏
  • 小程序题库小程序专项刷题
  • 算法题库NEW在线编码即时判题
  • 知识卡片NEW碎片时间过考点
  • 面试题大全常见问题解析
  • AI 答疑NEW随时提问,即时解析
  • AI 模拟面试NEW模拟真实面试 + 报告
  • AI 定制路线NEW按你的简历现排
  • AI 知识地图NEW串起全站知识点
  • 原理篇React / Vue 源码拆解
  • HTTP从报文一路讲到 HTTPS
  • 浏览器渲染、事件循环、进程
  • 计算机基础Linux、网络、操作系统
  • 设计模式23 种模式怎么用
  • Node学习指南从环境搭建到服务端
  • NPM工作流script、依赖与发布
  • Docker容器化部署上手
  • Canvas图形与动画实战
  • 前端系统进阶学习大型项目工程化
  • 前端综合文章长期沉淀的实践文
  • 思维导图知识点全景图
  • 学习路线按图索骥不跑偏
  • AI 热点NEWAI 每日动态
  • 公众号动态公众号历史文章
  • 博客动态站长的技术博客
  • 开发者导航常用工具与文档站
首页程序员面试题库PR-AUC ROC-AUC 罕见事件 评测指标对比
AIAI 开发模型与应用评测

罕见事件检测为什么优先看 PR-AUC 而不是 ROC-AUC?

罕见事件正例极少、负例极多,ROC的FPR分母含大量真负例,观感偏乐观;PR-AUC只看正类精确率与召回率,能真实暴露误报代价。

前端进阶之旅 · 一题精讲更新于 2026.09.05
AI 开发#模型与应用评测#AI 评测#离线应用
先看核心答案
理解线索

PR与ROC敏感对象不同

  1. ROC看全类TPR与FPR由两类总数归一化
  2. PR看正类只考虑Precision与Recall,不含TN
  3. 患病率依赖PR基线随正例比例变化

同一业务优先PR;跨流量场景必须固定阈值点复核。

核心回答

先记住这个答案

因为ROC横轴FPR的分母包含全部真负例,罕见场景下负例基数巨大,少量误报除以百万级分母后FPR仍接近0,曲线被推向左上,AUC虚高;PR-AUC不引入TN,直接用Precision和Recall评估正类捕获能力,对FP比例更敏感,能区分模型实际好坏。但PR-AUC随患病率变化,跨场景对比需谨慎。

  • ROC受TN稀释,罕见事件下偏乐观
  • PR-AUC以正类为中心,对误报敏感
  • PR-AUC随患病率漂移,不可跨集比较

为什么ROC的假阳率容易被真负例稀释

ROC横轴FPR=FP/(FP+TN)。当负例是正例的1000倍时,FP即便达到数万,分母中TN也有数百万,FPR仍小于0.1。曲线被拉向左上方,AUC看似接近1,像没有误报,这实则掩盖了FP的实际数量。

PR不包含TN。Precision=TP/(TP+FP),每次FP增加都直接减少Precision;Recall=TP/(TP+FN)只依赖正例。因此当模型追求高召回而误报激增时,Precision会断崖下降,PR曲线立刻暴露差距。

信用卡欺诈中两个模型的具体比较

设测试集有1000万正常交易和1万欺诈。模型甲抓7000欺诈误伤4万正常;模型乙抓全部10000欺诈但误伤50万。ROC的FPR甲为0.004、乙为0.05,TPR分别为0.7和1,曲线面积差异不大。PR的Precision甲≈0.149、乙≈0.0196,点间距远大于ROC。

若业务限定每拦一笔欺诈最多误伤20单,甲满足而乙不满足。只看ROC会把乙误当几乎完美,PR却把乙的单位捕获成本显式画了出来,所以离线选型应优先看PR-AUC并落到具体阈值。

PR-AUC的使用边界:患病率漂移与操作点模糊

PR-AUC依赖正例患病率。当正例率从1%降到0.1%,同一排序模型的PR曲线会整体下移,面积变小,因此不能将不同流量群体或不同时期的PR-AUC直接比较,而应报告同一阈值下的Precision/Recall点或做基线标准化。

PR-AUC汇总整条曲线,掩盖局部操作区的质量。若业务只需高精确的头部拦截,只比较总面积可能忽略关键区域的Precision恶化。应结合成本函数锁定具体阈值,再以该点指标做最终决策。

回答前,多想一步

容易答错的地方

ROC-AUC高意味着罕见样本检测好
当负例占99%时,FPR被TN压得很低,ROC面积可高达0.99,但实际可能漏掉大量正例。应结合Recall@低FPR或直接看PR-AUC。该误区源于忽略N对FPR的缩放作用。
所有不平衡场景都应该用PR-AUC
若两类成本对称或FN代价远大于FP,ROC的全局视角仍有价值。并且正例率会随时间变化的场景下,PR-AUC不能跨时间比较。指标选择必须基于业务成本,不能一刀切。
试着用自己的话回答

面试官还会怎么问?

二分类完全平衡时还能用PR-AUC吗?

差异会缩小,两类出现概率相同时ROC依然从全体实例概括,PR更强调正类语义。若业务更重视正类,仍建议用PR-AUC;否则ROC更通用。

PR-AUC可以直接用来选分类阈值吗?

不能,它只衡量排序能力。应结合每个阈值的成本(如误伤金额)在P-R曲线上寻找最优点,再验证该点稳定性。

线上A/B实验怎么报告PR-AUC?

按相同流量口径分组计算,避免患病率波动干扰,并同时记录混淆矩阵与期望成本,使决策更接近业务损失。

从一道题,走向一组知识

把知识连起来

模型与应用评测

摘要生成离线评测为什么不能只凭 BLEU 或 ROUGE 判定上线?

同属「模型与应用评测」专题,接着看 BLEU ROUGE 生成评测 人工相关性 局限性 在具体场景中的处理方式。

模型与应用评测

搜索召回评测中 MRR、Recall@k 和 nDCG@k 分别适合什么目标边界?

同属「模型与应用评测」专题,接着看 MRR Recall@k nDCG@k 检索排序 评测指标边界 在具体场景中的处理方式。

参考资料

  • Define success criteria and build evaluations - Claude Platform Docs

示例用于理解所注明的运行环境与边界;延伸学习可结合原文中的更多案例。

本题目录
  1. 先记住这个答案
  2. 为什么ROC的假阳率容易被真负例稀释
  3. 信用卡欺诈中两个模型的具体比较
  4. PR-AUC的使用边界:患病率漂移与操作点模糊
  5. 容易答错的地方
  6. 面试官还会怎么问
  7. 把知识连起来
读懂,再试着讲出来

先看核心答案,再读代码。最后展开追问,检查自己有没有遗漏边界。

试着回答追问
浏览全部面试题理解原理,也关注真实的使用场景。回到顶部 ↑