您的位置:首页 > 其它

深度学习图像处理(分类or检测)中结果的评价方法-mAP简介

2018-01-13 17:19 615 查看
多标签图像分类(Multi-label Image Classification)任务中图片的标签不止一个,因此评价不能用普通单标签图像分类的标准,即mean accuracy,该任务采用的是和信息检索中类似的方法—mAP(mean Average Precision)。mAP虽然字面意思和mean accuracy看起来差不多,但是计算方法要繁琐得多。

P-R曲线的绘制

用训练好的模型得到所有测试样本的confidence score,本例中某一类有20个测试样本。(每一类的P-R曲线、AP均单独计算)



对该类的confidence score排序,得到:



计算top-1到top-N(N是所有测试样本个数,本文中为20)对应的precision和recall,这两个标准的定义如下:



直观的理解就是,第一次我们排序后第一个样本的confidence作为划分正负样本的阈值,此时,只有第一个判断为正,其他均为负样本(因为其他样本的confidence均小于第一个样本的confidence),计算该阈值情况下的recall(1/1=1)和precision(1/1=1);然后第二次将排序后第二个样本的confidence作为划分正负样本的阈值,依次类推到最后一个。显然随着阈值的降低,我们选定的样本越来也多,recall一定会越来越高,而precision整体上会呈下降趋势。把recall当成横坐标,precision当成纵坐标,即可得到常用的precision-recall曲线。这个例子的P-R曲线如下:



AP的计算

PASCAL VOC CHALLENGE自2010年后就换了新计算方法。新的计算方法假设这N个样本中有M个正例,那么我们会得到M个recall值(1/M, 2/M, …, M/M),对于每个recall值r,我们可以计算出对应(r’ > r)的最大precision,然后对这M个precision值取平均即得到最后的AP值。计算方法如下:​



相应的Precision-Recall曲线中被用于计算AP的部分如下(每一个recall的节点都取precision的最大值连接起来):



mAP的计算

AP衡量的是学出来的模型在每个类别上的好坏,mAP衡量的是学出的模型在所有类别上的好坏,得到AP后mAP的计算就变得很简单了,就是取所有AP的平均值。

注:本文修改自原文,有增删。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  深度学习