DetectionMAP
该OP用于计算检测网络的平均精度(mAP)。 mAP是衡量object detectors精度的指标,比如 Faster R-CNN,SSD等。它不同于召回率,它是最大精度的平均值。
通常步骤如下:
根据检测器中的输入和label,计算True Positive(TP)真正例 和 False Positive(FP)假正例
计算map,支持 和
integral
模式
请从以下文章中获取更多信息:
参数:
gt_label (Variable) – ground truth label 的索引,它是一个形状为[N, 1]的LoDtensor,数据类型为float32或float64。
gt_box (Variable) – ground truth bounds box (bbox),是一个具有形状的LoD张量[N, 4]。布局是[xmin, ymin, xmax, ymax],数据类型为float32或float64。
gt_difficult (Variable|None, 可选) – 指定这个ground truth是否是一个difficult bounding bbox,它可以是一个 shape=[N, 1]的LoDTensor,也可以不被指定。默认设置为None,表示所有的ground truth标签都不是difficult bbox,数据类型为float32或float64。
class_num (int) – 检测类别的数目。
overlap_threshold (float) – 判断真假阳性的阈值,默认为0.5。
evaluate_difficult (bool) – 是否考虑 difficult ground truth 进行评价,默认为 True。当 gt_difficult 为 None 时,这个参数不起作用。
ap_version (str) – 平均精度的计算方法,必须是 “integral” 或 “11point”。详情请查看 https://sanchom.wordpress.com/tag/average-precision/。 其中,11point为:11-point 插值平均精度。积分: precision-recall曲线的自然积分。
返回类型:变量(Variable)
代码示例
get_map_var ( )
返回:当前 mini-batch 的 mAP 变量和不同 mini-batch 的 mAP 累加和
reset ( executor, reset_program=None )
在指定的 batch 结束或者用户指定的开始时重置度量状态。
参数:
executor (Executor) – 执行reset_program的执行程序