分类评价指标

news2025/1/12 13:36:17

不均衡数据

很多时候,不同类别的分类代价并不相等,这就是非均衡分类问题。如果在两个类别中,一个类别的出现次数比另一个多很多,那么错误类型将发挥重要作用。例如。我们一共有100个病人,其中99人是健康的(阴性、反类),1人是患癌症的(阳性、正类),那么这种数据集就是不平衡数据集(imbalanced dataset)或者具有不平衡类别的数据集(dataset with imbalanced classes)。在实际当中,不平衡数据才是常态。在这个数据集中,我们即使预测得到99%的分类精度,也不代表我们模型的泛化性能就好。有一种可能·就是,我们把99个健康的预测正确了,而1个患病的没有预测正确。

混淆矩阵

 

真正例(TP):true positive,将正类中正确分类的样本。

真反例(TN):true negative,将反类中正确分类的样本。

假正例(FP):false positive,反类预测为正类的样本。

假反例(FN):false negative,正类预测为反类的样本。

Accuracy

模型的精度,即模型预测正确的个数/样本的总个数

准确率 

正确率,阳性预测值,在模型预测为正类的样本中,真正的正样本所占的比例

 

召回率

度量的是正类样本中有多少被预测为正类

Recall越高,说明有更多的正类样本被模型预测正确,模型的效果越好。

f-分数

将准确率和召回率进行汇总的一种方法是f-分数(f-score)f-度量(f-measure),它是准确率与召回率的调和平均

 由于同时考虑了准确率和召回率,所以它对于不平衡的二分类数据集来说是一种比精度更好的度量。

ROC曲线

TPR是学习器分类正确的正实例占所有样本正实例的比例

 

FPR是指学习器分类正确占所有样本反例的比例

 ROC曲线x轴是TPR,表示的是正确率,y轴是FPR,表示的是假阳。

from sklearn.svm import SVC
from sklearn.metrics import roc_curve
from sklearn.datasets import make_blobs
from sklearn. model_selection import train_test_split
import matplotlib.pyplot as plt

# make_blobs函数,生成一个二分类的数据不平衡数据集
X, y = make_blobs(n_samples=(4000, 500), cluster_std=[7, 2], random_state=0)

X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)

clf = SVC(gamma=0.05).fit(X_train, y_train)

fpr, tpr, thresholds = roc_curve(y_test, clf.decision_function(X_test))

plt.plot(fpr, tpr, label='ROC')

plt.xlabel('FPR')
plt.ylabel('TPR')
plt.show()

from sklearn.svm import SVC
from sklearn.metrics import roc_curve,roc_auc_score
from sklearn.datasets import make_blobs
from sklearn. model_selection import train_test_split
import matplotlib.pyplot as plt

# make_blobs函数,生成一个二分类的数据不平衡数据集
X, y = make_blobs(n_samples=(4000, 500), cluster_std=[7, 2], random_state=0)

X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=0)

clf = SVC(gamma=0.05).fit(X_train, y_train)

# auc = roc_auc_score(y_test,clf.predict_proba(X_test)[:,1])
auc = roc_auc_score(y_test,clf.decision_function(X_test))
fpr,tpr, thresholds = roc_curve(y_test,clf.decision_function(X_test))
plt.plot(fpr,tpr,color='darkorange',label='ROC curve (area = %0.2f)' % auc)
plt.plot([0, 1], [0, 1], color='navy', lw=2, linestyle='--')
plt.xlim([0.0, 1.0])
plt.ylim([0.0, 1.05])
plt.xlabel('False Positive Rate')
plt.ylabel('True Positive Rate')
plt.title('Receiver operating characteristic example')
plt.legend(loc="lower right")
plt.savefig('suhan.jpg',dpi=800)
plt.show()

 

 

参考文献:

5分钟带你学懂ROC曲线_最强理发师托尼的博客-CSDN博客_roc曲线

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

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

相关文章

『.Net』在C#/.Net中将Json压缩成一行的几种方式

📣读完这篇文章里你能收获到 在.Net Core中使用多种方式将Json压缩成一行主要介绍两种实现方案,Newtonsoft.Json和内置的System.Text.Json 文章目录一、Newtonsoft.Json二、System.Text.Json一、Newtonsoft.Json 将 Formatting 参数设为 Formatting.No…

世界杯杂谈之有趣的数据纪录

目录 (一)前言 (二)正文 1. 关于出场 (1)出场次数 (2)出场时间最长球员 (3)连续出场决赛场次最多 (4)世界杯出场时间最短的人 …

在Mac上优雅的使用ssh和sftp (像win上的xshell和xftp一样)

怎样在Mac上SSH和FTP?完美替代XShell是哪个软件?item2吗?Royal TSX! 没有比它更好_哔哩哔哩_bilibili 下载Royal TSX Royal TSX https://www.royalapps.com/ts/mac/features 安装插件 创建document 在document里面添加ssh和sftp 点击左下角加号,依次选这两个,因为一样,所…

使用Jenkins扩展钉钉消息通知

Jenkins借助钉钉插件,实现当构建失败时,自动触发钉钉预警。虽然插件允许自定义消息主体,支持使用 Jenkins环境变量,但是局限性依旧很大。当接收到钉钉通知后,若想进一步查看报错具体原因,仍完全依赖邮件通知…

LWIP——无操作系统移植

目录 移植说明 LwIP前期准备 以太网DMA描述符 LwIP移植流程 添加网卡驱动程序 添加LwIP源文件 移植头文件 网卡驱动编写 移植总结 移植说明 LwIP的移植可以分为两大类:第一类是只移植内核核心,此时用户应用程序编写只能基于RaW/CallBack API进行…

mybatisplus 集成druid连接池源码分析

mybatisplus 集成druid连接池源码分析:从spring的源码过渡到druid的相关jar包,里面是druid相关的类,下面我们开始分析: 1、取数据库连接的地方入口:public abstract class DataSourceUtils 为spring-jdbc包里面的过渡…

深度学习 Day21——利用RNN实现心脏病预测

深度学习 Day21——利用RNN实现心脏病预测 文章目录深度学习 Day21——利用RNN实现心脏病预测一、前言二、我的环境三、什么是RNN四、前期工作1、设置GPU2、导入数据3、检查数据五、数据预处理1、划分数据集2、数据标准化六、构建RNN模型七、编译模型八、训练模型九、模型评估十…

网站TDK三大标签SEO优化

网站TDK三大标签SEO优化 SEO(Search Engine Optimization)汉译为搜索引擎优化,是一种利用搜索引擎的规则提高网站在有关搜索引擎内自然排名的方式 SEO的目的是对网站进行深度的优化,从而帮助网站获取免费的流量,进而在搜索引擎上提升网站的排…

day39 CSRFSSRF协议玩法内网探针漏洞利用

前言: #知识点: 1、CSRF-原理&危害&探针&利用等 2、SSRF-原理&危害&探针&利用等 3、CSRF&SSRF-黑盒下漏洞探针点 详细点: CSRF 全称:Cross-site request forgery,即,跨站…

java计算机毕业设计ssm兴发农家乐服务管理系统n159q(附源码、数据库)

java计算机毕业设计ssm兴发农家乐服务管理系统n159q(附源码、数据库) 项目运行 环境配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&…

RK3568平台开发系列讲解(系统优化篇)如何进行内存优化

🚀返回专栏总目录 文章目录 一、设备分级二、Bitmap 优化三、内存泄漏沉淀、分享、成长,让自己和他人都能有所收获!😄 📢内存优化,应该从哪里着手呢?我通常会从设备分级、Bitmap 优化和内存泄漏这三个方面入手。 一、设备分级 内存优化首先需要根据设备环境来综合考虑…

硬件基础

目录 一、Cisco Packet Tracer 8.1.1安装 二、汉化 一、Cisco Packet Tracer 8.1.1安装 官方汉化包的Ciscohttps://www.netacad.com/portal/resources/browse/341e11c1-d03f-4433-9413-29b9d207e7eb 直接在官网下载但是官网有时候比较慢 思科数据包跟踪器 - 网络仿真工具 (n…

北斗/GNSS高精度数据处理暨GAMIT/GLOBK v10.75软件

随着GNSS导航定位技术在不同领域的广泛应用和技术更新的飞速发展,在大型工程项目的设计、施工、运行和管理各个阶段对工程测量提出了更高的要求,许多测绘、勘测、规划、市政、交通、铁道、水利水电、建筑、矿山、道桥、国土资源、气象、地震等行业部门在…

【实时数仓】介绍、需求分析、统计架构分析和ods层日志行为数据采集

文章目录一 电商实时数仓介绍1 普通实时计算与实时2 实时电商数仓分层二 实时数仓需求分析1 离线计算与实时计算的比较2 应数场景(1)日常统计报表或分析图中需要包含当日部分(2)实时数据大屏监控(3)数据预警…

不同系列的 ESP 芯片的 GPIO 默认初始状态

ESP 系列芯片的 GPIO 上电状态的含义: wpu: weak pull-up(为弱上拉模式)wpd: weak pull-down(为弱下拉模式)ie: input enable(输入使能模式)oe: output enable(输出使能模式&#x…

【Docker】第三章 镜像管理

3.1 镜像是什么 简单说,Docker镜像是一个不包含Linux内核而又精简的Linux操作系统。 3.2 镜像从哪里来 Docker Hub 是由Docker公司负责维护的公共注册中心,包含大量的容器镜像,Docker工具默认从这个公共镜像库下载镜像。 https://hub.docker.…

碳中和科普

什么叫碳达峰和碳中和? 我国在2020年第75届联合国大会上宣布,二氧化碳排放量努力争取于2030年前达到峰值,2060年前实现碳中和。 碳达峰和碳中和中的碳指的都是以二氧化碳为代表的温室气体 碳达峰 碳达峰指的是碳排放达到峰值后进入平稳下降…

洛谷入门赛 202212F 宇宙密码 ——深搜

题目描述 经历十九年的探索,人们终于找到了宇宙中的那份瑰宝。 这份瑰宝被装在一个密码箱里,按照情报,密码应为一串长度为 nn 的数字 aa。 人们满怀希望地输入了密码,但是密码箱没有任何反应。 这时人们意识到,在十…

迈向高算力、跨域融合新拐点,智能座舱各路玩家如何卡位?

当前,中国车联网发展进入平稳增长周期,5G、V2X市场迎来拐点。 借助数字化转型驱动,互联化、数字化、个性化的智能座舱,以及与之强关联的座舱域控制器方案正实现快速发展和落地。 高工智能汽车研究院监测数据显示,202…

[附源码]Python计算机毕业设计SSM基于人脸识别和测温的宿舍管理系统(程序+LW)

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…