目标检测中的几个重要指标
目标检测中的几个重要指标
1:准确率 (Accuracy)
准确率衡量的是「所有预测」中「正确预测」的比例。
公式: Accuracy = (TP + TN) / (TP + TN + FP + FN)
通俗理解: “模型猜对的次数占总次数的百分比。”
关注点: 整体的正确性,同时考虑了正例和负例的预测情况。
2. 精确率 (Precision)
精确率衡量的是「所有被预测为正例」的结果中,「真正是正例」的比例。
公式: Precision = TP / (TP + FP)
通俗理解: “模型说是目标的东西,有多少真的就是目标?” 或者说 “宁缺毋滥”。
精确率主要关注的是预测结果中的正类样本的质量,即在预测为正类的样本中有多少是准确的。
关注点: 预测结果的可靠性或准确性。它只关心那些被模型标记为“正”的样本。
3.召回率
一个生动的比喻:撒网捕鱼
想象你在一个鱼塘里捕鱼,这个鱼塘里总共有 10条鱼(这就是真实目标)。
TP(真阳性):你捞上来的网里,确实有 6条鱼。
FN(假阴性):有 4条鱼 从网眼里漏了出去,还在鱼塘里。(被模型预测为负类的正样本)
FP(假阳性):你的网里还捞上来 3只破鞋(这是误检,影响精确率,但不影响召回率:实际为负类的样本被错误地分类为正类的数量)。
请问你的捕鱼网(模型)的召回率是多少?
Recall = 捞到的鱼(TP) / 鱼塘里所有的鱼(TP + FN) = 6 / 10 = 60%
这个指标只关心:鱼塘里总共10条鱼,你抓住了多少条? 它不关心你网上来的破鞋(FP)
4.召回率与精确率的比较
| 指标 | 公式 | 关注点 | 回答的问题 |
|---|---|---|---|
| 召回率(Recall) | TP / (TP + FN) | 避免漏检(FN) | 所有真实的目标,我找出了多少? |
| 精确率(Precision) | TP / (TP + FP) | 避免误检(FP) | 我找出的所有目标中,有多少是真的? |
场景分析:
假设一个安全系统监控一片区域,该区域隐藏着5个真实入侵者(真实目标)。
模型A(高召回率模式): 报告了100次警报。
其中,5个是真实入侵者(TP=5)。
没有漏掉任何入侵者(FN=0)。
但有95次是误报,比如猫、影子等(FP=95)。
Recall = 5 / (5+0) = 100% (所有入侵者都找到了!)
Precision = 5 / (5+95) = 5% (但警报几乎都是假的,烦死人)
模型B(高精确率模式): 只报告了1次警报。
这1次警报确实是入侵者(TP=1)。
没有误报(FP=0)。
但漏掉了4个入侵者(FN=4)。
Precision = 1 / (1+0) = 100% (每次警报都极其可靠!)
Recall = 1 / (1+4) = 20% (但大部分入侵者都漏掉了,太危险!)
结论: 没有完美的模型,召回率和精确率之间存在天然的权衡(Trade-off)
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)