04 ROC 曲线、Threshold Selection 与 AUC
04 ROC 曲线、Threshold Selection 与 AUC很多二分类模型并不是直接输出Positive Negative而是先输出一个连续分数例如0.92 0.81 0.63 0.47 0.15然后通过一个阈值threshold将分数转换成类别。例如score 0.5 → Positive score 0.5 → NegativeROC Curve 的核心作用就是观察当 threshold 不断变化时模型对正类和负类的区分能力如何变化。一、Threshold 为什么重要假设模型输出SampleScoreA0.91B0.77C0.64D0.49E0.32如果threshold 0.5则A B C → Positive D E → Negative如果threshold 0.3则A B C D E → Positive所以模型本身没有改变但 threshold 改变后TP、FP、TN、FN 都会改变。二、降低阈值会发生什么当 threshold 降低时更多样本被预测为 Positive通常TP ↑ FP ↑ FN ↓ TN ↓因此Recall / TPR ↑ FPR ↑模型变得更加“激进”。三、提高阈值会发生什么当 threshold 提高时只有高分样本才被预测为 Positive通常TP ↓ FP ↓ FN ↑ TN ↑因此TPR ↓ FPR ↓模型变得更加“保守”。四、ROC Curve 的两个坐标轴ROC 的完整名称是Receiver Operating Characteristic Curve横轴是False Positive Rate FPR公式FPRFPFPTNFPR\frac{FP}{FPTN}FPRFPTNFP​纵轴是True Positive Rate TPR公式TPRTPTPFNTPR\frac{TP}{TPFN}TPRTPFNTP​而TPR Recall Sensitivity因此 ROC Curve 本质上画的是TPR vs FPR五、ROC 曲线是如何产生的假设模型对所有样本输出概率。我们不断改变 threshold1.0 0.9 0.8 0.7 ... 0.2 0.1 0.0对于每一个 threshold得到新的预测类别计算 TP、FP、TN、FN计算 TPR计算 FPR得到一个点(FPR, TPR)将所有点连接起来就得到 ROC Curve。六、理想 ROC 曲线是什么样理想情况下FPR 很低 TPR 很高也就是曲线尽量靠近左上角左上角表示FPR 0 TPR 1也就是没有误报 所有正样本都被找到这是理想分类器。七、随机分类器是什么样如果模型没有任何区分能力相当于随机猜测。ROC 曲线通常接近对角线也就是TPR ≈ FPR这意味着模型并没有真正学会区分正类和负类。八、AUC 是什么AUC 全称Area Under the ROC Curve即ROC 曲线下面积。其范围通常为0 到 1常见理解AUC 1.0 非常理想 AUC 0.5 接近随机猜测九、AUC 的概率解释AUC 还有一个非常重要的解释随机抽取一个 Positive 和一个 Negative模型把 Positive 的分数排在 Negative 前面的概率。例如AUC 0.90可以理解为随机拿一个正样本和一个负样本模型大约有 90% 的概率把正样本评分排得更高。因此 AUC 衡量的是ranking ability 排序能力而不仅仅是某一个固定 threshold 下的分类准确率。十、为什么 AUC 适合比较模型假设Model A threshold 0.5 Accuracy 91% Model B threshold 0.5 Accuracy 89%仅看一个 threshold 不一定公平。因为不同模型输出分数的尺度可能不同 最佳 threshold 也可能不同AUC 则综合观察多个 threshold 下的区分能力。因此ROC-AUC常用于比较不同模型的整体排序能力。十一、AUC 不能告诉你最佳 threshold这是非常重要的一点。AUC 回答模型整体区分正负样本的能力怎么样但它不直接回答实际部署时 threshold 应该取多少threshold 应根据FP 的成本 FN 的成本 Precision 要求 Recall 要求 业务容量 人工复核能力进行选择。十二、一种常见 threshold 选择方法Youden’s J一种常见统计指标是JTPR−FPRJTPR-FPRJTPR−FPR因为Specificity1−FPRSpecificity1-FPRSpecificity1−FPR所以也可写为JSensitivitySpecificity−1JSensitivitySpecificity-1JSensitivitySpecificity−1选择使 J 最大的 threshold可以得到一种平衡 Sensitivity 和 Specificity 的选择。但是这只适用于两类错误代价大致对称的情况。真实业务中仍应优先依据错误成本。十三、基于成本选择 threshold假设一次 FN 的成本 100 一次 FP 的成本 5那么可以定义Cost100×FN5×FPCost100\times FN5\times FPCost100×FN5×FP对于不同 threshold 分别计算 Cost。最终选择Cost 最低的 threshold。这种方法往往比单纯追求Accuracy 最大更加符合真实业务。十四、ROC-AUC 与类别不平衡ROC-AUC 在类别不平衡时仍然可以使用。但是需要注意FPRFPFPTNFPR\frac{FP}{FPTN}FPRFPTNFP​如果 TN 非常大即使 FP 数量已经不少 FPR 仍然可能很低因此极端不平衡时建议同时看Precision Recall PR Curve PR-AUC十五、ROC、AUC 和 Threshold 的关系可以把三者理解成Threshold 决定某一个具体 operating point ROC Curve 展示所有 threshold 下的 TPR/FPR trade-off AUC 把整条 ROC Curve 压缩成一个总体分数所以Threshold → 部署决策 ROC → 阈值变化 AUC → 模型比较十六、总结ROC Curve 解决的是threshold 改变时TPR 和 FPR 如何变化AUC 解决的是模型整体区分正负样本的能力有多强而 threshold selection 解决的是真实部署时到底应该在哪一个位置做分类决策因此这三个概念相关但不能混为一谈。

相关新闻

场景驱动的技术工具选型与集成:从需求识别到落地验证的完整方法论

场景驱动的技术工具选型与集成:从需求识别到落地验证的完整方法论

这类主题最容易写成空泛的“资源列表”,对实际工作帮助不大。我理解大家找“资源与工具”时,真正想解决的是: 面对一个具体任务,如何快速找到靠谱、能用、不踩坑的解决方案,并把它整合到自己的工作流里。 所以&…

2026/9/17 6:21:11 阅读更多 →
AWS解决方案架构师认证SAAC02:从零构建企业级云架构的终极实战指南

AWS解决方案架构师认证SAAC02:从零构建企业级云架构的终极实战指南

AWS解决方案架构师认证SAAC02:从零构建企业级云架构的终极实战指南 【免费下载链接】aws-sa-associate-saac02 Course Files for AWS Certified Solutions Architect Certification Course (SAAC02) - Adrian Cantrill 项目地址: https://gitcode.com/gh_mirrors/…

2026/9/16 0:59:17 阅读更多 →
扒完Codex源码才懂:真正能写代码的Agent,靠的不只是大模型

扒完Codex源码才懂:真正能写代码的Agent,靠的不只是大模型

文章目录1 先从一个扎心的误解说起2 拿个真实场景,你就懂差距在哪了2.1 普通大模型 vs 真Coding Agent2.2 根本不是一次问答能搞定的3 整体架构先摸清楚,一共三层3.1 最上层:各种客户端入口3.2 中间层:核心Agent Harness3.3 最下层…

2026/9/17 1:33:45 阅读更多 →

最新新闻

一文搞懂opponex:从零搭建高可用后端实战

一文搞懂opponex:从零搭建高可用后端实战

一文搞懂opponex:从零搭建高可用后端实战 看了一堆教程还是不会写项目?别急,这不是你的错。很多时候,碎片化的知识点像散落的拼图,缺少一个完整的骨架把它们串起来。今天我们就 一文搞懂…

2026/9/22 3:15:54 阅读更多 →
解密加密狗注册源码:3个致命坑让项目白干

解密加密狗注册源码:3个致命坑让项目白干

解密加密狗注册源码:3个致命坑让项目白干 做软件保护的老手都知道, 加密狗注册 是交付前的最后一道鬼门关。我见过太多团队,看了一堆教程还是不会写项目,代码跑通了,一换环境就崩。别怪文档没写清楚,很多坑文档根本不会告诉你,因为那是“黑盒”。今…

2026/9/22 3:15:54 阅读更多 →
u盘安装fedora全流程拆解:从入门到精通避坑指南

u盘安装fedora全流程拆解:从入门到精通避坑指南

u盘安装fedora全流程拆解:从入门到精通避坑指南 配置环境就卡半天?别急着骂系统,90%的人卡在引导文件没生成。 想用u盘安装fedora却总报“no bootable device”?问题往往出在镜像校验和分区格式上。…

2026/9/22 3:15:54 阅读更多 →
5个高频坑点:哦哦哦哦哦哦哦新手避坑指南

5个高频坑点:哦哦哦哦哦哦哦新手避坑指南

5个高频坑点:哦哦哦哦哦哦哦新手避坑指南 刚入职第一周,生产环境突然崩了,日志里全是红彤彤的堆栈信息,看得人头皮发麻。那种报错一堆看不懂 StackTrace…

2026/9/22 3:15:54 阅读更多 →
3步搞定dailyroads,面试必问环境配置不卡壳

3步搞定dailyroads,面试必问环境配置不卡壳

3步搞定dailyroads,面试必问环境配置不卡壳 配置环境就卡半天?别急,今天直接上干货。 很多刚接触 dailyroads 的朋友,第一步就卡在依赖安装和版本兼容上,半天没跑通一个 Hello World。更扎心的是, 面试必问…

2026/9/22 3:15:54 阅读更多 →
文乃配置踩坑实录:3个致命错误教你新手避坑

文乃配置踩坑实录:3个致命错误教你新手避坑

文乃配置踩坑实录:3个致命错误教你新手避坑 配置环境就卡半天?别急,这真不是你的锅。很多新手在折腾 wenai 相关工具链或同名库时,常因版本冲突或路径问题陷入死循环,看似简单却处处是雷。 坑的现象:报错信息像天书,日志根本看不懂…

2026/9/22 3:14:53 阅读更多 →

日新闻

3台商务办公笔记本实测:手写实现环境配置,告别卡半天

3台商务办公笔记本实测:手写实现环境配置,告别卡半天

3台商务办公笔记本实测:手写实现环境配置,告别卡半天 配置环境就卡半天?别怪机器慢,多半是你没选对工具链。在Java、Go或Python的项目现场, 手写实现…

2026/9/22 0:00:41 阅读更多 →
剑帝加点速查手册:3分钟搞懂核心逻辑

剑帝加点速查手册:3分钟搞懂核心逻辑

剑帝加点速查手册:3分钟搞懂核心逻辑 面试被问原理答不上来,是不是常态?别慌。很多开发者对着 GitHub 开源仓库里的代码发呆,看似简单实则暗藏玄机。今天这份【剑帝加点】速查手册,直接带你拆解核心实现,把面试必考的原理讲透。…

2026/9/22 0:00:41 阅读更多 →
手写实现图片压缩网站核心:搞定WebP转换与质量调优

手写实现图片压缩网站核心:搞定WebP转换与质量调优

手写实现图片压缩网站核心:搞定WebP转换与质量调优 复制来的代码跑不通不知道怎么调?别慌,这种“复制粘贴地狱”在开发圈太常见了。尤其是做 图片压缩网站…

2026/9/22 0:00:41 阅读更多 →

周新闻

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

Flutter for OpenHarmony游戏卡片渐变背景实战:从原理到性能优化

直接铺开项目本身吧。这几个月我一直在折腾一件事:用Flutter给OpenHarmony做一款游戏集合类的App,说白了就是把若干小游戏塞进一个壳里,用统一入口分发。这个方向本身不算新鲜,真正让我花了不少心思的,是首页那堆游戏卡…

2026/9/21 3:13:20 阅读更多 →
Word表格编号全攻略:从列表编号到题注交叉引用

Word表格编号全攻略:从列表编号到题注交叉引用

写Word文档,最让人头疼的往往是那些“看起来不起眼”的小问题。比如表格编号这事:今天在表后面多加了两个空白行,明天给客户交稿前发现整个章节的编号全部错位,光是挨个改序号就能耗掉大半个下午。我前阵子帮人整理一份上百页的技…

2026/9/21 2:19:36 阅读更多 →
从第一个站到第二个站:独立开发者的静态网站选型与落地实践

从第一个站到第二个站:独立开发者的静态网站选型与落地实践

1. 项目概述1.1 核心需求解析做独立开发者这几年,说实话,第一个网站上线的那天晚上我兴奋得没睡着。但等它跑了半年,流量惨淡、功能臃肿、代码自己都懒得看第二遍之后,我才慢慢琢磨明白一个道理:第一个网站是练手&…

2026/9/21 4:51:05 阅读更多 →

月新闻

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能

持续集成 流水线自动化与 声明式交付 实践:原型怎样变成可用功能分类:[AI/大模型]细分主题:AI 增强型 CI/CD 流水线自动化与 GitOps 实践:Agent 工作流、工具调用与任务拆解:从原型到生产的验收清单很多团队在尝试用大…

2026/9/21 15:36:51 阅读更多 →
容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场

容器编排 生产环境运维与排障实战:复盘记录怎样真正派上用场分类:[工程技术]细分主题:Kubernetes 生产环境运维与排障实战:可复制的项目复盘模板与决策记录大部分团队的事故复盘报告,最后都变成了躺在 Confluence 或钉…

2026/9/21 15:36:51 阅读更多 →
容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步

容器 容器化技术与镜像安全管理:核心链路应该先拆哪一步分类:[工程技术]细分主题:Docker 容器化技术与镜像安全管理:核心链路的逐步实现与关键代码取舍面对一个积累了五六年历史包袱的单体架构应用(包含 Web 接口、后台…

2026/9/22 2:43:42 阅读更多 →