准确率、召回率和mAP

1、准确率和召回率

真实值与预测值之间的关系为:

准确率、召回率和mAP_第1张图片

准确率(precision)和召回率(recall)作为统计值,各自的计算方式:
P = T P T P + F P P=\frac{TP}{TP+FP} P=TP+FPTP R = T P T P + F N R=\frac{TP}{TP+FN} R=TP+FNTP
准确率 P P P 给出了“预测为真值的样本中确实有多少比例为真值”,召回率 R R R 给出了“本来就是真值的样本模型预测出来了多少”。所以,准确率也称为“查准率”,它说明的是预测真值中有多少是对的;召回率也称为“查全率”,它说明的是真实真值中有多少被找到了。(实例计算方式看这里)
一般来说, P P P R R R 是相互制约的,一个越高另一个就越低,统计上用 P R PR PR 曲线来描述二者的关系。

准确率、召回率和mAP_第2张图片

对于一个抽样集合,模型的预测值和真实值都是确定的, P P P R R R 也应该是一个确定的值,为什么会出现一条曲线?实际上如果是一个 b a t c h = 128 batch=128 batch=128 的集合,我们并不是直接计算128个样本的 P / R P/R P/R,而是按照每个样本的置信度概率将它们从大到小排序,然后从第一个样本开始计算 P / R P/R P/R,然后加入第二个再计算 P / R P/R P/R,以此类推;这样 R R R 的值就会一步步增大、逐渐接近1,而 P P P 则逐渐下降,这也意味着模型的预测中有 F P FP FP 的出现。
这里,在将样本一个个加入计算集合的过程中, R R R 的值可能不变(也就是没有 T P TP TP 出现),但是 P P P 的值却发生改变(出现了 F P FP FP),这导致一个 R R R 对应多个 P P P,这时我们只将最大的 P P P 值考虑进来(同一 R R R 值取最大 P P P 值)。

2、mAP

如果模型 A A A P R PR PR 曲线包含了模型 B B B P R PR PR 曲线,那么模型 A A A 的性能要优于 B B B。但是如果二者发生交叉呢?

准确率、召回率和mAP_第3张图片

如果要求两者都高,我们可以用 F 1 F1 F1 值来衡量: F 1 = 2 P R P + R F1=\frac{2PR}{P+R} F1=P+R2PR另一种评价模型性能的方法是用平衡点 P = R P=R P=R,二者相等时的取值 越大表明性能越好。在论文中经常见到一种参数是mAP(平均均值精度),它指的是 P R PR PR 曲线的面积,面积越大模型的性能越好。 m A P = ∫ 0 1 P ( R ) d R m A P=\int_{0}^{1} P(R) d R mAP=01P(R)dR

你可能感兴趣的:(数学基础)