美文网首页
如何计算mAP

如何计算mAP

作者: Woooooooooooooo | 来源:发表于2019-06-07 16:38 被阅读0次

    文章摘选自多篇文章,仅用于学习,在此表示感谢,若有侵权请联系,感谢


    mAP: mean Average Precision, 即各类别AP的平均值

    AP: PR曲线下面积,其实是在0~1之间所有recall值的precision的平均值。

    PR曲线: Precision-Recall曲线

    Precision: TP / (TP + FP)

    Recall: TP / (TP + FN)


    如何绘制P-R曲线

    Precision-Recall曲线,简称P-R曲线,其横轴是召回率,纵轴是精确率。


    如何计算AP

    要计算mAP必须先绘出各类别PR曲线,计算出AP。

    1)积分求解
    由于每个图片计算出来的P-R很大可能不是一条连续的曲线,如果使用积分的方式计算会造成和多问题

    2)插值求解

    但通常情况下都是使用估算或者插值的方式计算:

    (1)估算计算方式approximated average precision

    (2)插值计算方式Interpolated average precision

    (3)插值方式进一步演变


    VOC采取的两种插值方式

    在VOC2010以前,只需要选取当Recall >= 0, 0.1, 0.2, ..., 1共11个点时的Precision最大值,然后AP就是这11个Precision的平均值。在VOC2010及以后,需要针对每一个不同的Recall值(包括0和1),选取其大于等于这些Recall值时的Precision最大值,然后计算PR曲线下面积作为AP值。

    1)11-point interpolation(VOC07,10之前)

    11-point interpolation通过平均一组11个等间距的Recall值[0,0.1,0.2,...,1]对应的Precision来绘制P-R曲线.

    计算precision时采用一种插值方法(interpolate),即对于某个recall值r,precision值取所有recall>=r中的最大值(这样保证了p-r曲线是单调递减的,避免曲线出现抖动)

    2)Interpolating all points(VOC10之后)

    不再是对召回率在[0,1]之间的均匀分布的11个点,而是对每个不同的recall值都计算一个ρinterp(r),然后求平均,r取recall>=r+1的最大precision值。

    相关文章

      网友评论

          本文标题:如何计算mAP

          本文链接:https://www.haomeiwen.com/subject/inamxctx.html