平均精度均值(Mean Average Precision, mAP)

与目标识别不同,目标检测中不仅仅需要在一张图片中检测到是否含有某物体,还需要将该物体的位置找出来,所以在判定模型的好坏时,就有其标准——mAP


一、Mean Average Precision – mAP

(一)什么是 mAP ?

平均精度均值(mAP)是预测目标位置以及类别的这一类算法的性能度量标准。mAP 对于评估目标定位模型、目标检测模型以及实例分割模型非常有用。
在模型预测时,输出的 bounding box 是有很多的,但是大部分都是置信度很小的,我们只需要输出置信度超过某个阈值的 bounding box 。

(二)mAP 是怎么计算的?

先介绍几个概念

2.准确率、召回率、精确度

(1)准确率 – precision & 召回率 – recall

若一个待检测的物体为狗,我们将被正确识别的狗,即检测为狗实际也为狗,称为True positives。将被正确识别的猫,即检测为猫实际也为猫,称为True negatives。被错误识别为狗的猫称为 False positives,被错误识别为猫的狗称为 False negatives。则 precision 的计算为:

p r e c i s o n = T r u e P o s i t i v e s T r u e P o s i t i v e s + F a l s e P o s i t i v e s

recall 的计算为:
r e c a l l = T r u e P o s i t i v e s T r u e P o s i t i v e s + F a l s e N e g a t i v e s

(2)精确度 – accuracy

a c c u r a c y = T r u e P o s i t i v e s + T r u e N e g a t i v e s T r u e P o s i t i v e s + F a l s e N e g a t i v e s + T r u e N e g a t i v e s + F a l s e P o s i t i v e s

准确率和召回率是互相影响的,一般情况下准确率高、召回率就低,召回率低、准确率高,如果两者都低,就是网络出问题了。一般情况,用不同的阀值,统计出一组不同阀值下的精确率和召回率,如下图:

二、影响 mAP 的因素

一般来说影响 mAP 的原因有很多,主要有以下几个:
1. 不好的训练数据。
2. 训练数据不够多。
3. 标注的框不准确。
4. 数据的多变性。

有的时候增加训练数据可能 mAP 并不会增加多少。当然了,使用表现更好的网络,其 mAP 自然地也会更加的高。

猜你喜欢

转载自blog.csdn.net/weixin_39679367/article/details/81126268