简单理解精确率(Precision)和召回率(Recall)

server/2025/2/5 7:10:38/

温故而知新,可以为师矣!

一、参考资料

分类问题的评价指标:多分类【Precision、 micro-P、macro-P】、【Recall、micro-R、macro-R】、【F1、 micro-F1、macro-F1】
目标检测评估指标mAP:从Precision,Recall,到AP50-95【未完待续】
利用mAP评估目标检测模型
万字长文精解目标检测中的TP、FP、FN、TN、Precision、Recall 、 F1 Score、AP、mAP与AR 。附代码实现。
AP和mAP 计算:sklearn.metrics.average_precision_score()
精准,召回和 F-measures

二、精确率 vs. 召回率

1. 精确率(Precision)

精确率是指模型所有预测为正样本中(分母),模型正确预测为正样本(分子)的比例,它反映了模型预测的准确性。数学上,精确率定义为:
Precision = True Positives True Positives + False Positives \text{Precision}=\frac{\text{True Positives}}{\text{True Positives}+\text{False Positives}} Precision=True Positives+False PositivesTrue Positives
其中,True Positives(TP)是正确预测为正样本数量,False Positives(FP)是错误预测为正样本数量,FP可以理解为误检

2. 召回率(Recall)

召回率是指所有实际为正样本中(分母),模型正确预测为正样本(分子)的比例。它反映了模型对正样本的覆盖能力。数学上,召回率定义为:
R e c a l l = True Positives True Positives + False Negatives \mathrm{Recall}=\frac{\text{True Positives}}{\text{True Positives}+\text{False Negatives}} Recall=True Positives+False NegativesTrue Positives

其中,True Positives(TP)是正确预测为正的样本数,False Negatives(FN)是错误预测为负的正样本数,FN可以理解为漏检

召回率的提升意味着可以检测出更多的目标,检出率提高

3. FP vs. FN

False Negatives(FN)漏检:错误预测为负的正样本数,即模型预测为负类(例如,没有检测到某种疾病或异常),但实际上是正类(即实际上存在疾病或异常)的样本。在目标检测中,FN可以指未能检测到实际存在的目标的情况。

False Positives(FP)误检:错误预测为正的样本数,即模型预测为正类(例如,检测到某种疾病或异常),但实际上是负类(即实际上没有疾病或异常)的样本。在目标检测中,FP可以指错误地将背景或非目标识别为目标的情况。

4. mAP vs. mAR

精确率召回率的计算可以针对每个类别分别进行,也可以在所有类别上进行平均,得到平均精确率(mAP)和平均召回率(mAR)。

5. 简单示例

假设有一个目标检测模型,其在测试集上的预测结果如下:

正确预测为正样本数量(TP):100

错误预测为正样本数量(FP):20

错误预测为负样本数量(FN):30

那么,该模型的精确率召回率分别为:
P r e c i s i o n = 100 100 + 20 = 0.8333 Precision = \frac{100}{100 + 20} = 0.8333 Precision=100+20100=0.8333

R e c a l l = 100 100 + 30 = 0.7692 Recall = \frac{100}{100 + 30} = 0.7692 Recall=100+30100=0.7692


http://www.ppmy.cn/server/165097.html

相关文章

Python零基础快速入门课程,自带在线运行环境

Python零基础入门教程 编译器地址: Python在线编译器 课程目录: Python简介 Python是一种简单易学、功能强大的编程语言。它具有高效的数据结构,能够简单有效地实现面向对象编程。 Python的优点: 简单易学,所有人都可以零基础入门开源免费,有丰富的免费学习课程跨平台…

【数据结构】(4) 线性表 List

一、什么是线性表 线性表就是 n 个相同类型元素的有限序列,每一个元素只有一个前驱和后继(除了第一个和最后一个元素)。 数据结构中,常见的线性表有:顺序表、链表、栈、队列。 二、什么是 List List 是 Java 中的线性…

docker gitlab arm64 版本安装部署

前言: 使用RK3588 部署gitlab 平台作为个人或小型团队办公代码版本使用 1. docker 安装 sudo apt install docker* 2. 获取arm版本的gitlab GitHub - zengxs/gitlab-arm64: GitLab docker image (CE & EE) for arm64 git clone https://github.com/zengxs…

具身智能-强化学习-强化学习基础-马尔可夫

文章目录 参考强化学习基础强化学习特点reward函数两种强化学习两种策略:探索(Exploration) vs. 利用(Exploitation)gym库的使用 马尔可夫马尔可夫过程马尔可夫奖励过程(Markov Reward Process, MRP&#x…

浏览器同源策略:从“源”到安全限制的全面解析

一、什么是“源”(Origin)? 在浏览器中,“源”是 Web 安全的核心概念。一个“源”由三部分组成: 协议(Protocol):如 http://、https://、ftp:// 域名(Host)…

有用的sql链接

『SQL』常考面试题(2——窗口函数)_sql的窗口函数面试题-CSDN博客 史上最强sql计算用户次日留存率详解(通用版)及相关常用函数 -2020.06.10 - 知乎 (zhihu.com) 1280. 学生们参加各科测试的次数 - 力扣(LeetCode&…

可以称之为“yyds”的物联网开源框架有哪几个?

有了物联网的发展,我们的生活似乎也变得更加“鲜活”、有趣、便捷,包具有科技感的。在物联网(IoT)领域中,也有许多优秀的开源框架支持设备连接、数据处理、云服务等,成为被用户们广泛认可的存在。以下给大家…

Multi-Scale Heterogeneous Text-Attributed Graph Datasets From Diverse Domains

Multi-Scale Heterogeneous Text-Attributed Graph Datasets From Diverse Domains WWW25 推荐指数:#paper/⭐⭐⭐#​ 代码地址:https://github.com/Cloudy1225/HTAG 作者主页:Yunhui Lius Homepage 一句话总结:提出了涵盖多…