准确率,精确率,召回率,F1,AUC

news2024/9/22 19:28:26

以西瓜数据集为例,我们来详细解释一下什么是TP、TN、FP以及FN。

一、基础概念
TP:被模型预测为正类的正样本
TN:被模型预测为负类的负样本
FP:被模型预测为正类的负样本
FN:被模型预测为负类的正样本

二、通俗理解(以西瓜数据集为例)
以西瓜数据集为例,我们来通俗理解一下什么是TP、TN、FP、FN。

TP:被模型预测为好瓜的好瓜(是真正的好瓜,而且也被模型预测为好瓜)
TN:被模型预测为坏瓜的坏瓜(是真正的坏瓜,而且也被模型预测为坏瓜)
FP:被模型预测为好瓜的坏瓜(瓜是真正的坏瓜,但是被模型预测为了好瓜)
FN:被模型预测为坏瓜的好瓜(瓜是真正的好瓜,但是被模型预测为了坏瓜)
 

准确率
定义:对于给定的测试数据集,分类器正确分类的样本数与总样本数之比。
公式:

缺点:在正负样本不平衡的情况下,这个指标有很大的缺陷。

代码:

## accuracy
from sklearn.metrics import accuracy_score
y_pred = [0, 1, 0, 1]
y_true = [0, 1, 1, 1]
print('ACC:',accuracy_score(y_true, y_pred))
ACC: 0.75
 

精确率
定义:精确率是检索出相关文档数与检索出的文档总数的比率(正确分类的正例个数占分类为正例的实例个数的比例),衡量的是检索系统的查准率。
公式:
代码:
from sklearn import metrics
y_pred = [0, 1, 0, 0]
y_true = [0, 1, 1, 1]
print('Precision',metrics.precision_score(y_true, y_pred))
Precision 1.0
 

召回率
定义:召回率是指检索出的相关文档数和文档库中所有的相关文档数的比率(正确分类的正例个数占实际正例个数的比例),衡量的是检索系统的查全率。
公式:
代码:
from sklearn import metrics
y_pred = [0, 1, 0, 0]
y_true = [0, 1, 1, 1]
print('Recall',metrics.recall_score(y_true, y_pred))
Recall 0.3333333333333333
 

 F1
定义:F1分数(F1-score)是分类问题的一个衡量指标。它是精确率和召回率的调和平均数,最大为1,最小为0。
代码:
from sklearn import metrics
y_pred = [0, 1, 0, 0]
y_true = [0, 1, 1, 1]
print('F1-score:',metrics.f1_score(y_true, y_pred))
F1-score: 0.5
 

AUC
定义:AUC是一个模型评价指标,只能用于二分类模型的评价. AUC是Area under curve的首字母缩写。 Area under curve是什么呢,从字面理解,就是一条曲线下面区域的面积。
代码: 

import numpy as np
from sklearn.metrics import roc_auc_score
y_true = np.array([0, 0, 1, 1])
y_scores = np.array([0.1, 0.4, 0.35, 0.8])
print('AUC socre:',roc_auc_score(y_true, y_scores))
AUC socre: 0.75

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

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

相关文章

如何在 Linux 中查找文件所有者?

在 Linux 系统中,每个文件和目录都有一个所有者(owner)和一个所属组(group)。所有者通常是创建该文件或目录的用户,而所属组通常是文件或目录所属的组。在某些情况下,您可能需要查找特定文件或目…

前端学习--Ajax(5) Http

一、Http简介 1.1 通信 信息的传递和交换 通信三要素:主体(双方)、内容、方式 1.2 通信协议 通信双方通信遵守的规则 http--超文本传输协议:客户端与服务器之间进行网页内容传输时必须遵守的传输格式 1.3 HTTP 交互模型&a…

C++矩阵运算QT应用之Eigen库

前言 本文主要描述在c中应用Eigen进行矩阵(向量)的表示运算,以及Eigen库的下载和配置。 一. Eigen库介绍、下载及配置 Eigen是C中可以用来调用并进行矩阵计算的一个库,里面封装了一些类,需要的头文件和功能如下&…

Vue:Ajax跨域和axios简单使用

1、 第三方库方式, 基于 Promise 的 HTTP 库:axios (对 XMLHttpRequest进行的封装) 即: axios.get().then() 2、跨域访问 定义:在 a 页面中想获取 b 页面中的资源,如果 a 页面和 b 页面…

DevOps 与研发效能专家张乐:研发效能的升维思考与降维执行

在 4 月 20 日举行的《中国企业软件研发管理白皮书》发布会上,DevOps 与研发效能资深技术专家张乐老师做了一场名为《研发效能的升维思考和降维执行》的主题演讲,阐述了如何系统化思考研发效能的关键要素、互动结构及实施路径,并将其与落地执…

程序员应该具备哪些良好的编程习惯?

本文首发自「慕课网」,想了解更多IT干货内容,程序员圈内热闻,欢迎关注"慕课网"! 培养一个好的编程习惯,能让你整个职业生涯收益。 例如,做好注释,方便自己也方便别人读懂代码&#x…

hot100:数组——56、64

56. 合并区间 首先考虑只有两个区间的情况: 但是这6种情况可以合并成3种情况,就是上面的3种。首先先判断第一个区间的起始位置是否小于等于第二个区间的起始位置。如果不成立,则交换两个区间。 再考虑n个区间的情况,先将他们根…

QML中【预计符号】和【Unknown Component M300】的红色警告解决方法

问题描述: QML的项目中带中文,每次打开项目都在问题栏显示【预计符号】的红色警告,还有一种是【Unknown Component M300】的警告,代码能正常编译和运行。像我这样对代码追求优雅的强迫症患者看着很不爽,查了很多网上的…

深度强化学习——蒙特卡洛算法(6)

注:本章的内容作为补充插曲,大家可以选看,不过还是建议把最后一个使用蒙特卡洛近似求期望稍微看一下 蒙特卡洛是一大堆随机算法,通过随机样本来估算真实值 使用随机样本来近似Π 1、在[a,b]做随机均匀抽样,抽出n个样…

软件工程开发文档写作教程(02)—开发文档的分类

版权声明 本文原创作者:谷哥的小弟作者博客地址:http://blog.csdn.net/lfdfhl本文参考资料:电子工业出版社《软件文档写作教程》 马平,黄冬梅编著 开发文档分类概述 软件项目实施过程中依据功能和作用的不同可以把文档分为以下几…

通过Python的filestools库给图片添加全图水印

文章目录 前言一、filestools库简介二、安装filestools三、查看filestools版本四、图片添加全图水印1.引入库2.添加水印3.效果 五、参数调整对比1.水印颜色1.1通过名称设置颜色1.2通过RGB值设置颜色1.3通过十六进制设置颜色 2.水印字体的大小3.水印的透明度4.水印直接的间隔5.水…

图像工程课堂记录

文章目录 图像工程0. 介绍0.1 数字图像处理0.2 数字图像分析0.3 数字图像理解 1. 概述1.1 图像的概念1.2 图像的特点1.3 数字图像的概念1.3.1 模拟图像1.3.2 数字图像1.3.3 像素 1.4 数字图像的分类1.5 数字图像的应用领域1.6 图像工程1.7 数字图像技术研究内容1.7.1 图像获取1…

如何构建超现实元宇宙空间

元宇宙是运用数字技术构建的,由现实世界映射或超越现实世界,可与现实世界交互的住自世界,具备新型社会体系的数字生活空间。元宇宙通过扩展现实技术提供沉浸式体验,基于数字孪生技术生成现实世界的镜像,是区块链技术搭…

【数学建模】状态转移模型的理解与应用

文章目录 初识状态转移模型:人狼羊菜渡河问题状态转移模型的结论状态转移模型的应用:n人过桥问题 直接讲理论不太容易懂,所以我们通过一个例子来具体讲解一下这个模型 初识状态转移模型:人狼羊菜渡河问题 人狼羊菜问题应该是很经…

理解FPGA的基础知识——同步电路设计

同步电路设计将系统状态的变化与时钟信号同步,并通过这种理想化的方式降低电路设计难度。同步电路设计是 FPGA 设计的基础。 触发器 触发器(Flip Flop,FF)是一种只能存储1个二进制位(bit,比特)…

​如何实现一个工业级哈希表​

1、避免散列表碰撞攻击 在极端情况下,攻击者通过精心构造的数据,使得所有的数据都散列到同一个槽里,如果使用链表冲突解决方法,散列表就会退化为链表,查询时间复杂度就从 O(1) 退化为 O(n)。 可能因为查询操作消耗大量…

Qt 制作小程序登录系统(超详细)

在这里我使用的是 Qt4, 在 windows 平台上来实现的。 文章目录 前言一、基本部件的创建二、主界面的绘制:1. 设置各部件文本:2. 界面布局: 三、 信号处理机制四、Qt4 显示汉字:1. 出现乱码现象2. 解决方法 五、设置标题栏的小图标总结 前言 …

C++入门(中篇)

🔥🔥本章重内容 C入门 1. 函数重载C是怎么支持函数名重载的呢? 2.引用2.1引用特性2.2常引用2.3使用场景1. 做参数2. 做返回值 2.4引用和指针的区别 3.内联函数 1. 函数重载 函数重载:是函数的一种特殊情况,C允许在同…

安卓手机(微信小程序)抓蓝牙通信数据包

前言 因为公司需要......所以我就弄了一下,参考了很多别人的文章。 成果:它可以抓取微信小程序、安卓APP的蓝牙数据通信包。 开始 我是小米手机,所以我以我自己手机为例 通信过程操作 第一步 打开开发者选项,打开蓝牙调试日志和蓝牙数据包日志开关(如果两者只有其中…

电动汽车路径规划问题(Electric Vehicle-Routing Problem, EVRP)

今天给大家带来的是电动汽车路径规划问题(Electric Vehicle-Routing Problem, EVRP)的介绍,按照惯例先上目录,其中第三部分的主要内容出自文献“The Electric Vehicle-Routing Problem with Time Windows and Recharging Stations”。 目录 问题简介 …