原文链接
    注意区分mAP(mean average precision,平均AP)和MAP(**Maximum a posteriori,最大后验概率**)!!!
    mAP 是指平均准确率,是机器学习中模型好坏的一种评价指标。在介绍 mAP 前应该首先了解几个概念:

    1、P (percision) :准确率,在周志华的《机器学习》中,称为 “查准率”。在信息检索中,准确率是指我检索出的信息有多少比例是用户感兴趣的。

    P = 系统检索到的相关文件 / 系统检索到的文件总数

    2、R (recall) :召回率,又称为 “查全率”,指用户感兴趣的信息有多少被检测出来了

    R = 系统检测到的相关文件 / 数据库中相关文件总数

    举个例子来说,某数据库中有 1000 个文件,我要搜索跟机器学习相关的文件,而数据库中机器学习相关文件有 200 个。搜索后,系统检索出 100 个文件,80 个跟机器学习相关,那么:

    P(准确率) = 80 / 100 = 80%

    R(召回率)= 80 / 200 = 40%

    在改变检索算法后,再进行一次检索,结果检索出 180 个文件,机器学习相关文件有 120 个,那么:

    P(准确率)= 120 / 180 = 66.7%

    R(召回率)= 120 / 200 = 60%

    这两个算法到底哪个算法好呢,很难单一的用准确率或召回率来评判。

    准确率和召回率一般有如下特点:准确率高,召回率就低。召回率高,准确率就低。这个也比较容易理解,比如要获得较高的召回率,势必要搜索出大量文件,还是上面那个例子,我搜索出 500 个文件,其中 200 个跟机器学习相关,那么召回率为 100%,但是准确率只有 40%。当然,如果算法能做到准确率和召回率都高,那是最好。

    那么如何结合准确率和召回率对模型进行评判呢,可以使用 F 度量

    3、F 度量(F-measure)

    F 度量涵盖了准确率和召回率这两个指标。其计算公式如下:

    F = 2 P R / (P + R)

    结合以上两个例子,第一个例子的 F 度量为 0.53,第二个例子的 F 度量为 0.63


    接下来进入主题,mAP 是什么呢?

    前面介绍了准确率和召回率单独来评价模型不科学,结合这两个指标的话可以用 F 度量,其实还有一种方法,即 Average Precision(平均精度 AP)——以召回率和准确率为行纵坐标,得到二维曲线,即 PR 曲线。将 PR 曲线下的面积当作衡量尺度,得到 AP 值。

    mAP 即平均 AP 值, 是对多个验证集求平均 AP 值,其中 QR 指验证集个数

    mAP(mean average precision) - 图1