评价机器学习模型的指标

news2024/12/24 3:14:28

为了衡量一个机器学习模型的好坏,需要给定一个测试集,用模型对测试集中的每一个样本进行预测,并根据预测结果计算评价分数。
对于分类问题,常见的评价标准有准确率、精确率、召回率和F值等。给定测试集 𝒯 = {(𝒙(1), 𝑦(1)), ⋯ , (𝒙(𝑁), 𝑦(𝑁))},假设标签 𝑦(𝑛) ∈ {1, ⋯ , 𝐶},用学习好的模型𝑓(𝒙; 𝜃∗)对测试集中的每一个样本进行预测,结果为{y^(1), ⋯y^(N)}。
准确率 最常用的评价指标为准确率(Accuracy):

其中𝐼(⋅)为指示函数.
错误率 和准确率相对应的就是错误率(Error Rate):

精确率和召回率 准确率是所有类别整体性能的平均,如果希望对每个类都进行性能估计,就需要计算精确率(Precision)和召回率(Recall)。精确率和召回率是广泛用于信息检索和统计学分类领域的两个度量值,在机器学习的评价中也被大量使用。
对于类别𝑐来说,模型在测试集上的结果可以分为以下四种情况:
(1) 真正例(True Positive,TP):一个样本的真实类别为𝑐并且模型正确地预测为类别𝑐.这类样本数量记为

(2) 假负例(False Negative,FN):一个样本的真实类别为𝑐,模型错误地预测为其他类.这类样本数量记为

(3) 假正例(False Positive,FP):一个样本的真实类别为其他类,模型错误地预测为类别𝑐.这类样本数量记为

(4) 真负例(True Negative,TN):一个样本的真实类别为其他类,模型也预测为其他类.这类样本数量记为𝑇𝑁𝑐。对于类别𝑐来说,这种情况一般不需要关注。
这四种情况的关系可以用如表2.3所示的混淆矩阵(Confusion Matrix)来表示。

根据上面的定义,我们可以进一步定义查准率、查全率和F值。
精确率(Precision),也叫精度或查准率,类别 𝑐 的查准率是所有预测为类别𝑐的样本中预测正确的比例:

召回率(Recall),也叫查全率,类别𝑐的查全率是所有真实标签为类别𝑐的样本中预测正确的比例:

F值(F Measure)是一个综合指标,为精确率和召回率的调和平均:

其中𝛽 用于平衡精确率和召回率的重要性,一般取值为1.𝛽 = 1时的F值称为F1值,是精确率和召回率的调和平均。
宏平均和微平均 为了计算分类算法在所有类别上的总体精确率、召回率和 F1值,经常使用两种平均方法,分别称为宏平均(Macro Average)和微平均(Mi-cro Average)。
宏平均是每一类的性能指标的算术平均值:

值得注意的是,在有些文献上F1值的宏平均为

微平均是每一个样本的性能指标的算术平均值.对于单个样本而言,它的精确率和召回率是相同的(要么都是1,要么都是0)。因此精确率的微平均和召回率的微平均是相同的.同理,F1值的微平均指标是相同的。当不同类别的样本数量不均衡时,使用宏平均会比微平均更合理些。宏平均会更关注小类别上的评价指标。

在实际应用中,我们也可以通过调整分类模型的阈值来进行更全面的评价,比如AUC(Area Under Curve)、ROC(Receiver Operating Characteristic)曲线、PR(Precision-Recall)曲线等.此外,很多任务还有自己专门的评价方式,比如TopN准确率。

交叉验证(Cross-Validation)是一种比较好的衡量机器学习模型的统计分析方法,可以有效避免划分训练集和测试集时的随机性对评价结果造成的影响。我们可以把原始数据集平均分为𝐾 组不重复的子集,每次选 𝐾 − 1 组子集作为训练集,剩下的一组子集作为验证集。这样可以进行𝐾 次试验并得到𝐾 个模型,将这𝐾 个模型在各自验证集上的错误率的平均作为分类器的评价。

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

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

相关文章

系统设计——系统安全

HTTPS 是如何工作的? 安全超文本传输​​协议(HTTPS)是超文本传输​​协议(HTTP)的扩展。HTTPS 使用传输层安全性(TLS)传输加密数据。如果数据在网上被劫持,劫持者得到的只是二进制…

selenium-wire简介

一.简介 以下来自chatGPT回答: selenium-wire是一个基于selenium的Python库,它扩展了selenium的功能,使得我们可以在自动化测试中直接访问和修改浏览器的网络请求和响应。selenium-wire可以拦截和修改HTTP请求和响应,从而可以在…

【一周安全资讯1216】欧盟就AI监管《人工智能法案》达成历史性协议;赛迪发布《中国网络安全测评服务市场研究报告 (2023)》

要闻速览 1、欧盟就全球首个AI监管《人工智能法案》达成历史性协议 2、我国牵头提出的国际标准《信息技术 网络安全 第7部分:网络虚拟化安全指南》正式发布 3、《粤港澳大湾区(内地、香港)个人信息跨境流动标准合同实施指引》发布 4、赛迪顾…

三相异步电机动态数学模型推导及矢量控制仿真

文章目录 **原文链接,点击跳转**三相异步电机动态数学模型及矢量控制仿真1、异步电机三相方程2、坐标变换3、磁链3/2变换推导4、两相静止坐标系下的方程5、两相旋转坐标系下的方程6、以 ω-is-Ψr 为状态变量的状态方程7、矢量控制及 matlab 仿真 原文链接&#xff…

【C语言】数据结构——链式二叉树实例探究

💗个人主页💗 ⭐个人专栏——数据结构学习⭐ 💫点击关注🤩一起学习C语言💯💫 导读: 我们在前面学习了单链表,顺序表,栈和队列,小堆。 今天我们来学习链式二叉…

WPF仿网易云搭建笔记(7):HandyControl重构

文章目录 专栏和Gitee仓库前言相关文章 新建项目项目环境项目结构 代码结果结尾 专栏和Gitee仓库 WPF仿网易云 Gitee仓库 WPF仿网易云 CSDN博客专栏 前言 最近我发现Material Design UI的功能比较简单,想实现一些比较简单的功能,比如消息提示&#xff0…

抖音直播间websocket礼物和弹幕消息推送可能出现重复的情况,解决办法

在抖音直播间里,通过websocket收到的礼物消息数据格式如下: {common: {method: WebcastGiftMessage,msgId: 7283420150152942632,roomId: 7283413007005207308,createTime: 1695803662805,isShowMsg: True,describe: 莎***:送给主播 1个入团卡,priority…

解决goview栈内存溢出导致打包报错问题

最近搞低代码大屏使用goview打包时遇到问题 报错&#xff1a; vite v4.3.6 building for production... transforming (8931) node_modules\monaco-editor\esm\vs\base\common\navigator.js <--- Last few GCs ---> [24864:000001B515BA39F0] 65979 ms: Scavenge 2002.0…

VueStu01-Vue是什么

1.概念 Vue 是一个 用于构建用户界面 的 渐进式 框架 。 2.构建用户界面 基于数据渲染出用户看到的页面。 3.渐进式 Vue的学习是循序渐进的&#xff0c;可以学一点用一点&#xff0c;不必全部学完才能用。哪怕你只学了 声明式渲染 这一个小部分的内容&#xff0c;你也可以完成…

Eclipse_03_如何加快index速度

1. ini配置文件 -Xms&#xff1a;是最小堆内存大小&#xff0c;也是初始堆内存大小&#xff0c;因为堆内存大小可以根据使用情况进行扩容&#xff0c;所以初始值最小&#xff0c;随着扩容慢慢变大。 -Xmx&#xff1a;是最大堆内存大小&#xff0c;随着堆内存的使用率越来越高&a…

vue内容渲染

内容渲染指令用来辅助开发者渲染DOM元素的文本内容。常用的内容渲染指令有3个 1.v-text 缺点&#xff1a;会覆盖元素内部原有的内容 2.{{}}&#xff1a;插值表达式在实际开发中用的最多&#xff0c;只是内容的占位符&#xff0c;不会覆盖内容 3.v-html&#xff1a;可以把带有标…

SVM —— 理论推导

SVM 支持向量线性可分最大间隔超平面最大间隔超平面的推导支持向量分类间隔的推导最优化问题 对偶问题拉格朗日乘子法强对偶性 SVM 优化软间隔解决问题优化目标及求解 核函数线性不可分核函数的作用常见核函数 SVM 算法优缺点 支持向量机&#xff08;Support Vector Machine&am…

一、Java基础语法

注意&#xff1a; ​ 用记事本打开本文档&#xff0c;格式较差。 ​ 可安装typora软件后再次打开。 ​ 安装包位于&#xff1a;day01\资料\其他软件\阅读笔记的软件\typora-setup-x64.exe day01 - Java基础语法 1. 人机交互 1.1 什么是cmd&#xff1f; 就是在windows操作…

BearPi Std 板从入门到放弃 - 先天神魂篇(7)(RT-Thread 定时器-软件定时器)

简介 RT-Thread 软件定时器的简单使用步骤 创建项目 参考 BearPi RT-Thread项目创建 定时器管理接口 定时器时钟节拍 定时器管理相关函数 定时器类型 #define RT_TIMER_FLAG_ONE_SHOT 0x0 //一次性计时器 #define RT_TIMER_FLAG_PERIODIC 0x2 // 周期性定时器 #…

博特激光:紫外激光打标机在玻璃行业的应用

随着科技的飞速发展&#xff0c;紫外激光打标机在玻璃行业的应用日益广泛。这种高效、高精度的打标设备为玻璃制品的标识和加工带来了革命性的变革&#xff0c;助力企业提升生产效率和产品质量。 ​ ​ 一、玻璃制品标识 紫外激光打标机采用高能量密度的激光束&#xff0c;能够…

Postman接口自动化测试之——批量执行(集合操作)

集合定义&#xff1a;在接口自动化测试过程中将一组请求&#xff08;多条请求&#xff09;保存到一起进行集中管理。方便执行过程中的维护、导出和执行等。 创建集合 在引导页点击“Collection”&#xff0c;或者在“Collection”标签点击图标&#xff1b; 字段解释 集合描述…

初识Redis缓存,一文掌握Redis重要知识文集。

&#x1f3c6;作者简介&#xff0c;普修罗双战士&#xff0c;一直追求不断学习和成长&#xff0c;在技术的道路上持续探索和实践。 &#x1f3c6;多年互联网行业从业经验&#xff0c;历任核心研发工程师&#xff0c;项目技术负责人。 &#x1f389;欢迎 &#x1f44d;点赞✍评论…

LazyIDA源码阅读

LazyIDA是一款IDA插件&#xff0c;项目地址GitHub - L4ys/LazyIDA: Make your IDA Lazy! 外部引用 from __future__ import division from __future__ import print_function from struct import unpack import idaapi import idautils import idcfrom PyQt5.Qt import QAppli…

idea过往各版本下载

idea过往各版本下载 https://www.jetbrains.com/zh-cn/idea/download/other.html

动手学深度学习2 安装环境

pytorch环境安装 1. windows 环境安装2. mac环境安装3. linux环境安装1. 申请云服务器 链接机器--Ubuntu2. 环境配置 4. 不安装环境直接使用colabQA 课程链接&#xff1a; https://www.bilibili.com/video/BV18p4y1h7Dr?p1&vd_sourceeb04c9a33e87ceba9c9a2e5f09752ef8 1.…