目标检测中对precision和recall的理解

首先有四个基本概念是由二分类的混淆矩阵得来,需要了解。

TP:将实际正样本预测为正样本
FP:将负样本预测为正样本
TN:将负样本预测为负样本
FN:将正样本预测为正样本

最开始的时候分类可能认准了准确率(accuracy)作为评估指标。但是呢如果样本的正负样本很不均衡就会出现问题,准确率只考虑到了正样本的预测问题。比方说我们有一个预测person的任务,有1000张样本数据,其中有980张图片是person,还有剩下的20张是background,而我们训练的模型将1000张图片全部预测为person,我们的准确率也有98%,这样的模型指标很好看,但能运用到是实际生产环境中去吗,肯定是不行的。为此才出现了precision和recall.

precision = TP /(TP + FP)

上面就是精确率(precision)的公式,表达的意思就是用训练好的模型去测试我们的测试数据集,即实际正样本预测为正样本的数目占模型将数据预测为正样本的数目之比。我的理解是准确率是精确率的边界值,如果样本将正负样本都预测为正样本,这时precision和accuracy是相等的。

recall = TP/(TP + FN)

recall的公式表达的意思就是模型将实际正样本预测为正样本的数目和数据集中实际正样本数目之比。

为什么说precision和recall是相互影响的呢,通常是此消彼长。而且各自都有应用场景,比如说分类中模型预测会为每张图片分类,并打上分数(score),当我们把阈值设置的非常高时,可能很少的样本被预测为正样本,由于分数阈值设置的比较高,很可能模型预测为正样本的样本实际上都为正样本。这样的话精确率会非常高。但是召回率会很低,因为只有小部分的样本为预测为了正样本,还有很多负样本就被预测为了正样本,这是召回率自然而然就降低了。

谁都想两全其美,但是可能不能一味的追求某一个单方面的指标了,这时就出现了F1-score,F1-score就是同时兼顾精准率和召回率,是精准率和召回率的调和平均值。

F1 = 2*precision*recall/(precision + recall)
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

资料加载中

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值