ROC曲线绘制
ROC 曲线绘制
个人的浅显理解:1.ROC曲线必须是针对连续值输入的,通过选定不同的阈值而得到光滑而且连续的ROC曲线,故通常应用于Saliency算法评价中,因为可以选定0~255中任意的值进行阈值分割,从而得到ROC曲线;
2.对于图像分割算法的评价不适合用ROC曲线进行评价,除非能够得到连续值,而不是二值图像;图像分割算法适合采用准确率、召回率、F1指标的平均值进行评价。
3.针对已经分割好的二值图像:分割出了一系列的分割二值图,除非分割的结果足够大,否则很难得到良好的ROC曲线,一般都是波动很大的,如下图所示。
matlab中已经有现成的针对分类的ROC曲线绘制函数。
目前理解的并不透彻,以下资料可供进一步学习,记录以备忘:
http://blog.sina.com.cn/s/blog_4cf8aad30100gt1g.html
http://www.ilovematlab.cn/thread-62962-1-1.html
http://blog.csdn.net/fuhpi/article/details/8813455
论文:The relationship between Precision-Recall and ROC curves.pdf
matlab中plotroc函数的用法说明:
ROC曲线是通用的分类器评价工具,matlab函数中自带了绘制该曲线的函数plotroc。
plotroc函数的原型为:plotroc(targets, outputs)
其中参数targets是一个矩阵,代表测试集,每一列表示一个测试样本的标签
如果有两类样本,比如第1,2,5个样本属于第1类,第3,4,6个样本属于第2类....则targets应为:
1 1 0 0 1 0 ...
0 0 1 1 0 1 ...
如果只有一类样本,包含了负样本,则只要一行,用1表示正样本,0表示负样本即可,比如targets为:
1 0 1 1 0 0 0 0 1 ...
参数outputs也是一个矩阵,代表分类结果,同样每一列表示一个测试样本的分类结果
同样如果有两类样本,则应有两个分类器,每一列记录了每个测试样本在两个分类器上的得分,此时outputs为:
0.8 0.85 0.2 0.75 0.21 ...
0.8 0.01 0.9 0.23 0.67 ...
如果只有一类,则outputs只有一行,如:
0.8 0.6 0.8 0.7 0.05 0.3 0.03 ...
注意,得分必须在[0, 1]的区间内,可以自己规约一下。
我们将相应的测试标签targets和对应的分类得分outputs输入plotroc中就可以绘制出相应的ROC曲线了。
ROC曲线绘制的更多相关文章
- [机器学习]-分类问题常用评价指标、混淆矩阵及ROC曲线绘制方法
分类问题 分类问题是人工智能领域中最常见的一类问题之一,掌握合适的评价指标,对模型进行恰当的评价,是至关重要的. 同样地,分割问题是像素级别的分类,除了mAcc.mIoU之外,也可以采用分类问题的一些 ...
- R语言︱ROC曲线——分类器的性能表现评价
笔者寄语:分类器算法最后都会有一个预测精度,而预测精度都会写一个混淆矩阵,所有的训练数据都会落入这个矩阵中,而对角线上的数字代表了预测正确的数目,即True Positive+True Nagetiv ...
- ROC曲线的概念和意义
ROC曲线 受试者工作特征曲线 (receiver operating characteristic curve,简称ROC曲线),又称为感受性曲线(sensitivity curve).得此名的原因 ...
- 多分类-- ROC曲线
本文主要介绍一下多分类下的ROC曲线绘制和AUC计算,并以鸢尾花数据为例,简单用python进行一下说明.如果对ROC和AUC二分类下的概念不是很了解,可以先参考下这篇文章:http://blog.c ...
- ROC 曲线/准确率、覆盖率(召回)、命中率、Specificity(负例的覆盖率)
欢迎关注博主主页,学习python视频资源 sklearn实战-乳腺癌细胞数据挖掘(博主亲自录制视频教程) https://study.163.com/course/introduction.ht ...
- 【sklearn】性能度量指标之ROC曲线(二分类)
原创博文,转载请注明出处! 1.ROC曲线介绍 ROC曲线适用场景 二分类任务中,positive和negtive同样重要时,适合用ROC曲线评价 ROC曲线的意义 TPR的增长是以FPR的增长为代价 ...
- 多分类下的ROC曲线和AUC
本文主要介绍一下多分类下的ROC曲线绘制和AUC计算,并以鸢尾花数据为例,简单用python进行一下说明.如果对ROC和AUC二分类下的概念不是很了解,可以先参考下这篇文章:http://blog.c ...
- 【分类模型评判指标 二】ROC曲线与AUC面积
转自:https://blog.csdn.net/Orange_Spotty_Cat/article/details/80499031 略有改动,仅供个人学习使用 简介 ROC曲线与AUC面积均是用来 ...
- FDDB人脸检测数据集 生成ROC曲线
看了好多博客,踩了很多坑,终于把FDDB数据集的ROC曲线绘制出来了.记录一下. 环境:ubuntu18.04 1.数据集准备 去FDDB官网:http://vis-www.cs.umass.edu/ ...
随机推荐
- 数据结构——二叉查找树、AVL树
二叉查找树:由于二叉查找树建树的过程即为插入的过程,所以其中序遍历一定为升序排列! 插入:直接插入,插入后一定为根节点 查找:直接查找 删除:叶子节点直接删除,有一个孩子的节点删除后将孩子节点接入到父 ...
- 迷宫问题_BFS_挑战程序设计竞赛p34
给定一个N*M的迷宫,求从起点到终点的最小步数. N,M<100: 输入: 10 10#S######.#......#..#.#.##.##.#.#........##.##.####.... ...
- Match:Milking Grid(二维KMP算法)(POJ 2185)
奶牛矩阵 题目大意:给定一个矩阵,要你找到一个最小的矩阵,这个矩阵的无限扩充的矩阵包含着原来的矩阵 思路:乍一看这一题确实很那做,因为我们不知道最小矩阵的位置,但是仔细一想,如果我们能把矩阵都放在左上 ...
- uva 1584.Circular Sequence
题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem ...
- XML 数据请求与JSON 数据请求
(1)XML 数据请求 使用 AFNetworking 中的 AFHTTPRequestOperation 和 AFXMLParserResponseSerializer,另外结合第三方框架 XMLD ...
- September 6th 2016 Week 37th Tuesday
I only wish to face the sea, with spring flowers blossoming. 我只愿面朝大海,春暖花开. That scenery is beautiful ...
- SQLServer触发器
触发器的作用: 自动化操作,减少了手动操作以及出错的几率. 触发器是一种特殊类型的存储过程,它不同于前面介绍过的一般的存储过程. [在SQL内部把触发器看做是存储过程但是不能传递参数] 一般的存储过程 ...
- Mysql tablespace
对于innodb引擎的独立表空间,参考:http://blog.csdn.net/imzoer/article/details/8287938, 关键有两个变量:innodb_file_per_tab ...
- ios Push证书 转换步骤
1.将aps_developer_identity.cer转换成aps_developer_identity.pem格式openssl x509 -in aps_developer_identity. ...
- Swift - as、as!、as?三种类型转换操作使用一览
as.as!.as? 这三种类型转换操作符的异同,以及各自的使用场景. 1,as使用场合 (1)从派生类转换为基类,向上转型(upcasts) 1 2 3 4 class Animal {} cl ...