mAP在计算机视觉中的应用
来源:互联网 发布:音频剪辑合并软件 编辑:程序博客网 时间:2024/06/05 23:48
要谈mAP(mean average precision)必须先说一下,精准率(Precision, P值)和召回率(Recall,R值).P值和R值最初是信息检索领域的评价指标.
准确率Accuracy
这个概念是指分类的准确率,也就是分类准确的样本与样本总数之比.
- 1
- 2
碰巧某个分类器的原理就是所有样本均判为负,那个这个分类器的accuracy就是99%.这比很多算法厉害的分类器都厉害.但是仔细想想,如果总样本中只有1个负样本但是有99个正样本,那个这个分类器,那个这个分类器的正确率将是1%.
由此可以发现,accuracy的值与样本集中正负样本的比例关系很大.通常情况下,我们希望的算法是在不同场景下表现都比较好的算法,也就是泛化能力强的算法,显然accuracy并不能作为算法泛化能力的衡量.
P值和R值和F值
Precision中文可以翻译为“查准率”(有时候也翻译为“准确率”),也就是返回的结果中希望得到的结果所占的比例.
Recall中文可以翻译为“查全率”或者通常说的“召回率”,也就是返回的结果希望得到的结果占总样本中所有希望的得到的结果的比例.
这两个值都是标量,需要进行计算.数学通常希望把一个概念数字化,于是想想一种场景:比如一个搜索引擎中共有n条数据,关于“图像语义分割”的数据有m条,经过搜索,返回了k条.这k条中有一部分是和“图像语义分割”相关的,也有一部分不是.于是就有了以下几个量:
很容易可以看出,P值和R值的值应该等于:
举个栗子
我有一个两类分类问题,正负各5个样本,共10各样本,如果这个分类器性能达到完美的话,ranking最理想的结果应该是 +1,+1,+1,+1,+1,-1,-1,-1,-1,-1.
但是分类器预测的label,和实际的score肯定不会这么完美。分类器按打分由高到低选择了前四个结果返回,实际上这里面只有两个是正样本。此时的(通俗理解)
recall = 2(你能包住的正样本数)/ 5(总共的正样本数)=0.4,
precision = 2(你选对了的)/ 4(总共选的)= 0.5.
图像分类中,这个打分score可以由SVM得到:s=w^Tx+b就是每一个样本的分数。
简单理解一下,其实P值就是找的准,R值就是找的全。理想情况下如果以R值为横坐标,P值就一直为1.这样两者的乘积就是1。(其实这种图就是P-R图,可能有的人不太理解里边的原理,下边会说).但是实际中往往P值和R值是矛盾的。趋势就是,recall越高,precision越低。比如,把所有结果都返回,那肯定正样本都被包含了,则R (recall) 值为100%,但是此时P (precision) 值就很小,因为我全部认为他们是正样本,此时P (precision) 的数值,就等于正样本所占的比例;如果只取一个结果且是期望的,那么P值100%,但是此时显然没有选出全部的(R值很小).
关于F值这里就不多说了,其中参数beta是根据不同的场景进行调节的.更常用的是F1度量:
mAP
本文是要讲mAP的,终于前面铺垫了这么多,可以开始讲mAP了.但是,为了讲述mAP,这里还需要先说一下如何画P-R图.
P-R图:制定一个类别,根据学习器下每个样本对这个类的预测结果进行排序,排在前面的是学习器认为“最可能”的正例样本,最后的是“最不可能的”.按照此顺序逐个把样本作为正例进行预测(1个正例,2个正例,…),则每次可以计算出当前的R值和P值,然后以R值为横轴、P值为纵轴记性作图.就得到了P-R图.
为了能够量化分类器的性能比较,通常采用Average Precison来作为度量标准,公式为:
上式给出的一种积分的形式,实际上P-R图中的值是离散值,化为sum即可.
AP(average precision),就是这个曲线下的面积,这里average,就是对recall取平均。而mAP(mean average precision)是对所有类别的AP值的平均,也就是所有的AP值求和除以类数。现在的图像分类论文基本都是用mAP作为标准,PASCALVOC的多个屏幕项目也都是使用mAP作为标准的.
原文地址:http://blog.csdn.net/u014451076/article/details/70308389
参考文章:https://www.zhihu.com/question/41540197
- mAP在计算机视觉中的应用
- mAP在计算机视觉中的应用
- MRF在计算机视觉中的应用
- 高斯函数在计算机视觉中的应用
- 计算机视觉:随机森林算法在人体识别中的应用
- 计算机视觉:随机森林算法在人体识别中的应用
- 李群、李代数在计算机视觉中的应用
- 【技术】相似性度量学习及其在计算机视觉中的应用
- 李群、李代数在计算机视觉中的应用
- 深度卷积网络在计算机视觉中的应用研究综述
- 李群、李代数在计算机视觉中的应用
- 计算机视觉在工业方面的应用
- 在计算机视觉中的李群、李代数
- lie group and computer vision : 李群、李代数在计算机视觉中的应用
- lie group and computer vision : 李群、李代数在计算机视觉中的应用
- lie group and computer vision : 李群、李代数在计算机视觉中的应用
- 转载-- lie group and computer vision : 李群、李代数在计算机视觉中的应用
- lie group and computer vision : 李群、李代数在计算机视觉中的应用
- kafka 创建topic,查看topic
- php 只能接受get 接受不到POST值
- TensorFlow之损失函数、学习率、正则
- DRUID介绍
- Android 头像(拍照,相册)选择后裁剪功能
- mAP在计算机视觉中的应用
- [Tensorflow]tensor 数学运算和逻辑运算
- NSFZOJ #6033. 买股票
- Swift 中枚举高级用法及实践
- RxJava1.x
- javascript中的执行环境和作用域详解
- 基于htmlparser实现网页内容解析
- SVG 快速入门
- ie8支持foreach