【机器学习】分类模型的评价方法

🌻个人主页:相洋同学
🥇学习在于行动、总结和坚持,共勉!

#学习笔记#

目录

一、混淆矩阵(Confusion Matrix)

二、评估指标(Evaluation metrics)

1.正确率(accuracy)

2.精准率(precision)

3.召回率(recall)

4.调和平均值(F1)

 三、ROC、AUC与P-R曲线

1.ROC曲线

2.AUC

3.P-R曲线


一、混淆矩阵(Confusion Matrix)

混淆矩阵可以用来评估分类模型的正确性,该矩阵是一个方阵,矩阵的数值用来表示模型预测结果与真实结果的对比统计。包括真正例(True Positive)、假正例(False Positive)、真负例(True Negative)、假负例(False Negative)。

 通过上图我们不难得出以下几点结论:

1.竖着来看,正正例(TP)+假负例(FN)= 预测为正样本的数量,假正例(FP)+ 真负例(TN)= 预测为负样本的数量;

2.横着来看,真正例(TP)+ 假正例(FP)= 正样本的数量。假负例(FN)+ 真负例(TN)= 负样本的数量。

3.整体来看,真正例(TP)+ 假正例(FP)+ 假负例(FN)+ 真负例(TN) = 所有样本数量

如何确定正样本和负样本?

一般来我们规定样本少的为正样本,或我们更关注的为正样本。例如垃圾邮件检测中的垃圾邮件,癌症筛查中的癌症患者。

二、评估指标(Evaluation metrics)

从混淆矩阵中可以得到更高级的分类指标,不同的指标在不同场景中发挥作用。

1.正确率(accuracy)

正确率的定义:

 简单来说就是所有预测对的占所预测的数量

2.精准率(precision)

精准率的定义如下:

即正确预测为正的数量占所有预测为正的数量,又称查准率。在垃圾邮件或垃圾短信识别中比较看重

3.召回率(recall)

召回率的定义如下:

即正确预测为正的数量占所有为正的数量,又称查全率,可以理解为宁可错杀一百也不放过一个,在癌症排查,或者流行病筛查中比较看重

4.调和平均值(F1)

F1定义为精确率预召回率的调和平均值:

 三、ROC、AUC与P-R曲线

1.ROC曲线

使用图形来描述二分类系统的性能表现。图形的纵轴为正正例率(TPR--True Positive Rate),横轴为家正例率(FPR--False Positive Rate)。其中,真正例率与加正例率定义为:

 

 ROC曲线通过真正例率(TPR)与假正例率(FPR)两项指标,可以用来评估分类模型的性能。真正例率与假正例率可以通过移动分类模型的阈值进行计算。随着阈值的改变。真正例率与假负例率也会随之发生改变,进而就可以在ROC曲线坐标上形成多个点

随着阈值的降低,TPR与FPR都会增大,重要的是,看谁增长的更快,如果TPR增长的更快,则曲线越想上凸,模型的分类效果越好。

2.AUC

AUC(Area Under the Curve)是指ROC曲线下的面积,在比较多个分类模型效果时,会比ROC曲线更加直观。

3.P-R曲线

模型在不同的阈值下,会对应不同的精准率与召回率,我们以横轴为召回率,纵轴为精准率,将这些点连成线就构成了P-R(Precision-recall)曲线。

P-R曲线上的点体现为不同阈值下,精准率与召回率的对应关系

关于P-R曲线,说明如下

(1)精准率与召回率无法同时增大,一个增大时,另一个可能就会降低

(2)随着召回率的增加,精准率一定会呈现下降的趋势

(3)当对精准率或召回率具有定量要求时,P-R曲线就会非常有用

以上

学习在于行动,总结和坚持,共勉

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

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

相关文章

R统计学3 - 数据分析入门问题41-60

往期R统计学文章: R统计学1 - 基础操作入门问题1-20 R统计学2 - 数据分析入门问题21-40 41. R 语言如何做双坐标图? # 创建模拟数据 year <- 2014:2024 gdp <- data.frame(year, GDP = sort(rnorm(11, 1000, 100))) ur <- data.frame(year, UR = rnorm(11, 5, 1…

计算机网络(7)----应用层

目录 一.应用层的基本概念 1.应用层的基本概述 2.网络应用模型 &#xff08;1&#xff09;客户/服务器模型 &#xff08;2&#xff09;P2P模型 二.应用程序相关 1.DNS系统 &#xff08;1&#xff09;域名与域名服务器 &#xff08;2&#xff09;域名解析过程&#xff…

2024 第一届VCTF 纳新赛 Web方向 题解WP

hackjs 题目描述&#xff1a;A baby oldjs, just warm up. 附件给源码 const express require(express) const fs require(fs) var bodyParser require(body-parser); const app express() app.use(bodyParser.urlencoded({extended: true })); app.use(bodyParser.json…

CI/CD实战-git工具使用 1

版本控制系统 本地版本控制系统 集中化的版本控制系统 分布式版本控制系统 git官网文档&#xff1a;https://git-scm.com/book/zh/v2 Git 有三种状态&#xff1a;已提交&#xff08;committed&#xff09;、已修改&#xff08;modified&#xff09; 和 已暂存&#xff08;sta…

嵌入式硬件设计(一)|利用 NodeMCU-ESP8266 开发板和继电器结合APP“点灯•blinker”制作Wi-Fi智能开关(附有关硬件详细资料)

概述 本文主要讲述利用 NodeMCU-ESP8266 开发板和继电器通过手机 APP “ 点灯 • Blinker ” 制作一款能够由手机控制的WiFi 智能开关&#xff0c;从而实现智能物联。NodeMCU 是基于 Lua 的开源固件&#xff0c;ESP8266-NodeMCU是一个开源硬件开发板&#xff0c;支持WiFi功能&a…

OpenCV4.9.0开源计算机视觉库在 Linux 中安装

返回目录&#xff1a;OpenCV系列文章目录&#xff08;持续更新中......&#xff09; 上一篇&#xff1a;OpenCV 环境变量参考 下一篇&#xff1a;将OpenCV与gcc和CMake结合使用 引言&#xff1a; OpenCV是一个开源的计算机视觉库&#xff0c;由英特尔公司所赞助。它是一个跨…

深度学习-基于机器学习的情绪分析研究

概要 互联网技术的迅速发展使得社交平台逐渐成为热点事件中社会情感的枢纽。社会热点事件的舆论监管的其中一个重要环节就是能够准确分析民众的社会情绪。本文旨在探索可以基于文本大数据彻底分析民众对热点事件的社会情绪的模型和方法。先是从社交平台上借助文本大数据、对数据…

(一)Neo4j下载安装以及初次使用

&#xff08;一&#xff09;下载 官网地址&#xff1a;Neo4j Graph Database & AnamConnect data as its stored with Neo4j. Perform powerful, complex queries at scale and speed with our graph data platform.https://neo4j.com/ &#xff08;二&#xff09;安装并配…

ideaSSM失物招领管理系统网页模式开发mysql数据库web结构java编程计算机网页源码maven项目

一、源码特点 idea ssm 失物招领管理系统是一套完善的完整信息管理系统&#xff0c;结合SSM框架完成本系统SpringMVC spring mybatis &#xff0c;对理解JSP java编程开发语言有帮助系统采用SSM框架&#xff08;MVC模式开发&#xff09;&#xff0c;系统具有完整的源代码和数…

YOLOv8训练好模型后,追加轮数继续训练、或者提前终止训练,缩减训练轮数

一、前言 而且此教程适用的情况是你已经训练好了此模型&#xff0c;想继续追加一些轮数。比如训练进度是120/120&#xff0c;已经完成了&#xff0c;继续追加10轮&#xff0c;或者你原先定的是200轮&#xff0c;希望缩减到150轮&#xff0c;可以使用我说的这个方法。为什么缩减…

深度学习-2.7 机器学习目标与模型评估方法

文章目录 深度学习目标与模型评估方法1. 深度学习目标与模型评估方法2. 手动实现训练集和测试集切分3. Dataset和DataLoader基本使用方法与数据集切分函数1.Dataset和DataLoader的基本使用方法2.建模及评估过程 4. 实用函数补充 深度学习目标与模型评估方法 1. 深度学习目标与…

LeetCode 7 / 100

哈希表、双指针 哈希表两数之和字母异位词分组最长连续序列 双指针移动零盛最多水的容器三数之和接雨水 LeetCode 1.两数之和 LeetCode 49. 字母异位词分组 LeetCode 128. 最长连续序列 LeetCode [283. 移动零](https://leetcode.cn/problems/move-zeroes/?envTypestudy-plan-…

Spring Cloud Alibaba微服务从入门到进阶(五)(负载均衡-Ribbon)

负载均衡有两种形式&#xff0c;服务器端负载均衡/客户端负载均衡 1、服务器端负载均衡 因为Nginx是部署在服务器端的&#xff0c;所以用Nginx实现的负载均衡被称为服务器端负载均衡 2、客户端负载均衡 手写一个客户端侧负载均衡器 使用Ribbon实现负载均衡 Ribbon是Netflix…

sparksession对象简介

什么是sparksession对象 spark2.0之后&#xff0c;sparksession对象是spark编码的统一入口对象&#xff0c;通常我们在rdd编程时&#xff0c;需要SparkContext对象作为RDD编程入口&#xff0c;但sparksession对象既可以作为RDD编程对象入口&#xff0c;在sparkcore编程中可以通…

牛客网-SQL大厂面试题-2.平均播放进度大于60%的视频类别

题目&#xff1a;平均播放进度大于60%的视频类别 DROP TABLE IF EXISTS tb_user_video_log, tb_video_info; CREATE TABLE tb_user_video_log (id INT PRIMARY KEY AUTO_INCREMENT COMMENT 自增ID,uid INT NOT NULL COMMENT 用户ID,video_id INT NOT NULL COMMENT 视频ID,start…

macbook删除软件只需几次点击即可彻底完成?macbook删除软件没有叉 苹果笔记本MacBook电脑怎么卸载软件? cleanmymac x怎么卸载

在MacBook的使用过程中&#xff0c;软件安装和卸载是我们经常需要进行的操作。然而&#xff0c;不少用户在尝试删除不再需要的软件时&#xff0c;常常发现这个过程既复杂又耗时。尽管MacOS提供了一些基本的macbook删除软件方法&#xff0c;但很多时候这些方法并不能彻底卸载软件…

Learn OpenGL 15 面剔除

面剔除 尝试在脑子中想象一个3D立方体&#xff0c;数数你从任意方向最多能同时看到几个面。如果你的想象力不是过于丰富了&#xff0c;你应该能得出最大的面数是3。你可以从任意位置和任意方向看向这个球体&#xff0c;但你永远不能看到3个以上的面。所以我们为什么要浪费时间…

html编辑器

HTML 编辑器推荐 html可以使用记事本编辑 但是更建议使用专业的 HTML 编辑器来编辑 HTML&#xff0c;我在这里给大家推荐几款常用的编辑器&#xff1a; VS Code&#xff1a;https://code.visualstudio.com/WebStorm: https://www.jetbrains.com/webstorm/Notepad: https://no…

基于Matlab的车牌识别算法,Matlab实现

博主简介&#xff1a; 专注、专一于Matlab图像处理学习、交流&#xff0c;matlab图像代码代做/项目合作可以联系&#xff08;QQ:3249726188&#xff09; 个人主页&#xff1a;Matlab_ImagePro-CSDN博客 原则&#xff1a;代码均由本人编写完成&#xff0c;非中介&#xff0c;提供…

用云服务器构建gpt和stable-diffusion大模型

用云服务器构建gpt和stable-diffusion大模型 一、前置知识二、用云端属于自己的聊天chatGLM3step1、项目配置step2、环境配置1、前置知识2、环境配置流程 step3、创建镜像1、前置知识2、创建镜像流程 step4、通过 Gradio 创建ChatGLM交互界面1、前置知识2、创建ChatGLM交互界面…