目标检测中精确率,召回率,准确率的意思

本文详细解析了评估机器学习模型的三个关键指标:精确率、召回率和准确率。通过直观的图示和实例,帮助读者理解这些概念,并探讨如何在正类和负类预测中平衡这些指标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先看几个缩写:

下面两行都是被你预测为正类的数据:
TP(True Positive):正确正类。(实际样本是正样本,你正确地判断成了正样本)
FP(False Positive): 错误正类。(实际样本是负样本,你错误地把它当成了正样本)


下面两行都是被你预测成了负类的数据:
TN(True Negative):正确负类,把负样本预测为负。(你预测对了)
FN(False Negative):错误负类,把正样本预测为负。(你预测错了)


所以 Positive / Negative 是你预测的结果,你把那些样本预测成了 正类 / 负类
True / Flase 表示你的结果正确与否。不管你预测成正类或负类,True就是你预测对了,Flase就是你预测错了。

在这里插入图片描述

图1

结合上面的解释和图示就很好理解了,在图中:
左边全是正类(绿色圈圈),个数是42个。
右边全是负类(红色圈圈),个数也是42个。

图中共有4个区域:

  • 在正类中:
  1. 预测对了:被预测为正类的(TP,True Positive)的个数是32个。
  2. 预测错了:被预测为负类的(FN,False Negative)的个数是10个。
  • 在负类中:
  1. 预测错了:被预测为正类的(FP,Flase Positive)的个数是14个。
  2. 预测对了:被预测为负类的(TN,True Negative)的个数是28个。

下面结合图示进行分析:

精确率(Precision)

P=TPTP+FP P = {\frac {TP} {TP+FP}} P=TP+FPTP

  所以精确率就是,在所有被你预测为正类的数据中,预测对的(真正的正类)占多少。
  按照图1的例子,这里精确率就是:
P=TPTP+FP=3232+14=3246=69.565% P = {\frac {TP} {TP+FP}}={\frac {32} {32+14}}={\frac {32} {46}}=69.565\% P=TP+FPTP=32+1432=4632=69.565%

  很遗憾,精确率不是很高,看着分母你会想,要是 FP(Flase Positive) 再少一点就好了。然而,就算 Flase Positive0 也不够,虽然此时 P=100%P=100\%P=100% ,但是在正类里面你还没有全部预测对,还漏了10个正类。

在这里插入图片描述

图2 精确率示意图


召回率(Recall)

R=TPTP+FN R = {\frac {TP} {TP+FN}} R=TP+FNTP

  所以召回率就是,在所有真正的正类中,你成功预测到的占了多少。
  按照图1的示例,这里召回率是:

R=TPTP+FN=3232+10=3242=76.19% R = {\frac {TP} {TP+FN}}={\frac {32} {32+10}}={\frac {32} {42}}=76.19\% R=TP+FNTP=32+1032=4232=76.19%

  怎样提高召回率?请看看公式或者看图。

在这里插入图片描述

图3 召回率示意图


准确率(Accuracy)

acc=TP+TNTP+FP+TN+FN acc = {\frac {TP+TN} {TP+FP+TN+FN}} acc=TP+FP+TN+FNTP+TN
  所以准确率就是,在所有样本中,你预测对的占多少。
  哪些是预测对的?正类里面你预测到了几个正类 + 负类里面你预测到了几个负类。
  按照图1的示例,这里准确率是:

acc=TP+TNTP+FP+TN+FN=32+2832+10+28+14=32+2884=71.43% acc = {\frac {TP+TN} {TP+FP+TN+FN}}={\frac {32+28} {32+10+28+14}}={\frac {32+28} {84}}=71.43\% acc=TP+FP+TN+FNTP+TN=32+10+28+1432+28=8432+28=71.43%

在这里插入图片描述


目标检测中的准确率:
由于目标检测中没有 TN(因为预测框太多,低于得分的都直接去掉了,没有加入评价指标中),所以这里令 TN 为 0。

所以
acc=TP+TNTP+FP+TN+FN=TPTP+FP+FN \begin{aligned} acc &= {\frac {TP+TN} {TP+FP+TN+FN}} \\[1em] & = \dfrac{TP}{TP+FP+FN} \end{aligned} acc=TP+FP+TN+FNTP+TN=TP+FP+FNTP

TP+FNTP + FNTP+FN 就是所有的真实目标,设为单位 111;那么 TP=1∗RTP=1 * RTP=1R,就是召回。

FP=TPP−TP=RP−RFP = \dfrac{TP}{P} - TP = \dfrac{R}{P} - RFP=PTPTP=PRR

所以
acc=R1+FP=R1+RP−R=RPP+RP−PRP=PRP+R−PR \begin{aligned} acc &= \frac {R} {1+ FP} \\[2em] & = \dfrac{R}{1+\dfrac{R}{P} - R} \\[2em] & = \dfrac{R}{\dfrac{P}{P} + \dfrac{R}{P} - \dfrac{PR}{P}} \\[2em] & = \dfrac{PR}{ P + R - PR} \end{aligned} acc=1+FPR=1+PRRR=PP+PRPPRR=P+RPRPR

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值