precision和recall,AP和mAP,ROC curve和precision recall curve

AP和mAP是目标检测和信息检索中常用的evaluation metric

计算AP需要先计算precision和recall,得到每一类的AP后,对所有类的AP做平均,就得到mAP。

注1:计算AP时需要先计算precision和recall,而计算precision和recall需要先计算IoU,并且设置threshold才能得出precision和recall。PASCAL VOC和COCO对threshold的设置采取了不同的方式,VOC采用了固定threshold的方式,即0.5;而COCO采用了多个threshold,即0,0.1,0.2......1。具体参考reference的第一个链接。

注2:

mAP的具体计算(来自知乎:https://www.zhihu.com/question/53405779/answer/419532990)

要计算mAP必须先绘出各类别PR曲线,计算出AP。而如何采样PR曲线,VOC采用过两种不同方法。参见:The PASCAL Visual Object Classes Challenge 2012 (VOC2012) Development Kit

在VOC2010以前,只需要选取当Recall >= 0, 0.1, 0.2, ..., 1共11个点时的Precision最大值,然后AP就是这11个Precision的平均值。

在VOC2010及以后,需要针对每一个不同的Recall值(包括0和1),选取其大于等于这些Recall值时的Precision最大值,然后计算PR曲线下面积作为AP值。

precision=\frac{TP}{TP+FP},衡量了算法找到正例的能力(找到的正例里面真实正例的比例)

precision等价于

recall= \frac{TP}{TP+FN},衡量了算法覆盖正例的能力(找到的正例占所有真实正例的比例)

recall等价于sensitivity

ROC curve的x轴是FPR,y轴是TPR

FPR= \frac{FP}{FP+TN} = 1-specificity

TPR= \frac{TP}{TP+FN}= sensitivity

precision-recall curve的x轴是recall,y轴是precision

Reference

http://tarangshah.com/blog/2018-01-27/what-is-map-understanding-the-statistic-of-choice-for-comparing-object-detection-models/

https://www.cnblogs.com/aquastone/p/random-classifier.html

猜你喜欢

转载自blog.csdn.net/whyerdiku/article/details/83140998
今日推荐