ROC 曲线(接收者操作特征曲线)是一种显示分类模型在所有分类阈值下的效果的图表。该曲线绘制了以下两个参数:

  • 真正例率
  • 假正例率

真正例率 (TPR) 是召回率的同义词,因此定义如下:

$$TPR = \frac{TP} {TP + FN}$$

假正例率 (FPR) 的定义如下:

$$FPR = \frac{FP} {FP + TN}$$

ROC 曲线用于绘制采用不同分类阈值时的 TPR 与 FPR。降低分类阈值会导致将更多样本归为正类别,从而增加假正例和真正例的个数。下图显示了一个典型的 ROC 曲线。

为了计算 ROC 曲线上的点,我们可以使用不同的分类阈值多次评估逻辑回归模型,但这样做效率非常低。幸运的是,有一种基于排序的高效算法可以为我们提供此类信息,这种算法称为曲线下面积。


曲线下面积:ROC 曲线下面积

曲线下面积表示“ROC 曲线下面积”。也就是说,曲线下面积测量的是从 (0,0) 到 (1,1) 之间整个 ROC 曲线以下的整个二维面积(参考积分学)。

曲线下面积对所有可能的分类阈值的效果进行综合衡量。曲线下面积的一种解读方式是看作模型将某个随机正类别样本排列在某个随机负类别样本之上的概率。以下面的样本为例,逻辑回归预测从左到右以升序排列:

曲线下面积表示随机正类别(绿色)样本位于随机负类别(红色)样本右侧的概率。

曲线下面积的取值范围为 0-1。预测结果 100% 错误的模型的曲线下面积为 0.0;而预测结果 100% 正确的模型的曲线下面积为 1.0。

曲线下面积因以下两个原因而比较实用:

  1. 曲线下面积的尺度不变。它测量预测的排名情况,而不是测量其绝对值。

  2. 曲线下面积的分类阈值不变。它测量模型预测的质量,而不考虑所选的分类阈值。

不过,这两个原因都有各自的局限性,这可能会导致曲线下面积在某些用例中不太实用:

  • 并非总是希望尺度不变。 例如,有时我们非常需要被良好校准的概率输出,而曲线下面积无法告诉我们这一结果。

  • 并非总是希望分类阈值不变。 在假负例与假正例的代价存在较大差异的情况下,尽量减少一种类型的分类错误可能至关重要。例如,在进行垃圾邮件检测时,您可能希望优先考虑尽量减少假正例(即使这会导致假负例大幅增加)。对于此类优化,曲线下面积并非一个实用的指标。


引用

分类 (Classification):ROC 和曲线下面积

转载于:https://www.cnblogs.com/taro/p/8643377.html

分类--ROC 和曲线下面积相关推荐

  1. 二分类及多分类ROC和PR曲线绘制

    目录 1.二分类曲线 1.1 二分类ROC曲线 1.2 二分类PR曲线 2.多分类曲线 2.1多分类ROC曲线 2.2 多分类PR曲线 前两天2022年第二届全国高校大数据竞赛已经落下帷幕,比赛中也用 ...

  2. 多分类-- ROC曲线和AUC值

    本文主要介绍一下多分类下的ROC曲线绘制和AUC计算,并以鸢尾花数据为例,简单用python进行一下说明.如果对ROC和AUC二分类下的概念不是很了解 由于ROC曲线是针对二分类的情况,对于多分类问题 ...

  3. 多分类RandomForest回归及ROC曲线绘制

    使用multiROC包可实现多分类ROC曲线的绘制 require(multiROC) data(iris) head(iris)set.seed(123456) total_number <- ...

  4. caffe版本frcnn的 ROC,AUC,PR,AP介绍及python绘制

    这里介绍一下如题所述的四个概念以及相应的使用python绘制曲线: 参考博客:使用Python画ROC曲线以及AUC值 一般我们在评判一个分类模型的好坏时,一般使用MAP值来衡量,MAP越接近1,模型 ...

  5. 如何理解ROC曲线和AUC值

    1.ROC曲线下的面积就是AUC值. 2.如何绘制ROC曲线,通过改变不同的阈值,每个阈值都可以得到一个混淆矩阵,通过混淆矩阵,可以计算出假阳性率和真阳性率.即该坐标系下的一个点.将阈值从0,调整到1 ...

  6. roc图 r语言_R语言pROC包绘制ROC曲线

    如果没有时间精力学习代码,推荐了解:零代码数据挖掘课程 pROC package 以下是本包中常用的一些缩写 ROC: receiver operating characteristic,ROC曲线 ...

  7. Python混淆矩阵(confusion_matrix)FP、FN、TP、TN、ROC,FROC,精确率(Precision),召回率(Recall),准确率(Accuracy),F1分数详述与实现

    目录 一.FP.FN.TP.TN 二.准确率(Accuracy).精确率(Precision).召回率(Recall).F1score 2.1.准确率(Accuracy) 2.2.召回率(Recall ...

  8. 把多个ROC曲线画在一张图上

    为了展示实验效果,ROC曲线也能更直观的展示而且美观.所以我想画出ROC曲线.下面是两个方法:1)只画一个ROC曲线,2)多个ROC曲线展示在一张图上. 注:我是已经有y-pred,所以直接用即可,不 ...

  9. 分类中使用的一些评价指标

    敏感性(SEN) 敏感性指由金标准确诊为有病地实验组内所检测出阳性病例数的比率(%),即实验诊断的真阳性率.其敏感性越高,假阴率也就越低.假阴率等于漏诊率,因此,敏感性高的实验诊断用于疾病诊断时,其值 ...

  10. 医学图像多分类的评价指标(包括混淆矩阵,metrics.classification_report等)

    最近在做一个四分类的医学图像分类,记录下到处凑来的分类效果评价指标吧: y_true,y_pred,outProb 都是列表 发现了一个问题:metrics.classification_report ...

最新文章

  1. python 回文链表
  2. [Android]文本框实现搜索和清空效果
  3. Chrome 键盘快捷键(Mac)
  4. python文字识别 训练_Python3.x:pytesseract识别率提高(样本训练)
  5. 18.看板方法---精益的一种经济学模型
  6. 【图像增强】基于matlab HSV空间双边滤波图像去雾【含Matlab源码 067期】
  7. Total Commander工具栏图标 备份
  8. Idea设置全局highlighting level 为Syntax
  9. 游戏打不开该怎么设置计算机,驱动人生游戏修复工具,轻松解决DNF打不开的问题。...
  10. 川农计算机应用基础考试文档,中学生计算机基础考试题库
  11. VOIP技术连载之二--VOIP呼叫流程
  12. 烤仔的朋友们 | 细数11位身价超十亿美元加密富豪,灰度创始人仅排第七
  13. 染色体的基因顺序遗传图谱
  14. 渗透测试资产指纹识别工具
  15. C语言 学生管理系统 c++ 学生管理系统
  16. 费诺编码C程序及演示结果
  17. JWT框架简单测评,哪款是你的菜
  18. java.lang.OutOfMemoryError: GC overhead limit exceeded解决办法
  19. ZStack实践汇 | ZStack云平台应用堡垒机教程
  20. 上传百度文库要掌握的方法技巧,这样上传百度文库通过率高

热门文章

  1. 相机变换AND正交投影AND透视投影
  2. 再生龙clonezilla备份系统全过程
  3. 毕设题目:Matlab交通标志识别
  4. movs 数据传送指令_1.数据传送指令中,错误的操作是()。 A.MOVSS[BX+DI],1000H B.......
  5. python网课培训班学费一般多少
  6. 公众号快速注册并认证小程序
  7. SLAM常见面试题集锦
  8. 电线的一些小知识学习一下
  9. 【冷冻电镜入门】加州理工公开课课程笔记 Part 3: Image Formation
  10. 【语音识别】基于HMM实现中文语音识别含Matlab源码