做物体检测的同学们,你们真的了解mAP到底是个啥吗?几张图就让你明白

上方“AI公园”,关注公众号


作者:Jonathan Hui

编译:ronghuaiyang

mAP是一种物体检测器准确率的度量方法,是不同的召回率值下的最大精确度的平均值。听起来很复杂,但实际上是挺简单的,我们举个例子来说明。在这之前,我们先快速的回顾一下精确度,召回率和IoU。

精确率&召回率

精确率度量的是你的预测的准确率,也就是你预测出来的正样本里有多少是正确的。

召回率度量的是找到所有的正样本的能力,比如,你可以在top K的预测里,找到80%的可能的正样本。

下面是数学上的定义:

640?wx_fmt=png

比如说,癌症的测试:

640?wx_fmt=png

IoU (交并比)

IoU 度量的是两个区域的重合程度,这个可以度量物体检测中的预测的边界框对比ground truth框(真实的边界框)的好坏。

640?wx_fmt=png

IoU definition


AP

我们用一个简单的例子来说明如何计算平均平均精确率(AP),在你的数据集里,我们总共有5个苹果。我们得到了一个模型的对苹果的所有的预测,然后使用预测置信度进行排序(从高到低)。第二列表明这个预测是不是正确,如果是正确的,它和ground truth的IoU ≥ 0.5。

640?wx_fmt=png

我们来计算前3行的精确度和召回率,所以总共是3个预测,有2个是正确的,总共的ground truth正样本数是5。

Precision 是TP占所有预测是正样本的比例= 2/3 = 0.67。

Recall 是TP占所有实际的正样本的比例 = 2/5 = 0.4。

召回率值在上升,因为我们包含了越来越多的正样本,但是精确率在上上下下,我们画个精确度和召回率的图。

640?wx_fmt=png

AP的思想可以看做是找到precision-recall图下面的面积。但是我们在估计这个值之前首先会对这个锯齿状的图形进行平滑。

我们使用recall  ȓ 的值为0, 0.1, 0.2, …, 0.9 和1.0 的地方画图,对于任意的召回率 recall ≥ ȓ,用最大的精确率值来代替精确率值。

640?wx_fmt=png

实际上,在图中可视化会更加容易,我们发现最高的精确率值(绿色曲线)在召回率值 (0, 0.1, 0.2, …, 0.9 和1.0)的右边。

640?wx_fmt=png

AP(平均精确率)是这11个recall值下的最大精确率的平均值。

640?wx_fmt=png

这个和找到所有的绿色曲线下的面积很接近了,然后除以11。这是更加精确的定义。

640?wx_fmt=png

640?wx_fmt=png

pinterp(0.7) 表示找出下面的黄色框中的最大值:

640?wx_fmt=jpeg

在我们的例子中,AP = (5 × 1.0 + 4 × 0.57 + 2 × 0.5)/11

640?wx_fmt=jpeg

mAP只是所有的类别的平均,在许多数据集中,常常就叫做AP。

PASCAL VOC中的AP

PASCAL VOC是一个非常流行的物体检测的数据集。对于PASCAL VOC竞赛,如果 IoU > 0.5,预测认为是正样本。然而,如果对相同的物体有多个预测框,那么把第一个认为是正样本,其余的是负样本。PASCAL VOC的mAP和我们说的AP是一样的。

COCO mAP

最近的论文趋向于只给一个 COCO数据集的结果。对于 COCO ,AP是多个IoU(最小的IoU认为是匹配上的正样本)上的平均值。AP@[.5:.95]对应的是,IoU从 0.5 到 0.95 时的AP的平均值,步长是0.05,对于COCO竞赛,AP是10个IoU在80个类别上的平均。

这里是YOLOv3的AP结果。

640?wx_fmt=png

mAP@.75意思是IoU=0.75是的mAP.


640?wx_fmt=png

往期精彩回顾

1、最全的AI速查表|神经网络,机器学习,深度学习,大数据

2、深度学习论文阅读路线图

3、如何构建使用Python进行数据处理的肌肉记忆

4、Image-to-Image的论文汇总

5、我们从一阶段的物体检测器SSD,YOLOv3,FPN & Focal loss (RetinaNet)中学到了什么?

6、资源|10个机器学习和深度学习的必读免费课程

7、经验之谈|别再在CNN中使用Dropout了

8、我们从region based物体检测器 (Faster R-CNN, R-FCN, FPN)中能学到些什么?
9、非常好用的Python图像增强工具,适用多个框架
10、Kaggle竞赛介绍: Home Credit default risk(一)


本文可以任意转载,转载时请注明作者及原文地址

640?wx_fmt=jpeg

请长按或扫描二维码关注本公众号

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值