本文是翻译,原文地址为Tarang Shah的博客

mAP

  mAP,Mean Average Precision,平均精度,用于评估预测的定位和分类的算法,其对于评估定位模型、目标检测模型和分割模型是有效的。【因为用于分类的precision不能直接用于具有定位问题的模型,所以引入mAP概念】

在目标检测中,这几个概念有如下解释(下面有详细解释):

Precision
在某个确定的Recall下,(某类别)能在某图片上取得的precision的最大值
AP
在某些确定的Recall下,某个类别在整个数据集下的Average Precision
mAP
在某些确定的Recall下,模型在整个数据集下所有类的mean AP



Ground Truth

  对于一个评估算法,其测量标准就是和ground truth的比较(Training,Validation,Test datasets都有这个ground truth信息)。
  对于目标检测问题,ground truth包括images,objectsclasses set,和每个objectsbounding boxes

  也就是说,对于训练而言,我们的模型能得到的是图片,一张具体的图片如下:

目标检测前提知识

  以及一个坐标和类别的列表的集合,一个具体的对象的ground truth sets如下:
目标检测前提知识

  将ground truth sets可视化到图片上,展示如下:

目标检测前提知识



计算mAP

  使用IoU来判断每个对象的检测边框的正确度。

IoU
  IoU,Intersection over Union,交并集,其在目标检测的应用是预测边框与ground truth boxes的交集与并集的比率。

目标检测前提知识

Confidence
  Confidence,置信度,每个边框都有一个置信度,其与置信度门槛比较,低于置信度阈值的,我们把这些boxes当做负的(框);反之,高于置信度阈值的,当做正的(框)。

Precision,Recall
  如果预测结果是正的,那么其有两种可能,⑴ 正确的,True(就是预测的和labels是一致的,在检测里,就是IoU大于一定阈值的边框,一般认为是0.5);⑵ 错误的,False。这两种正预测对应的结果分别是:⑴ 正阳性,True Positive;⑵ 假阳性,False Positive

  对于每一张输入模型的图片(训练,测试,验证),我们都有对应的ground truth data,这告诉我们这张图片有多少对象。我们把正框(confidence阈值大的框)与ground truth计算IoU(对一张图片的每个类都进行一遍),将这个IoUIoU阈值比较,就能得到TP,正阳性FP,假阳性

Precision=TPTP+FP
Recall=TPTP+FN
  Precision就是看预测为正的里面有多少是真的正的;Recall就是看预测为正的占据所有正的比例。
  从上面的推导可以看出,目标检测的Precision,RecallIoU阈值和confidence阈值两个变量决定。

mAP
  信息检索(Information Retrieval)和目标检测都有使用mAP的概念,但这两个领域的mAP计算方式不一样。

  每个数据集评估用的IoU阈值不同(VOC是0.5,COCO是从5% 95%),对于不同模型,其confidence的影响不同(一个模型confidence50%的,可能相当于另一个模型的80%)。所以我们需要一个无关模型的评判标准。

  对于一个给定的任务和(某个)类别,其precision/recall曲线是由方法得出的(对于不同的阈值有不同的值,所有有曲线)。AP,Average Precision就是这个类别的precision/recall曲线下的积分面积,其定义为[00.1...1]11recall水平的precision的平均值。(也就是说对于不同的类别,都有一个AP,这些AP的平均值就是mAP,mean Average Precision

  这也就意味着我们选择11confidence阈值,使得Recall达到00.1...1AP就是这11个值下的平均精度(所有图片)。

比较mAP时需要注意的点

  1. 对于目标检测来说,很难找到一个绝对量化的标准来衡量模型的输出,但mAP是一个很好的相对度量。它可以帮助我们度量一个数据集上的两个检测算法的结果。
  2. AP是依赖于训练数据的分布的(对于每个类),也就是说不同类的结果可能差别很大(可能mAP的结果不过,但不同类的AP差别很多)。所以,对于模型结果而言,我们可以输出每个类别的AP(这也是一个可取的方法帮助我们分析模型的结果,我们可以以此为依据添加样本)。

相关文章:

  • 2021-06-28
  • 2021-09-12
  • 2021-05-31
  • 2021-07-12
  • 2021-12-09
  • 2021-05-27
  • 2021-09-04
  • 2021-08-20
猜你喜欢
  • 2022-01-06
  • 2021-07-29
  • 2021-10-09
  • 2021-06-12
  • 2022-12-23
  • 2021-08-21
  • 2021-05-22
相关资源
相似解决方案