多标签图像分类任务的评价方法-mAP
来源:互联网 发布:linux 用户提权 编辑:程序博客网 时间:2024/05/17 19:19
转自http://blog.sina.com.cn/s/blog_9db078090102whzw.html
https://www.youtube.com/watch?v=pM6DJ0ZZee0
http://blog.csdn.net/ylh9604/article/details/53100781
http://blog.csdn.net/marising/article/details/6543943
多标签图像分类(Multi-label Image Classification)任务中图片的标签不止一个,因此评价不能用普通单标签图像分类的标准,即mean accuracy,该任务采用的是和信息检索中类似的方法—mAP(mean Average Precision)。mAP虽然字面意思和mean accuracy看起来差不多,但是计算方法要繁琐得多,以下是mAP的计算方法:
首先用训练好的模型得到所有测试样本的confidence score,每一类(如car)的confidence score保存到一个文件中(如comp1_cls_test_car.txt)。假设共有20个测试样本,每个的id,confidence score和ground truth label如下:
接下来对confidence score排序,得到:
然后计算precision和recall,这两个标准的定义如下:
上图比较直观,圆圈内(true positives + false positives)是我们选出的元素,它对应于分类任务中我们取出的结果,比如对测试样本在训练好的car模型上分类,我们想得到top-5的结果,即:
在这个例子中,true positives就是指第4和第2张图片,false positives就是指第13,19,6张图片。方框内圆圈外的元素(false negatives和true negatives)是相对于方框内的元素而言,在这个例子中,是指confidence score排在top-5之外的元素,即:
其中,false negatives是指第9,16,7,20张图片,true negatives是指第1,18,5,15,10,17,12,14,8,11,3张图片。
那么,这个例子中Precision=2/5=40%,意思是对于car这一类别,我们选定了5个样本,其中正确的有2个,即准确率为40%;Recall=2/6=30%,意思是在所有测试样本中,共有6个car,但是因为我们只召回了2个,所以召回率为30%。
实际多类别分类任务中,我们通常不满足只通过top-5来衡量一个模型的好坏,而是需要知道从top-1到top-N(N是所有测试样本个数,本文中为20)对应的precision和recall。显然随着我们选定的样本越来也多,recall一定会越来越高,而precision整体上会呈下降趋势。把recall当成横坐标,precision当成纵坐标,即可得到常用的precision-recall曲线。这个例子的precision-recall曲线如下:
- ap、mAP多标签图像分类任务的评价方法
- 多标签图像分类任务的评价方法-mAP
- 多标签图像分类任务的评价方法-mAP
- 多标签图像分类任务的评价方法-mAP
- AP、mAP多标签图像分类任务的评价方法
- 多标签图像分类任务的评价方法-mAP
- 多标签图像分类任务的评价方法——mAP
- 多标签分类的评价指标
- 图像分类精度评价
- 图像分类精度评价
- 不同学习任务的评价方法
- 分类精度评价方法
- 无参考图像的清晰度评价方法
- 图像质量评价的两个方法
- SAR图像变化检测的评价方法
- 无参考图像的清晰度评价方法
- 图像质量评价的方法和意义
- 图像中的mAP评价指标
- 电子商务java b2b b2c o2o平台
- CSS+jQuery滚骰子动画
- 大规模机器学习(Large Scale Machine Learning)
- 关于跨域问题的解决
- LeetCode 97. Interleaving String 题解
- 多标签图像分类任务的评价方法-mAP
- Lucene .Net + 盘古分词 学习资料
- Java工厂设计模式
- html5--h5的改进优势
- Spring的监听事件ApplicationListener和ApplicationEvent及@EventListener用法
- ASP 最简单导出excel的方法
- java.lang.NoSuchMethodError
- CodeForces
- javascript函数细说,函数也能做对象