2023年泰迪杯数据挖掘挑战赛B题完整数据分析与预测(5.针对完整数据的组合预测-机器学习+深度学习)

news2024/10/5 11:21:30

背景

2023年泰迪杯完整数据最新出炉,博主根据最新完整数据对原来的预测方案进行了调整,采用机器学习+深度学习的组合预测来实现最终预测

全部数据已经出炉,可以看出训练样本和预测样本都增加了十倍,这对于数据的处理复杂程度也有所增加。其实本道题最难的地方就是数据预处理,跑模型反而是最简单的。

1.先跑机器学习模型(不考虑时间序列)

在这里插入图片描述
检查变量之间相关性,无明显线性相关特征,因此考虑非线性回归模型来解决,

在这里插入图片描述

效果较好的主要还是传统的树模型,尤其在随机森林上有较好表现。下面是随机森林回归得到的重要特征排序。
在这里插入图片描述

利用效果较好的机器学习模型进行预测,并且保存预测结果作为预测基准结果。
在这里插入图片描述

2.深度学习-LSTM(考虑时间序列)

  • 数据预处理流程,按照预测数据集样本数将训练数据集分割成对应时间序列数据集
  • 循环训练模型进行预测
  • 组合预测,加权得到最终预测结果

按照商品code:20002按天维度预测的demo

下面是lstm模型训练随着训练轮次的损失函数收敛情况。

在这里插入图片描述

下面是在验证集上的拟合效果图:可以看出按照天的预测效果一般,但也进行了很好的拟合。
在这里插入图片描述
在这里插入图片描述
进一步开了按照周的时间粒度进行预测。

在这里插入图片描述
模型训练损失函数下降过程。
在这里插入图片描述
根据验证集对比效果可以看出,按照周的时间粒度预测,模型的泛化能力有所增强。这是因为按照周的时间预测可以保证大部分数据不会缺失,从而保证模型预测的合理性。
在这里插入图片描述
可以看出该商品在周的时间粒度上能够取得更好的预测效果。

最终将该商品未来三个月的商品需求预测出来,并且进一步建立组合预测模型尽心给处理,组合预测最简单的一种方式就是线性加权,以机器学习预测结果作为基准,考虑时间序列的深度学习进行加权,得到最终预测结果。

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

3.源码分享

2023年泰迪杯B全部数据对应的源码已经完成,可以私信博主获取,上传到CSDN上需要审核,太难了,估计每个两三天不给通过

2023年泰迪杯b题前期非全部数据的源码

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

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

相关文章

linux驱动开发 - 04_Linux 设备树学习 - DTS语法

文章目录Linux 设备树学习 - DTS语法1 什么是设备树?2 DTS、DTB和DTC3 DTS 语法3.1 dtsi 头文件3.2 设备节点3.3 标准属性1、compatible 属性2、model 属性3、status 属性4、#address-cells 和#size-cells 属性5、reg 属性6、ranges 属性7、name 属性8、device_type…

FreeRTOS 任务切换

文章目录一、PendSV 异常二、FreeRTOS 任务切换场合1. 执行系统调用 taskYIELD()2. 系统滴答定时器(SysTick)中断 SysTick_Handler三、PendSV 中断服务函数 PendSV_Handler()四、查找下一个要运行的任务 vTaskSwitchContext()五、FreeRTOS 时间片调度六、时间片调度实验RTOS 系…

ECF机制:信号 (Signal)

💭 写在前面:ECF (异常控制流) 机制是存在于系统的所有层级中的,所以这一块的知识我们需要系统地去学习。前几章我们探讨过了异常 (Exceptions),由硬件触发,在内核代码中处理。讲解了进程的上下文切换 (Process Contex…

Shiro整合SpringBoot项目实战

✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…

阿里入局,通义千问备受期待

目录官宣内测体验内容鸟鸟分鸟后言继百度文心一言发布三周之后,4月7日阿里通义大模型终于推出通义千问,阿里正式加入ChatGPT战局。下午市场一片大热,对于深耕NLP多年的阿里,大家有足够的期待。 官宣内测 “你好,我叫通…

【SpringBoot】springboot启动热部署

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~ 个人主页:.29.的博客 学习社区:进去逛一逛~ SpringBoot——手工启动热部署一、pom.xml导入…

Kotlin 是后端开发的未来

Kotlin 是后端开发的未来 严格类型、命名参数、多范式语言 您今天遇到的每个后端开发人员都会说他们使用 JavaScript、Python、PHP 或 Ruby 编写代码。近年来,您会遇到一小部分人转而使用 Kotlin 作为他们创建 Web 服务器的语言选择。由于我在学习Ktor,所…

深度学习12. CNN经典网络 VGG16

深度学习12. CNN经典网络 VGG16一、简介1. VGG 来源2. VGG分类3. 不同模型的参数数量4. 3x3卷积核的好处5. 关于学习率调度6. 批归一化二、VGG16层分析1. 层划分2. 参数展开过程图解3. 参数传递示例4. VGG 16各层参数数量三、代码分析1. VGG16模型定义2. 训练3. 测试一、简介 …

Html5版音乐游戏制作及分享(H5音乐游戏)

这里实现了Html5版的音乐游戏的核心玩法。 游戏的制作借鉴了,很多经典的音乐游戏玩法,通过简单的代码将音乐的节奏与操作相结合。 可以通过手机进行游戏,准确点击下落时的目标,进行得分。 点击试玩 游戏内的下落数据是通过手打记…

【Pytorch】使用pytorch进行张量计算、自动求导和神经网络构建

本文参加新星计划人工智能(Pytorch)赛道:https://bbs.csdn.net/topics/613989052 这是目录张量计算张量的属性和方法,如何使用它们来获取或修改张量的信息和形状张量之间的运算和广播机制,如何使用torch.add(), torch.sub(), torch.mul(), to…

【Redis7】Redis7 持久化(重点:RDB与AOF重写机制)

【大家好,我是爱干饭的猿,本文重点介绍Redis7 持久化(重点:RDB与AOF重写机制)。 后续会继续分享Redis7和其他重要知识点总结,如果喜欢这篇文章,点个赞👍,关注一下吧】 …

Java项目实战笔记(瑞吉外卖)-4

公共字段自动填充功能 问题分析 前面已经完成了后台系统的员工管理功能开发,在新增员工时需要设置创建时间、创建人、修改时间、修改人等字段,在编辑员工时需要设置修改时间和修改人等字段。这些字段属于公共字段,也就是很多表中都有这些字段…

前端搭建小人逃脱游戏(内附源码)

The sand accumulates to form a pagoda✨ 写在前面✨ 功能介绍✨ 页面搭建✨ 样式设置✨ 逻辑部分✨ 写在前面 上周我们实通过前端基础实现了打字通,当然很多伙伴再评论区提出了想法,后续我们会考虑实现的,今天还是继续按照我们原定的节奏来…

对决:Kubernetes vs Docker Swarm - 谁才是最优秀的容器编排方案?

✅创作者:陈书予 🎉个人主页:陈书予的个人主页 🍁陈书予的个人社区,欢迎你的加入: 陈书予的社区 文章目录一、介绍1. 什么是Kubernetes2. 什么是Docker Swarm3. 为什么需要容器编排?二、 架构比较1. Kubern…

Spring框架——IOC、DI

本篇博客主要介绍Java中的IOC和DI,以及在String框架中的应用。首先,我们将对IOC和DI进行概念介绍,然后讲解它们的关系及在String框架中的应用,最后通过一个实例来展示它们的具体用法。 IOC和DI的概念介绍 IOC(Invers…

热更新方案 HybridCLR 学习教程 |(一)原理及准备工作

文章目录 热更新方案 HybridCLR 学习教程(一)HybridCLR原理及准备工作前言一、学前准备1.1 资源下载1.2 文档参考学习二、关于HybridCLR2.1 HybridCLR特性:2.2 HybridCLR工作原理2.3 与其他流行的c#热更新方案的区别2.4 兼容性2.5 原理流程介绍三、快速上手(重要)3.1 体验…

Linux下实现的 HTTP 服务器

项目功能:(1)能接收客户端的GET请求;(2)能够解析客户端的请求报文,根据客户端要求找到相应的资源;(2)能够回复http应答报文;(3&#x…

MySQL实验四:数据更新

MySQL实验四:数据更新 目录MySQL实验四:数据更新导读表结构sql建表语句模型图1、 SQL更新:将所有学生的年龄增加1岁代码2、SQL更新:修改“高等数学”课程倒数三名成绩,在原来分数上减5分代码解析3、SQl更新&#xff1a…

docker详解

一、docker相关命令 1、docker进程相关命令 启动docker服务:systemctl start docker 停止docker服务:systemctl stop docker 重启docker服务:systemctl restart docker 查看docker服务状态:systemctl status docker 设置…

可变形卷积(Deformable Conv)原理解析与torch代码实现

1. 可变形卷积原理解析 1.1 普通卷积原理 传统的卷积操作是将特征图分成一个个与卷积核大小相同的部分,然后进行卷积操作,每部分在特征图上的位置都是固定的。 图1 普通卷积过程 图1所示为普通卷积在输入特征图上进行卷积计算的过程,卷积核…