训练集和测试集的分布一致性分析

规律一致性分析的实际作用
  在实际建模过程中,规律一致性分析是非常重要但又经常容易被忽视的一个环节。通过规律一致性分析,我们可以得出非常多的可用于后续指导后续建模的关键性意见。通常我们可以根据规律一致性分析得出以下基本结论:

(1).如果分布非常一致,则说明所有特征均取自同一整体,训练集和测试集规律拥有较高一致性,模型效果上限较高,建模过程中应该更加依靠特征工程方法和模型建模技巧提高最终预测效果;

(2).如果分布不太一致,则说明训练集和测试集规律不太一致,此时模型预测效果上限会受此影响而被限制,并且模型大概率容易过拟合,在实际建模过程中可以多考虑使用交叉验证等方式防止过拟合,并且需要注重除了通用特征工程和建模方法外的trick的使用;

4.规律一致性分析
  接下来,进行训练集和测试集的规律一致性分析。
  所谓规律一致性,指的是需要对训练集和测试集特征数据的分布进行简单比对,以“确定”两组数据是否诞生于同一个总体,即两组数据是否都遵循着背后总体的规律,即两组数据是否存在着规律一致性。
  我们知道,尽管机器学习并不强调样本-总体的概念,但在训练集上挖掘到的规律要在测试集上起到预测效果,就必须要求这两部分数据受到相同规律的影响。一般来说,对于标签未知的测试集,我们可以通过特征的分布规律来判断两组数据是否取自同一总体。

单变量分析
  首先我们先进行简单的单变量分布规律的对比。由于数据集中四个变量都是离散型变量,因此其分布规律我们可以通过相对占比分布(某种意义上来说也就是概率分布)来进行比较。
  例如首先我们查看首次激活月份的相对占比分布可以通过如下代码实现:
  在这里插入图片描述
能够发现,两组数据的单变量分布基本一致。

多变量联合分布
  接下来,我们进一步查看联合变量分布。所谓联合概率分布,指的是将离散变量两两组合,然后查看这个新变量的相对占比分布。例如特征1有0/1两个取值水平,特征2有A/B两个取值水平,则联合分布中就将存在0A、0B、1A、1B四种不同取值水平,然后进一步查看这四种不同取值水平出现的分布情况。
  首先我们可以创建如下函数以实现两个变量“联合”的目的:

n = len(features)
for i in range(n-1):for j in range(i+1, n):cols = [features[i], features[j]]print(cols)train_dis = combine_feature(train[cols]).value_counts().sort_index()/train_counttest_dis = combine_feature(test[cols]).value_counts().sort_index()/test_countindex_dis = pd.Series(train_dis.index.tolist() + test_dis.index.tolist()).drop_duplicates().sort_values()(index_dis.map(train_dis).fillna(0)).plot()(index_dis.map(train_dis).fillna(0)).plot()plt.legend(['train','test'])plt.xlabel('&'.join(cols))plt.ylabel('ratio')plt.show()

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

ai写作神器app有哪些?好用的智能写作APP推荐

ai写作神器app有哪些?AI写作神器app在现代写作领域正迅速崭露头角,它们不仅极大提升了创作效率,而且通过集成前沿的人工智能技术,为创作者们提供了前所未有的便利。这些app能够智能分析写作需求,快速生成高质量的内容&…

十五、【源码】动态Sql

源码地址:https://github.com/mybatis/mybatis-3/ 仓库地址:https://gitcode.net/qq_42665745/mybatis/-/tree/15-dynamic-sql 动态Sql 解析动态Sql分为两部分 1.解析XML中Sql的时候,要将其解析成不同的SqlNode节点,但是不进行…

Jenkins的jdk和maven配置

目录 传送门前言一、概念二、JDK的配置三、Maven配置四、环境变量配置五、坑 传送门 SpringMVC的源码解析(精品) Spring6的源码解析(精品) SpringBoot3框架(精品) MyBatis框架(精品&#xff09…

「51媒体」媒体发布会如何做媒体邀约

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 媒体发布会的媒体邀约是一个需要精心策划和准备的过程。 策划与准备阶段: 明确目标:明确发布会的目标、核心议题、举办日期、时间和地点。 准备资料&#xff1a…

体验式营销+旅行文化:品牌海外推广的创新之路

在全球化的时代背景下,体验式营销作为一种新兴的营销方式,以其独特的参与性、互动性和情感共鸣,成为品牌与消费者建立深层次联系的有效手段。而将体验式营销与旅行文化相结合,能够为海外消费者提供独特的品牌体验。本文Nox聚星将和…

GD32单片机开发--点亮第一盏灯

知不足而奋进 望远山而前行 目录 系列文章目录 文章目录 前言 目标 内容 开发流程 需求分析 项目新建 代码编写 GPIO初始化 完整代码 程序编译 程序烧录 烧录扩展(熟悉) 官方烧录器烧录(熟悉) 总结 前言 在本次项…

C#操作MySQL从入门到精通(11)——对查询数据使用正则表达式过滤

前言 对于之前提到的使用匹配、比较、通配符等过滤方式能解决大部分的项目问题,但是有时候也会遇到一些比较复杂的过滤需求,这时候就需要正则表达式来实现了,正则表达式使用regexp这个关键字来实现。 本次测试的数据库表的内容如下: 1、基本字符匹配(包含某些字符) 匹…

嵌入式之存储基本知识

系列文章目录 嵌入式之存储基本知识 嵌入式之存储基本知识 系列文章目录一、RAM与ROM二、DRAM和SRAM三、SDRAM(DRAM的一种)四、DDR 一、RAM与ROM RAM(随机存取存储器)和ROM(只读存储器)是两种不同类型的计…

揭秘VVIC API:开启高效数据交互的密钥,你的项目就差这一步

VVIC API接口概述 VVIC API提供了对VVIC服务的数据访问和操作功能。通过此API,开发者可以集成VVIC服务到他们的应用程序中,实现数据同步、用户认证、资源管理等功能。 点击获取key和secret API端点示例 用户认证 方法:POSTURL:/…

Nvidia Jetson/Orin +FPGA+AI大算力边缘计算盒子:无人机自主飞行软件平台

案例简介 北京泛化智能科技有限公司(gi)所主导开发的 Generalized Autonomy Aviation System (GAAS) 是为无人机以及城市空中交通 (UAM, Urban Air Mobility) 所设计的开源无人机自主飞行框架。通过 SLAM、路径规划和 Global Optimization Graph 等功能…

【Linux】(三)—— 文件管理和软件安装

文件管理 Linux的文件管理是系统管理中的核心部分,它涉及到如何组织、访问、修改和保护文件及目录结构。 目录 文件管理基本概念常用命令查看和切换目录创建文件和目录删除文件和目录文件拷贝移动和重命名文件文件查看cat文件查看more查找文件查找文本 数据流和管道…

redsystems教程的基本使用之重置密码(忘记密码解决方法)

前言: 相信很多人都有疑惑,要是我不记得密码怎么办?如果你登录了,点击更改密码后,还是要你填写登录密码才能修改。为了解决这问题,博主通过了钻研成功搞出来了!!!&#…

DS:数与二叉树的相关概念

欢迎来到Harper.Lee的学习世界!博主主页传送门:Harper.Lee的博客主页想要一起进步的uu可以来后台找我哦! 一、树的概念及其结构 1.1 树的概念亲缘关系 树是一种非线性的数据结构,它是由n(n>0)个有限节点…

Marvelous Designer中一些棉质布料预设

Marvelous Designer中一些棉质布料预设的解释: Cotton_14_Wale_Corduroy:14条细鲸鱼纹的灯芯绒,适合制作温暖且有质感的服装。Cotton_40s_Chambray:40支精梳针织的府绸布,通常用于制作休闲衬衫。Cotton_40s_Poplin&am…

Face Forgery Detection by 3D Decomposition

文章目录 Face Forgery Detection by 3D Decomposition研究背景研究目标创新点方法提出问题研究过程技术贡献实验结果未来工作Face Forgery Detection by 3D Decomposition 会议:CVPR2021 作者: 研究背景 面部伪造引发关注传统面部伪造检测主要关注原始RGB图像

学Python,看一篇就够

学Python,看一篇就够 python基础注释变量标识符命名规则使用变量认识bugDebug工具打断点 数据类型输出转义字符输入输入语法输入的特点 转换数据类型pycharm交互运算符的分类赋值运算符复合赋值运算符比较运算符逻辑运算符拓展 条件语句单分支语法多分支语法拓展 if…

XFF注入【墨者靶场】

目录 XFF介绍 靶场练习 最近在复习XFF注入,这里使用墨者靶场来简单的练习一下该漏洞的利用方法 XFF介绍 X-Forwarded-For:简称XFF头,代表了HTTP的请求端真实的IP。 它被认为是客户端通过HTTP代理或者负载均衡器连接到web服务端获取源ip地…

植物大战僵尸杂交版2.0.88最新版安装包

游戏简介 游戏中独特的杂交植物更是为游戏增添了不少亮点。这些杂交植物不仅外观独特,而且拥有更强大的能力,能够帮助玩家更好地应对游戏中的挑战。玩家可以通过一定的条件和方式,解锁并培养这些杂交植物,从而不断提升自己的战斗…

打开C# 大门:Hallo, World!

C# 介绍 C#(C Sharp)是一种面向对象的编程语言,由微软公司开发。它是 .NET Framework 的一部分,用于构建 Windows 应用程序、Web 应用程序、移动应用程序等。C# 语言的设计目标是简单、现代化、易于学习和使用。在本文中&#xf…

量化交易:Miniqmt获取可转债数据和交易python代码

哈喽,大家好,我是木头左! 低风险资产除了国债外,还有可转债,兼容有高收益的股性和低风险的债性,号称“下有保底,上不封顶”。 🔍 可转债:金融市场的双面娇娃 可转债&am…