f1分数,map,recall,precision怎么计算

Posted 星代码119

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了f1分数,map,recall,precision怎么计算相关的知识,希望对你有一定的参考价值。

一、训练结果

我们先把训练好的模型预测结果贴出来:
1、map
在这里插入图片描述
2、预测中正确和错误的框框数
在这里插入图片描述
3、自己标记框的个数
在这里插入图片描述
4、回归曲线
在这里插入图片描述
通过打印出最后的recall为:

0.8909599254426841, 0.8918918918918919, 0.8918918918918919, 0.8928238583410997, 0.8928238583410997, 0.8928238583410997]\\

根据上图我们容易知道:
预测框:97+958=1055 正确:958,错误:97
真实框(自己手动标记):1073
recall:0.8928238583410997

二、计算

1、precision

在这里插入图片描述
这里:TP:预测正确的个数,FP预测错误的个数
所以: p r e c i s i o n = 958 / ( 958 + 97 ) = 0.9023 precision=958/(958+97)=0.9023 precision=958/(958+97)=0.9023

2、recall

在这里插入图片描述
注:TP,FP同上,FN是指没有预测到的框框数,所以TP+FN就是真实(所有手动标记框)标记框的个数。
r e c a l l = 958 / 1073 = 0.8928 recall=958/1073=0.8928 recall=958/1073=0.8928
和代码计算相同。

3、f1分数

在这里插入图片描述
根据上述算的recall和precision 很容易可以得到f1:
f 1 = 2 ∗ 0.9023 ∗ 0.8928 / ( 0.9023 + 0.8928 ) = 0.8975 f1=2*0.9023*0.8928/(0.9023+0.8928)=0.8975 f1=20.90230.8928/(0.9023+0.8928)=0.8975

4、然后是ap:

ap就是算下图的积分面积。在这里插入图片描述
丹阳吾提,普遍认为map就是ap.

多物体:map就是类别ap求和求平均。

以上是关于f1分数,map,recall,precision怎么计算的主要内容,如果未能解决你的问题,请参考以下文章

训练SSD后如何预测Precision、Recall和F1分数

在 tf.Estimator 设置中使用 tf.metrics.precision/recall 计算 F1 分数

使用 sklearn 计算 F1 分数

精度、召回率、F1 分数等于 sklearn

性能评价指标(Precision, Recall, F-score, MAP)

Precision、Recall 和 F1 可以是相同的值吗?