逻辑回归之ROC曲线的绘制
逻辑回归之ROC曲线的绘制
关于ROC曲线的绘制过程,通过以下举例进行说明
假设有6次展示记录,有两次被点击了,得到一个展示序列(1:1,2:0,3:1,4:0,5:0,6:0),前面的表示序号,后面的表示点击(1)或没有点击(0)。
然后在这6次展示的时候都通过model算出了点击的概率序列。
下面看三种情况。
1 曲线绘制
1.1 如果概率的序列是(1:0.9,2:0.7,3:0.8,4:0.6,5:0.5,6:0.4)。[比如以0.75进行分割]
与原来的序列一起,得到序列(从概率从高到低排)
1 | 1 | 0 | 0 | 0 | 0 |
---|---|---|---|---|---|
0.9 [90%的概率被点击] 原序号1 | 0.8 原序号3 | 0.7 [70%的概率不被点击] 原序号2 | 0.6 原序号4 | 0.5 原序号5 | 0.4 原序号6 |
绘制的步骤是:
1)把概率序列从高到低排序,得到顺序(1:0.9,3:0.8,2:0.7,4:0.6,5:0.5,6:0.4);
2)从概率最大开始取一个点作为正类,取到点1,计算得到TPR=0.5,FPR=0.0;
3)从概率最大开始,再取一个点作为正类,取到点3,计算得到TPR=1.0,FPR=0.0;
4)再从最大开始取一个点作为正类,取到点2,计算得到TPR=1.0,FPR=0.25;
5)以此类推,得到6对TPR和FPR。
然后把这6对数据组成6个点(0,0.5),(0,1.0),(0.25,1),(0.5,1),(0.75,1),(1.0,1.0) [FPR, TPR]。
这6个点在二维坐标系中能绘出来。
[效果最好]
看看图中,那个就是ROC曲线。
1.2 如果概率的序列是(1:0.9,2:0.8,3:0.7,4:0.6,5:0.5,6:0.4)
与原来的序列一起,得到序列(从概率从高到低排)
1 | 0 | 1 | 0 | 0 | 0 |
---|---|---|---|---|---|
0.9 | 0.8 | 0.7 | 0.6 | 0.5 | 0.4 |
绘制的步骤是:
6)把概率序列从高到低排序,得到顺序(1:0.9,2:0.8,3:0.7,4:0.6,5:0.5,6:0.4);
7)从概率最大开始取一个点作为正类,取到点1,计算得到TPR=0.5,FPR=0.0;
8)从概率最大开始,再取一个点作为正类,取到点2,计算得到TPR=0.5,FPR=0.25;
9)再从最大开始取一个点作为正类,取到点3,计算得到TPR=1.0,FPR=0.25;
10)以此类推,得到6对TPR和FPR。
然后把这6对数据组成6个点(0,0.5),(0.25,0.5),(0.25,1),(0.5,1),(0.75,1),(1.0,1.0)。
这6个点在二维坐标系中能绘出来。
[有个别错的点]
看看图中,那个就是ROC曲线。
1.3 如果概率的序列是(1:0.4,2:0.6,3:0.5,4:0.7,5:0.8,6:0.9)
与原来的序列一起,得到序列(从概率从高到低排)
0 | 0 | 0 | 0 | 1 | 1 |
---|---|---|---|---|---|
0.9 | 0.8 | 0.7 | 0.6 | 0.5 | 0.4 |
绘制的步骤是:
11)把概率序列从高到低排序,得到顺序(6:0.9,5:0.8,4:0.7,2:0.6,3:0.5,1:0.4);
12)从概率最大开始取一个点作为正类,取到点6,计算得到TPR=0.0,FPR=0.25;
13)从概率最大开始,再取一个点作为正类,取到点5,计算得到TPR=0.0,FPR=0.5;
14)再从最大开始取一个点作为正类,取到点4,计算得到TPR=0.0,FPR=0.75;
15)以此类推,得到6对TPR和FPR。
然后把这6对数据组成6个点(0.25,0.0),(0.5,0.0),(0.75,0.0),(1.0,0.0),(1.0,0.5),(1.0,1.0)。
这6个点在二维坐标系中能绘出来。
[得到了相反的结果,效果最差,完全相反]
看看图中,那个就是ROC曲线。
2 意义解释
如上图的例子,总共6个点,2个正样本,4个负样本,取一个正样本和一个负样本的情况总共有8种。
上面的第一种情况,从上往下取,无论怎么取,正样本的概率总在负样本之上,所以分对的概率为1,AUC=1。再看那个ROC曲线,它的积分是什么?也是1,ROC曲线的积分与AUC相等。
上面第二种情况,如果取到了样本2和3,那就分错了,其他情况都分对了;所以分对的概率是0.875,AUC=0.875。再看那个ROC曲线,它的积分也是0.875,ROC曲线的积分与AUC相等。
上面的第三种情况,无论怎么取,都是分错的,所以分对的概率是0,AUC=0.0。再看ROC曲线,它的积分也是0.0,ROC曲线的积分与AUC相等。
很牛吧,其实AUC的意思是——Area Under roc Curve,就是ROC曲线的积分,也是ROC曲线下面的面积。
绘制ROC曲线的意义很明显,不断地把可能分错的情况扣除掉,从概率最高往下取的点,每有一个是负样本,就会导致分错排在它下面的所有正样本,所以要把它下面的正样本数扣除掉(1-TPR,剩下的正样本的比例)。总的ROC曲线绘制出来了,AUC就定了,分对的概率也能求出来了。
逻辑回归之ROC曲线的绘制相关推荐
- sklearn 绘制roc曲线_sklearn——逻辑回归、ROC曲线与KS曲线
一.sklearn中逻辑回归的相关类 在sklearn的逻辑回归中,主要用LogisticRegression和LogisticRegressionCV两个类来构建模型,两者的区别仅在于交叉验证与正则 ...
- python ks曲线_sklearn——逻辑回归、ROC曲线与KS曲线
一.sklearn中逻辑回归的相关类 在sklearn的逻辑回归中,主要用LogisticRegression和LogisticRegressionCV两个类来构建模型,两者的区别仅在于交叉验证与正则 ...
- 多分类RandomForest回归及ROC曲线绘制
使用multiROC包可实现多分类ROC曲线的绘制 require(multiROC) data(iris) head(iris)set.seed(123456) total_number <- ...
- 影像组学视频学习笔记(15)-ROC曲线及其绘制、Li‘s have a solution and plan.
本笔记来源于B站Up主: 有Li 的影像组学系列教学视频 本节(15)主要介绍: ROC曲线及其绘制 ROC 曲线 ROC = receiver operating characteristic cu ...
- 转载——逻辑回归的袅娜曲线,你是否会过目难忘?
在上一集<你在,或者不在,需要逻辑回归来算>里,我们初次认识了一种新的统计学方法--逻辑回归.和线性回归相比,逻辑回归能帮助我们应对一种新的情况:因变量是二元变量(通常表现为是/否,数值上 ...
- R语言实战 input+结果——ROC曲线的绘制 auc 时量下曲线面积
1.数据处理 第一步当然得处理一下数据.默认的Iris数据集有三类鸢尾花,我目前的理解是只有二分类才画的出ROC曲线,所以才去一定的手段处理一下数据: 输入 # 数据准备 iris2 <- ir ...
- Sklearn机器学习——ROC曲线、ROC曲线的绘制和AUC面积、运用ROC曲线找到最佳阈值
目录 1 ROC曲线 2 ROC曲线的绘制 2.1 Sklearn中的ROC曲线和AUC面积 2.2 利用ROC曲线找到最佳阈值 1 ROC曲线 上篇博客介绍了ROC曲线的概率和阈值还有SVM实现概率 ...
- stata绘制roc曲线_绘制ROC曲线、找截断值,教你两种软件操作方法!
我们在前面学习过用SPSS(SPSS操作:多项测量指标的ROC曲线分析)和Stata (Stata教程:ROC曲线下面积的比较)绘制ROC曲线.但是,最佳临界点--截断值(cut-off point) ...
- roc曲线怎么绘制_ROC曲线和PR曲线
在机器学习中,ROC曲线被广泛应用于二分类问题中来评估分类器的可信度,当处理一些高度不均衡的数据集时,PR曲线能表现出更多的信息. 在二分类问题中,分类器将一个实例的分类标记为正例还是负例,这可以用一 ...
- Matlab机器学习(分类问题)中多个ROC曲线的绘制
该教程适用于2017版本以后的matlab,老版本可能会有差异. step1打开机器学习分类工具箱,导入数据选择"全部模型"进行训练:训练结果如图所示: step2 寻找准确度较高 ...
最新文章
- z-index 用法
- springboot+mybatis+sqlserver导出数据库数据并实现下载到excel
- UVALive - 7163
- Redis 面试题 50 问,史上最全
- mdadm,用命令做RAID
- 2014025689《嵌入式程序设计》第一周学习总结
- BetterAndBetter(BAB)的使用详解
- oracle 内存分析工具,IDE 中的分析工具
- I/0口输入输出实验 流水灯程序 P0、P1、P2、P3口作为输出口,连接八只发光二极管,编写程序,使发光二极管从左至右循环点亮。
- docs和src_《编写Docs波特兰2017》中的提示和顶级演示
- java 货架高度摆放最优算法_商铺内部空间摆放竟暗藏玄机
- powershell 安装mvn_Maven 安装好之后,命令行执行 `mvn -v` 提示“'mvn' 不是内部或外部命令,也不是可运行的程序 或批处理文件。”...
- 如何进行大数据分析与处理
- json对象与json字符串互转方法
- mac电脑利用file和iconv命令修改文件编码
- 复现IIS6.0PUT任意上传漏洞
- react18新特性
- handsome对应php文件,基于handsome主题的一些美化总结
- 验证码的java实现
- 世界上最具价值的10家公司!