IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> 记录篇:【百面机器学习】第二章.模型评估---ROC曲线 -> 正文阅读

[人工智能]记录篇:【百面机器学习】第二章.模型评估---ROC曲线

问题1 什么是ROC曲线?

ROC 曲线是 Receiver Operating Characteristic Curve 的简称,中文名为 受试者工作特征曲线” ROC 曲线源于军事领域,而后在医学领域应用甚广, 受试者工作特征曲线” 这一名称也正是来自于医学领域。ROC曲线的横坐标为假阳性率( False Positive Rate FPR );纵坐标为真阳性率(True Positive Rate TPR )。 FPR 和TPR的计算方法分别为

上式中, P 是真实的正样本的数量, N 是真实的负样本的数量, 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 )。

问题2 如何绘制ROC曲线?

事实上, ROC 曲线是通过不断移动分类器的 截断点 来生成曲线上的一组关键点的,通过下面的例子进一步来解释“ 截断点 的概念。
在二值分类问题中,模型的输出一般都是预测样本为正例的概率。假设测试集中有20 个样本, 样本按照预测概率从高到低排序。在输出最终的正例、负例之前,我们需要指定一个阈值,预测概率大于该阈值的样本会被判为正例,小于该阈值的样本则会被判为负例。比如,指定阈值为0.9 ,那么只有第一个样本会被预测为正例,其他全部都是负例。上面所说的“ 截断点 指的就是区分正负预测结果的阈值。通过动态地调整截断点,从最高的得分开始(实际上是从正无穷开始,对应着ROC 曲线的零点),逐渐调整到最低得分,每一个截断点都会对应一个 FPR TPR ,在 ROC 图上绘制出每个截断点对应的位置,再连接所有点就得到最终的ROC曲线。
其实,还有一种更直观地绘制 ROC 曲线的方法。首先,根据样本标签统计出正负样本的数量,假设正样本数量为P ,负样本数量为 N ;接下来,把横轴的刻度间隔设置为1/ N ,纵轴的刻度间隔设置为 1/ P ;再根据模型输出的预测概率对样本进行排序(从高到低);依次遍历样本,同时从零点开始绘制ROC 曲线,每遇到一个正样本就沿纵轴方向绘制一个刻度间隔的曲线,每遇到一个负样本就沿横轴方向绘制一个刻度间隔的曲线,直到遍历完所有样本,曲线最终停在(1,1 )这个
点,整个 ROC 曲线绘制完成。

问题3 如何计算AUC

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

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

相比P-R曲线, ROC 曲线有一个特点,当正负样本的分布发生变化时, ROC 曲线的形状能够基本保持不变,而P-R曲线的形状一般会发生较剧烈的变化。
这个特点让ROC 曲线能够尽量降低不同测试集带来的干扰,更加客观地衡量模型本身的性能。这有什么实际意义呢?在很多实际问题中,正负样本数量往往很不均衡。比如,计算广告领域经常涉及转化率模型,正样本的数量往往是负样本数量的1/1000甚至1/10000 。若选择不同的测试集, P-R 曲线的变化就会非常大,而 ROC 曲线则能够更加稳定地反映模型本身的好坏。所以,ROC 曲线的适用场景更多,被广泛用于排序、推荐、广告等领域。但需要注意的是,选择P-R 曲线还是 ROC 曲线是因实际问题而异的,如果研究者希望更多地看到模型在特定数据集上的表现,P-R 曲线则能够更直观地反映其性能。
  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-12-01 17:42:25  更:2021-12-01 17:45:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 2:16:02-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码