当前位置: 首页 > news >正文

“深入理解机器学习性能评估指标:TP、TN、FP、FN、精确率、召回率、准确率、F1-score和mAP”

目录

引言

分类标准

示例:癌症检测

1. 精确率(Precision)

2. 召回率(Recall)

3. 准确率(Accuracy)

4. F1-score

5. mAP(均值平均精度)

总结与通俗解释


引言

机器学习的核心目标之一是构建出具有良好性能的模型。为了评估模型的性能,我们依赖于一系列重要的指标。在本文中,我们将深入探讨这些指标,包括True Positive(TP)、True Negative(TN)、False Positive(FP)、False Negative(FN)、精确率、召回率、准确率、F1-score以及目标检测领域中常用的均值平均精度(mAP)

分类标准

示例:癌症检测

假设我们正在开发一个癌症检测模型,我们有12个患者样本,其中4个是患有癌症的正例8个是健康的负例

# 模型预测结果
predicted = [0, 0, 1, 0, 1, 1, 0, 0, 1, 0, 0, 0]
# 实际标签
actual =    [0, 0, 1, 0, 1, 0, 0, 1, 1, 0, 0, 0]
预测值=1预测值=0

真实值=1

3(TP)

1(FP)

真实值=01(FN)7(TN)
  • TP = 3(实际患病并被正确预测出来的数量)
  • FP = 1(实际健康但被错误预测为患病的数量)
  • FN = 1(实际患病但被错误预测为健康的数量)
  • TN = 7(实际健康并被正确预测出来的数量)

通过这些基本的概念,我们可以计算其他重要的性能指标。

1. 精确率(Precision)

精确率是指模型正确预测为正例的样本中,实际为正例的比例。计算公式为:

\text{Precision} = \frac{TP}{TP + FP}=\frac{3}{4}

  • 定义:精确率是指在所有模型预测为正例的样本中,实际为正例的比例。
  • 应用场景
    • 欺诈检测:用于确定模型正确识别欺诈交易的比例,以减少误报。
    • 医学诊断:用于评估模型正确诊断疾病的能力,减少误诊率。

2. 召回率(Recall)

召回率是指实际为正例的样本中,模型正确预测为正例的比例。计算公式为

\text{Recall} = \frac{TP}{TP + FN} =\frac{3}{4}

  • 定义:召回率是指实际为正例的样本中,模型正确预测为正例的比例。
  • 应用场景
    • 恶性肿瘤筛查:用于确保模型不会错过患有癌症的病例,减少假阴性。
    • 安全检查点:用于确保模型不会错过潜在威胁,维护公共安全。

3. 准确率(Accuracy)

准确率是指模型正确预测的样本占总样本数的比例。计算公式为:

Accuracy=\frac{TP+TN}{TP+FP+TN+FN}=\frac{10}{12}

  • 定义:准确率是指所有正确分类的样本数占总样本数的比例。
  • 应用场景
    • 二进制分类问题:用于衡量模型整体性能,特别是当正例和负例样本数量相差较大时。
    • 文本分类:用于测量模型正确分类文本的能力。

4. F1-score

F1-score综合考虑了精确率和召回率,是一个平衡两者的指标。计算公式为:

\text{F1 Score} = \frac{2 \times \text{Precision} \times \text{Recall}}{\text{Precision} + \text{Recall}}

  • 定义:F1分数是精确率和召回率的调和平均,用于综合考虑精确率和召回率的权衡。
  • 应用场景
    • 搜索引擎结果排序:用于衡量搜索结果的质量,平衡相关性和多样性。
    • 信息检索:用于评估检索系统的性能,以确保检索到的文档既相关又全面。

5. mAP(均值平均精度)

mAP在目标检测领域中广泛使用,是对模型在多个类别上的性能的平均度量。我们将其它指标拓展到多类别问题。计算公式为:

mAP=Precision*ReCall

如下面图形,MAP值就是Precision和ReCall所围成的矩形面积

 

  • 定义:mAP是一种用于衡量对象检测模型性能的指标,它计算每个类别的平均精确率,并将它们的平均值作为最终分数。
  • 应用场景
    • 目标检测:用于评估对象检测模型的性能,特别是当存在多个对象类别时。
    • 视觉搜索:用于评估图像检索系统的性能,以确保检索到的图像包含相关对象。

总结与通俗解释

通俗来说,准确率回答了“模型总的预测有多准”的问题;召回率回答了“模型对正例的识别能力有多强”的问题;mAP则是用于复杂任务的一个更为全面的评估指标;而F1-score则是尝试将精确率和召回率结合起来,给我们一个更为综合的评估结果。这些指标可以帮助我们更全面地了解模型的性能,从而选择或优化模型。

  • TP:模型说“这个人有病”,实际上这个人也真的有病。
  • TN:模型说“这个人没病”,实际上这个人也确实没病。
  • FP:模型误诊了健康人为病人。
  • FN:模型漏诊了真正的病人。
  • 精确率:模型说“有病”的人中,真正有病的比例。反映了模型预测的准确性。
  • 准确率:准确率是评估模型预测能力的一个基础指标,它反映的是模型所有预测中有多少是预测正确的。准确率越高,说明模型的整体预测能力越强。
  • 召回率:召回率关注的是模型对正例的识别能力。它衡量的是在所有真正的正例中,模型能正确识别出多少。召回率高,意味着模型对正例的识别能力强,不会漏掉太多真正的正例。
  • mAP:mAP是一个更为复杂的评估指标,主要用于图像分类、目标检测等任务中。它能够衡量模型在多类别上的性能,给出的是一个更为全面的评估。在实际应用中,如果我们的任务是要模型识别图像中的多个物体,那么mAP就是一个非常适合的评估指标。
  • F1-score:这是一个综合了精确率和召回率的评估指标。它试图找到一个平衡点,使得精确率和召回率都达到一个相对较高的水平。F1-score高,意味着模型在精确率和召回率上都有不错的表现。

相关文章:

“深入理解机器学习性能评估指标:TP、TN、FP、FN、精确率、召回率、准确率、F1-score和mAP”

目录 引言 分类标准 示例:癌症检测 1. 精确率(Precision) 2. 召回率(Recall) 3. 准确率(Accuracy) 4. F1-score 5. mAP(均值平均精度) 总结与通俗解释 引言 机器…...

Linux软件包(源码包和二进制包)

Linux下的软件包众多,且几乎都是经 GPL 授权、免费开源(无偿公开源代码)的。这意味着如果你具备修改软件源代码的能力,只要你愿意,可以随意修改。 GPL,全称 General Public License,中文名称“通…...

Leetcode-394 字符串解码(不会,复习)

此题不会!!!!!!!!!!!! 题解思路:元组思想:数字[字符串],每次遇到中括号意味着要重复数字次字符串…...

如何在Linux上搭建本地Docker Registry并实现远程连接

Linux 本地 Docker Registry本地镜像仓库远程连接 文章目录 Linux 本地 Docker Registry本地镜像仓库远程连接1. 部署Docker Registry2. 本地测试推送镜像3. Linux 安装cpolar4. 配置Docker Registry公网访问地址5. 公网远程推送Docker Registry6. 固定Docker Registry公网地址…...

assets_common.min.js

assets_common.min.js odoo将零散的js文件主要打包成了两个文件,分别是web.assets_common.min.js 和web.assets_backend.min.js, 我们分别看看这两个文件里都有些啥? common.js最先加载,看看里面都有些啥 1、boot.js 定义了od…...

前端工程化(vue2)

一、环境准备 1.依赖环境:NodeJS 官网:Node.js 2.脚手架:Vue-cli 参考网址:安装 | Vue CLI 介绍:Vue-cli用于快速的生成一个Vue的项目模板。主要功能有:统一的目录结构,本地调试&#xff0…...

深度学习(生成式模型)——Classifier Guidance Diffusion

文章目录 前言问题建模条件扩散模型的前向过程条件扩散模型的反向过程条件扩散模型的训练目标 前言 几乎所有的生成式模型,发展到后期都需要引入"控制"的概念,可控制的生成式模型才能更好应用于实际场景。本文将总结《Diffusion Models Beat …...

Hadoop架构、Hive相关知识点及Hive执行流程

Hadoop架构 Hadoop由三大部分组成:HDFS、MapReduce、yarn HDFS:负责数据的存储 其中包括: namenode:主节点,用来分配任务给从节点 secondarynamenode:副节点,辅助主节点 datanode:从节点&#x…...

P1529 [USACO2.4] 回家 Bessie Come Home 题解

文章目录 题目描述输入格式输出格式样例样例输入样例输出 提示完整代码 题目描述 现在是晚餐时间,而母牛们在外面分散的牧场中。 Farmer John 按响了电铃,所以她们开始向谷仓走去。 你的工作是要指出哪只母牛会最先到达谷仓(在给出的测试数…...

Python语法基础(条件语句 循环语句 函数 切片及索引)

目录 条件语句关键字与C对照注意 循环语句while 循环语句while else 循环语句for 循环语句range() 函数 for else 循环语句循环控制语句练习:打印乘法表 函数函数定义及调用函数值传递和引用传递多返回值参数类型位置参数默认参数关键字参数可变数量的参数可变数量的…...

Debian 9 Stretch APT问题

Debian 9 Stretch APT问题 flyfish 操作系统 Debian 9 Stretch 错误提示 使用sudo apt update错误提示 Ign:1 http://mirrors.aliyun.com/debian stretch InRelease Ign:2 http://mirrors.aliyun.com/debian-security stretch/updates InRelease Ign:3 http://mirrors.al…...

遍历List集合和Map进行修改和删除报java.util.ConcurrentModificationException错误详解

一、异常产生 当我们使用foreach迭代一个ArrayList或者HashMap时,如果尝试对集合做一些修改操作(例如删除元素或新增),可能会抛出java.util.ConcurrentModificationException的异常。 javapublic static void main(String[] args)…...

Android从一个APP跳转到另外一个APP

1、从当前APP去全新启动另外一个目标APP(非覆盖同一个进程): 启动另外一个目标APP(非覆盖原来APP的方式) 1、当前APP加入获取权限声明:(不加人权限检查,没法启动目标app&#xff0…...

我的创作纪念日——创作者2年

机缘 我最初使用CSDN估计是在2014年左右,当时还在读研,除了在当时比较有名的BBS例如小木虫上进行学术交流外,我发现很多问题百度后,都会转到CSDN,而且文章内容颇为专业,很多问题也都有专业的回答&#xff…...

大数据之LibrA数据库系统告警处理(ALM-12032 ommdba用户或密码即将过期)

告警解释 系统每天零点开始,每8小时检测当前系统中ommdba用户和密码是否过期,如果用户或密码即将在15天内过期,则发送告警。 当系统中ommdba用户过期的期限修改或密码重置,告警恢复。 告警属性 告警ID 告警级别 可自动清除 …...

C_3练习题

一、单项选择题(本大题共20小题,每小题2分,共40分。在每小题给出的四个备选项中,选出一个正确的答案,并将所选项前的字母填写在答题纸的相应位置上。) 1.下列叙述中正确的是()。 A.用C程序实现的算法必须要有输入和输出操作 B.用C程序实现的…...

CentOS7 安装Jenkins 2.414.3 详细教程

目录 1、前提条件硬件软件-java11安装 2、安装jenkins3、启动jenkins配置用户和用户组配置JAVA_HOME 4、配置Jenkins一直处于启动状态5、测试Jenkins是否可以访问以及配置6、访问Jenkins系统 1、前提条件 硬件 内存 4G ; 硬盘 20G 软件-java11安装 上传文件jdk-11.0.21_lin…...

chatglm3-6b记录问答对

# 打开文件,第二个参数是打开文件的模式,a代表追加,也就是说,打开这个文件之后直接定位到文件的末尾 file open(chatlog.txt, "a") # 写入数据 file.write(ask:prompt_text\n) file.write(response:response\n) # 关闭文件 fil…...

k8s ingress 代理 mysql 3306端口

helm 安装 ingress-nginx helm upgrade --install ingress-nginx ingress-nginx \--repo https://kubernetes.github.io/ingress-nginx \--namespace ingress-nginx --create-namespace执行命令 kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-ngin…...

Informix管理共享内存

1、查看共享内存使用情况 [informixREHL4 ~]$ onstat -g seg IBM Informix Dynamic Server Version 11.50.UC4 -- On-Line -- Up 00:38:21 -- 144144 Kbytes Segment Summary: id key addr size ovhd class blkused blkfree 393226 …...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计:let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性,这种设计体现了语言的核心哲学。以下是深度解析: 1.1 设计理念剖析 安全优先原则:默认不可变强制开发者明确声明意图 let x 5; …...

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする

日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする 1、前言(1)情况说明(2)工程师的信仰2、知识点(1) にする1,接续:名词+にする2,接续:疑问词+にする3,(A)は(B)にする。(2)復習:(1)复习句子(2)ために & ように(3)そう(4)にする3、…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制&#xff0…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

P3 QT项目----记事本(3.8)

3.8 记事本项目总结 项目源码 1.main.cpp #include "widget.h" #include <QApplication> int main(int argc, char *argv[]) {QApplication a(argc, argv);Widget w;w.show();return a.exec(); } 2.widget.cpp #include "widget.h" #include &q…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

Unit 1 深度强化学习简介

Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库&#xff0c;例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体&#xff0c;比如 SnowballFight、Huggy the Do…...

IT供电系统绝缘监测及故障定位解决方案

随着新能源的快速发展&#xff0c;光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域&#xff0c;IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选&#xff0c;但在长期运行中&#xff0c;例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

Spring数据访问模块设计

前面我们已经完成了IoC和web模块的设计&#xff0c;聪明的码友立马就知道了&#xff0c;该到数据访问模块了&#xff0c;要不就这俩玩个6啊&#xff0c;查库势在必行&#xff0c;至此&#xff0c;它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据&#xff08;数据库、No…...

DeepSeek 技术赋能无人农场协同作业:用 AI 重构农田管理 “神经网”

目录 一、引言二、DeepSeek 技术大揭秘2.1 核心架构解析2.2 关键技术剖析 三、智能农业无人农场协同作业现状3.1 发展现状概述3.2 协同作业模式介绍 四、DeepSeek 的 “农场奇妙游”4.1 数据处理与分析4.2 作物生长监测与预测4.3 病虫害防治4.4 农机协同作业调度 五、实际案例大…...