模型评价指标笔记:混淆矩阵+F1+PR曲线+mAP

news2024/11/21 0:32:56

评价指标

二分类评价指标

混淆矩阵

image.png
TP: 正确预测为了正样本,原来也是正样本
FN: 错误的预测为负样本,原来是正样本 (漏报,没有找到正确匹配的数目)
FP: 错误的预测为正样本,原来是负样本 (误报,没有的匹配不正确)
TN: 正确的预测为负样本,原来是负样本

正确率

image.png

精确率和召回率

精确率/查准率

TP: 真实P类 预测P类, FP: 真实N类 预测P类, TP + FP: 模型预测为P类的数量
image.png

召回率/查全率

FN 真实为P类,预测为N类; TP + FN: 真实P类的数量 (不考虑预测的结果)
image.png

例如

image.png

F1-Score

即F值为正确率和召回率的调和平均值
image.png

ROC

精确率、召回率 和 F1-score 都是单一的数值指标,如果想观察分类算法在不同的参数下的表现,此时可以使用一条曲线,即 ROC。ROC 曲线可以用评价一个分类器在不同阈值下的表现。
横坐标是 FPR(假正例率),FPR= FP / (FP + TN),表示分类器预测的正类中实际负实例占所有负例的比例,FPR越大,预测正类中的实际负类越多, 越小越好。(假警报率)
纵坐标是TPR(真正例率),公式同召回率的,TPR= TP / (TP + FN),表示分类器预测的正类中实际正实例占所有正例的比例, 值越大越好。(命中率)
ROC曲线的横轴为假正例率,纵轴为真正例率,范围都是[0,1],现在我们开始画图——根据从大到小遍历预测值,把当前的预测值当做阈值,计算FPR和TPR
结论: ROC下面的面积越大,分类器越好

P-R曲线

为了找到最合适的阈值,需要遍历 0 到 1 之间所有的阈值,每个阈值都对应着一对查准率和查全率,从而得到 PR 曲线
结论:越靠近正方形的对角越好

AP(average precision)

平均精确度(AP)通常是通过积分(或者近似的方法)的方式计算PR曲线下的面积来得到的
使用积分(或者近似的方法)来计算从召回率0到1的整个曲线下的面积。
通常来说一个越好的分类器,AP值越高

多分类评价指标

混淆矩阵

image.png
混淆矩阵可以提供以下信息:
正确分类的数量:主对角线上的元素显示了每个类别被正确预测的次数
错误分类的数量:非对角线上的元素显示了每个类别被错误预测为其他类别的次数

Accuracy 之 top1和top5

Top-1 Accuracy:是指模型预测的最高概率分数对应的类别与真实类别相同的情况下,认为是正确预测
Top-5 Accuracy:它允许模型在预测的概率最高的五个类别中只要有一个是正确的,就认为预测是成功的

mAP-全类平均精确率

image.png
其中 n 是类别的总数,AP(i) 是第 i 个类别的 Average Precision 值

AP 与 mAP

AP 衡量的是训练好的模型在每个类别上的好坏
mAP 衡量的是模型在所有类别上的好坏,mAP 就是取所有 AP 的平均值
mAP 常作为目标检测算法的评价指标,对于每张图片检测模型会输出多个预测框(远超真实框的个数),用 IoU (Intersection Over Union,交并比)来标记预测框是否预测准确。
标记完成后,随着预测框的增多,查全率 R 总会上升,在不同查全率 R 水平下对准确率 P 做平均,即得到AP,最后再对所有类别按其所占比例做平均,即得到 mAP 指标

目标检测

目标检测中的性能指标主要包括:精确率(precision)、召回率(recall)、平均精度(average precision,AP)、平均精度均值(mean average precision,mAP)。
目标检测算法中主要使用的性能指标是 mAP、 检测速度(帧/s)–> FPS (每秒传输帧数(Frames Per Second))

性能指标

机器性能

FLOPS

FLOPS(Floating Point Operations per Second)指每秒浮点运算次数,可以理解为评估计算速度的单位
image.png

算法性能

FLOPs

FLOPs:(Floating Point Operations) s小写,指浮点运算数,理解为计算量。可以用来衡量算法/模型的复杂度。(模型) 在论文中常用GFLOPs(1 GFLOPs = 10^9 FLOPs)
一般计算FLOPs来衡量模型的复杂度:

  • 较大的FLOPs值通常表示任务或算法具有更高的计算需求,需要更多的计算资源来完成
  • FLOPs越小时,表示模型所需计算量越小,运行起来时速度更快
安装库

pip install thop

查看FLOPs性能
import torch
from thop import profile
from torchvision.models import resnet50
model = resnet50()
input1 = torch.randn(1, 3, 224, 224)
flops, params = profile(model, inputs=(input1, ))
print('FLOPs = ' + str(flops / 1000 ** 3) + 'G')

第三方工具计算评价指标

参考:Cartucho / mAP

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1691587.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

解决ModuleNotFoundError: No module named ‘dnnlib‘问题

复现论文采用了大佬的库,这时候运行报错: 尝试采用:pip install dnnlib解决,但下载源中并不包含该依赖。 解决方法: pip install https://github.com/podgorskiy/dnnlib/releases/download/0.0.1/dnnlib-0.0.1-py3-n…

带你看懂认沽期权交易是什么意思?

今天期权懂带你了解带你看懂认沽期权交易是什么意思?认沽期权是期权交易中的一种方向性策略,也被称为“看跌期权”。 认沽期权交易是什么意思? 认沽期权,亦称为看跌期权,是期权交易中的一种类型,它提供给买…

【NVM】持久内存的架构

1 内存数据持久化 1.1 数据持久化 持久内存系统包含如下关键组件:微处理器、连接微处理器内存总线上的持久内存模组(Persistent MemoryModule,PMM)及持久内存上的非易失性存储介质。 使用持久内存来实现数据的持久化&#xff0c…

基于 Java 的浏览器——JxBrowser使用分享

软件介绍 JxBrowser 是一个基于 Java 的浏览器,它使用 Chromium 引擎来提供高性能的网页渲染和丰富的功能。它支持多种 GUI 框架,如 Swing、JavaFX 和 SWT,使得在 Java 应用程序中嵌入浏览器组件变得简单。 JxBrowser 是一个适用于多种用途…

linux常用软件源码安装-2

jdk、tomcat、Apache、nginx、mysql、redis、maven、nexus安装文档:linux常用软件源码安装 9.sonarqube安装 前置条件:mysql5.6和jdk8 1.下载 官网 2.安装unzip并解压sonarqube,然后移动到/usr/local yum install -y unzip unzip sonarq…

excel poi的titleRows 和 headRows含义

titleRows 这个参数的意思是:excel标题占多少行,而不是第几行headRows 这个参数的意思是:excel表头占几行,而不是第几行(多行的意思是合并的行数) 比如有一个excel如下,1-2行是标题&#xff0c…

大语言模型实战——搭建纯本地迷你版RAG

1. 概念 RAG(Retrieval Augmented Generation)检索增强生成,它结合了搜索技术和大语言模型的提示词功能,以搜索算法找到的信息作为背景上下文,来辅助大语言模型(Large Language Model, LLM)生成…

CentOS部署NFS

NFS服务端 部署NFS服务端 sudo yum install -y nfs-utils挂载目录 给 NFS 指定一个存储位置,也就是网络共享目录。一般来说,应该建立一个专门的 /data 目录,方便起见使用临时目录 /tmp/nfs: mkdir -p /tmp/nfs #修改权限 chmo…

vue 引入 emoji 表情包

vue 引入 emoji 表情包 一、安装二、组件内使用 一、安装 npm install --save emoji-mart-vue二、组件内使用 import { Picker } from "emoji-mart-vue"; //引入组件<picker :include"[people,Smileys]" :showSearch"false" :showPreview&q…

【飞桨AI实战】基于PP-OCR和ErnieBot的智能视频问答

前言 本次分享将带领大家从 0 到 1 完成一个基于 OCR 和 LLM 的视频字幕提取和智能视频问答项目&#xff0c;通过 OCR 实现视频字幕提取&#xff0c;采用 ErnieBot 完成对视频字幕内容的理解&#xff0c;并回答相关问题&#xff0c;最后采用 Gradio 搭建应用。本项目旨在帮助初…

python ofd转pdf及图片

本文部分内容参考&#xff0c;如有侵权请联系删除&#xff1a;使用 easyofd 解析ofd 文件_python模块easyofd如何使用-CSDN博客 背景需求&#xff1a;需要将邮箱中得ofd格式发票提取出来转换成pdf或者图片。 在网上搜了发现使用pyofd包&#xff0c;安装之后使用各种问题&…

[排序算法]2. 图解选择排序及其代码实现

选择排序 选择排序就是重复“从待排序的数据中寻找最小值&#xff0c;将其与序列最左边的数字进行交换”这一操作的算法。在序列中寻找最小值时使用的是线性查找。 算法步骤: 1.使用线性查找在数据中寻找最小值, 于是我们找到了最小值1 2.将最小值1与序列最左边的…

在某云服务器上搭建公网kali linux2.0

前提&#xff1a; 可用的 CVM 实例 挂载一个系统盘之外的盘&#xff0c;安装完成后可卸载&#xff01; 创建实例&#xff0c;安装centos7系统&#xff01; 然后执行fdisk -l看磁盘的情况 在这里我将把镜像写入vdb这块数据盘 非 root 的情况下记得sudo执行以下命令 注意&…

Java中的判断校验非空问题

目录 字符串 字符串是空的情况 字符串不是空的情况 对象 对象是空的情况 对象不是空的情况 前端传的 int ,double类型等等 Optional 判断情况 https://www.cnblogs.com/zhangboyu/p/7580262.htmlhttps://www.cnblogs.com/zhangboyu/p/7580262.html 值为空的情况,不会…

网络模型-物理层技术

一、堆叠技术 堆叠技术通过堆叠端口和堆叠连接线将多台支持堆叠特性的交换机设备组合在一起&#xff0c;从逻辑上组合成一台交换机设备。通过组建堆叠&#xff0c;可以达到扩展网络能力、提高设备可靠性的目的。 堆叠的种类:链形和环形堆叠 堆叠 (设备虚拟化): 将多台设备通过…

项目9-网页聊天室8(消息的发送和接收之websocket)

这是整个项目最最核心的部分. 但是这个部分的编写&#xff0c;需要依赖"基础设施" 包括不限于前面已经实现的 主界面,用户管理,会话管理, 好友管理, 消息管理 等等.... 发送消息,和接收消息,需要"实时传输 张三 发了一条消息,李四 这边立即就能接收到, 这样的…

进程间通信(下)

1. system V共享内存 共享内存区是最快的IPC形式。一旦这样的内存映射到共享它的进程的地址空间&#xff0c;这些进程间数据传递不再涉及到内核&#xff0c;换句话说是进程不再通过执行进入内核的系统调用来传递彼此的数据 那么这到底是为什么呢&#xff1f; 1.1 共享内存示意…

用户账户的权限管理

用户账户的权限管理 用户账号&#xff1a; 1、超级用户 &#xff1a;管理员账号 root 默认对本机拥有最高权限的账户&#xff0c;在系统中唯一。 2、普通用户&#xff1a;一般由管理员创建&#xff0c;拥有的权限是受限制的&#xff0c;一般只在自己的家目录中拥有完整的权限…

【无标题】亚马逊5月24日宣布推出2024出口跨境物流加速器计划

亚马逊中国5月24日郑重宣布启动“2024亚马逊出口跨境物流加速器计划”&#xff0c;旨在依托其世界领先的物流网络和前沿技术&#xff0c;结合本土资源&#xff0c;不断优化跨境物流服务&#xff0c;以强化中国卖家在跨境物流供应链管理方面的能力&#xff0c;进而提升整体效率&…

DI-engine强化学习入门(四)DI-ZOO强化学习——MUJOCO环境搭建

上一章我们搭建了Atari的强化学习环境&#xff0c;这一期我们来搭建MUJOCO强化学习环境 那么我们为什么要“多此一举”呢&#xff1f; 一、概述 MuJoCo和Atari对比 Atari&#xff1a; 类型&#xff1a;Atari游戏是一系列的经典视频游戏。简单性&#xff1a;Atari游戏通常有相…