机器学习指标: F1分数

news2025/1/11 21:55:52

动动发财的小手,点个赞吧!

F1 score 简介

本文[1]中,您将了解 F1 分数。 F1 分数是一种机器学习指标,可用于分类模型。尽管分类模型存在许多指标,但通过本文,您将了解 F1 分数的计算方式以及何时使用它有附加价值。

f1 分数是对两个更简单的性能指标的改进建议。因此,在深入了解 F1 分数的细节之前,让我们概述一下 F1 分数背后的那些指标。

Accuracy

准确性是分类模型的一个指标,它衡量正确预测的数量占所做预测总数的百分比。例如,如果你的预测有 90% 是正确的,那么你的准确率就是 90%。

alt

仅当您的分类中的类别分布均等时,准确性才是有用的指标。这意味着,如果您有一个用例,在该用例中观察到一个类的数据点多于另一个类的数据点,则准确性不再是有用的指标。让我们看一个例子来说明这一点:

不平衡数据示例

假设您正在处理网站的销售数据。您知道 99% 的网站访问者不购买,只有 1% 的访问者购买。您正在构建一个分类模型来预测哪些网站访问者是买家,哪些只是浏览者。

现在想象一个效果不佳的模型。它预测 100% 的访问者只是观看者,而 0% 的访问者是购买者。这显然是一个非常错误和无用的模型。

当你有类不平衡时,准确性不是一个好的指标。

如果我们在这个模型上使用精度公式会发生什么?您的模型仅预测了 1% 错误:所有买家都被错误分类为看客。因此,正确预测的百分比为 99%。这里的问题是 99% 的准确率听起来不错,而你的模型表现很差。总之:当你有类别不平衡时,准确性不是一个好的衡量标准。

  • 通过重采样解决不平衡数据

解决类别不平衡问题的一种方法是处理您的样本。使用特定的采样方法,您可以以数据不再不平衡的方式对数据集进行重新采样。然后您可以再次使用准确性作为指标。

  • 通过指标解决不平衡数据

解决类不平衡问题的另一种方法是使用更好的准确性指标,如 F1 分数,它不仅考虑了模型预测错误的数量,还考虑了所犯错误的类型。

F1 分数的基础

Precision 和 Recall 是考虑到类不平衡的两个最常见的指标。它们也是F1成绩的基础!在将它们组合到下一部分的 F1 分数之前,让我们更好地了解 Precision 和 Recall。

Precision

精度是 F1 分数的第一部分。它也可以用作单独的机器学习指标。它的公式如下所示:

alt

您可以按如下方式解释此公式。在预测为正的所有内容中,精度计算正确的百分比:

  • 一个不精确的模型可能会发现很多阳性,但它的选择方法是有噪音的:它也会错误地检测到许多实际上不是阳性的阳性。
  • 一个精确的模型是非常“纯粹”的:也许它没有找到所有的积极因素,但模型分类为积极的那些很可能是正确的。

Recall

召回率是 F1 分数的第二个组成部分,尽管召回率也可以用作单独的机器学习指标。召回公式如下所示:

alt

您可以按如下方式解释此公式。在所有实际积极的事物中,模型成功找到了多少:

  • 具有高召回率的模型可以很好地找到数据中的所有正例,即使它们也可能错误地将一些负例识别为正例。
  • 召回率低的模型无法找到数据中的所有(或大部分)阳性病例。

Reference

[1]

Source: https://towardsdatascience.com/the-f1-score-bec2bbc38aa6

本文由 mdnice 多平台发布

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

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

相关文章

腾讯云语音合成

用腾讯云 AI 语音合成打造有声书制作工具 代码开发 第一步:电子书文件解析 第二步:有声语音合成 第三步:完成有声书制作脚本 第四步:脚本可视化 产品体验 腾讯云 AI 语音合成服务已经非常成熟,基于开源工具整合 TTS P…

JAVA135-185

JAVA135-185 多线程多线程成员方法线程优先级eg,卖票(线程的安全问题)需要解决线程同时抢的问题 同步方法LOCK锁等待唤醒机制阻塞队列实现等待唤醒机制多线程的六种状态红包抽奖箱抽奖比较 线程池最大并行数网络编程InetAdress端口号协议练习…

Mutipart

含义: 多部分的、复合 场景: 位置:package org.springframework.boot.autoconfigure.web.servlet; Springboot中autoconfigration包下web包下servlet下DispatcherServletAutoConfiguration中: 有一个默认加载的Bean Bean …

stm32通用外部spi下载算法实现

参考硬汉嵌入式:【实战技能】任何支持SWD接口的单片机都可以方便移植的SPI Flash烧写算法制作_哔哩哔哩_bilibili 该up主提供的stm32H7的模板工程,目前需求是实现基于正点原子探索者stm32f407zet6W25Q128 下载算法实现步骤 使用cubemx建立一个LED工程…

postgresql walsender源码分析

专栏内容:postgresql内核源码分析个人主页:我的主页座右铭:天行健,君子以自强不息;地势坤,君子以厚德载物. 目录 前言 介绍 数据结构 WAL对端的状态 walsender进程 WALsender交互流程 在…

【连续介质力学】张量分量的变换定律

张量分量的变换定律 张量的分量是依赖于坐标系的,所以当坐标系发生旋转,张量分量也会发生改变,张量分量与坐标系通过分量变换规律互相关联起来的。 考虑在正交基 ( e ^ 1 , e ^ 2 , e ^ 3 ) (\hat e_1, \hat e_2, \hat e_3) (e^1​,e^2​,…

【51单片机】串口通信使用串口通信控制LED灯

🎊专栏【51单片机】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【51单片机】 🥰大一同学小吉,欢迎并且感谢大家指出我的问题🥰 目录 🍔串口通信 😎代码…

HTTP1.1(四)URI

一 URI的基本格式以及与URL的区别 ① URI直观感受 1)URI是HTTP协议的重要组成部分2)ABNF如何严格定义URI ② URL、URN、URI ③ URI细讲 ④ URI的组成 ⑤ ABNF关于URI定义 blob:http 地址的原理及生成方法 video 标签 src 带有blob:http data…

NetCore发布到Docker-单机

一.git安装 1.下载 https://github.com/git/git/releases/tag/v2.40.1 2.将本地的安装包上传到 linux 服务器上,我这里放在 /opt/git/ 目录下 3.解压压缩包,得到目录 git-2.40.1,位置在 /opt/git/git-2.40.1 tar -zxvf git-2.40.1.tar.gz 4.…

【刷题之路】LeetCode 225. 用队列实现栈

【刷题之路】LeetCode 225. 用队列实现栈 一、题目描述二、解题1、主要思路解析2、先实现栈3、实现各个接口3.1、初始化接口3.2、push接口3.3、pop接口3.4、myStackTop接口3.5、myStackEmpty接口3.6、myStackFree接口 一、题目描述 原题连接: 225. 用队列实现栈 题…

如何选择合适的自动化测试工具? 我教你

目录 前言 选择最佳自动化测试工具的重要性 自动化测试工具的种类 选择自动化测试工具时要考虑的因素 自动化测试工具的选择标准 前言 自动化测试是高质量软件交付领域中最重要的实践之一。在今天的敏捷开发方法中,几乎任一软件开发过程都需要在开发阶段的某个…

测试工具-JIRA

软件测试工具—JIRA使用 1.创建 项目:一般为业务线名称 问题类型:任务、故事、缺陷等 概要:bug的简要描述,一般写出定位地方和目前现状 Sprint:一般为业务线迭代简称 测试阶段:按照各公司的测试流程对应标…

vlc搭建rtsp直播Demo

文章目录 学习链接本地视频文件作为数据源推流步骤拉流步骤 本地摄像头作为数据源拉流步骤 学习链接 ffmpeg 使用VLC亲手搭建RTSP直播点播 本地视频文件作为数据源 推流步骤 点击媒体->流 点击添加,选择视频文件,后点击串流 点击串流后&#xf…

linux异步通知实验

一、异步通知简介 中断是处理器提供的一种异步机制,配置好中断后就可以让处理器去处理其他的事情,当中断发生以后会执行中断服务函数,在中断服务函数中做具体的处理。 Linux 应用程序可以通过阻塞或者非阻塞两种方式来访问驱动设备&#xff0…

04:mysql--DCL

目录 1:介绍 2:语法 3:DCL的使用 4:权限 1:介绍 DCL英文全称是Data ControlLanguage(数据控制语言),用来管理数据库 用户、控制数据库的访问 权限。 2:语法 DCL-管理用户 查询用户 use mysql; select * from user; 创建用户 create user "用户名&quo…

缓存服务器概述

一、概述 主要功能:应用解耦,异步消息,流量削锋等问题 架构设计:实现高性能,高可用,可伸缩和最终一致性架构 常用消息队列:ActiveMQ,RabbitMQ,ZeroMQ,Kafka…

谷歌chrome浏览器升级新版后字体显示不清楚解决方案

谷歌chrome浏览器升级新版后字体显示不清楚解决方案 参考图片: Chrome更新至版本Chrome 109.0.5414.120 字体看不清 浏览器症状与表现 Chrome更新至版本Chrome 109.0.5414.120 字体看不清;会很细,在设置中选择自定义的字体,仍无法…

MySQL数据库笔记-基础篇

文章目录 MySQL概述数据库相关概念小总结 MySQL数据库版本:启动与停止客户端连接关系型数据库数据模型小总结 SQLSQL通用语法SQL分类DDL数据库操作查询创建数据类型数据类型的使用练习 修改删除小总结 DML添加数据修改数据删除数据小总结 DQLDCL MySQL概述 数据库相…

BI技巧丨矩阵甘特图

BOSS:白茶,我们最近有很多项目,能不能做个甘特图? 白茶:没问题!(应用市场上随便找个甘特图就OK了嘛!) BOSS:对了,不要那种点进来会有点卡&#xf…

二、数据结构1:单链表 模板题+算法模板(单链表)

文章目录 算法模板单链表题目模板 模板题单链表原题链接题目思路题解 算法模板 单链表题目模板 // head存储链表头,e[]存储节点的值,ne[]存储节点的next指针,idx表示当前用到了哪个节点 int head, e[N], ne[N], idx;// 初始化 void init() …