多特征变量序列预测(三)——CNN-Transformer风速预测模型
创作时间:
作者:
@小白创作中心
多特征变量序列预测(三)——CNN-Transformer风速预测模型
引用
CSDN
1.
https://blog.csdn.net/2402_85668383/article/details/143192838
本文将介绍如何使用CNN-Transformer模型进行多特征变量序列预测,以风速预测为例。文章详细描述了数据集的制作与预处理过程,以及CNN-Transformer模型的定义和训练过程。文章还提供了模型评估和可视化结果,并附有代码和数据集。
前言
本文基于前期介绍的风速数据(文末附数据集),介绍一种多特征变量序列预测模型CNN-Transformer,以提高时间序列数据的预测性能。该数据集一共有天气、温度、湿度、气压、风速等九个变量,通过滑动窗口制作数据集,利用多变量来预测风速。
LSTF(Long Sequence Time-Series Forecasting)问题是指在时间序列预测中需要处理长序列的情况。在实际应用中,时间序列可能会包含非常大量的数据点,在这种情况下,传统的时间序列预测模型可能会遇到一些挑战,因为处理长序列时会出现一些问题,例如:
- 长期依赖性: 随着时间序列数据的增长,模型需要能够捕捉长期的依赖关系和趋势。
- 计算复杂性: 针对长序列进行训练和预测通常需要更多的计算资源和时间。
- 内存消耗: 长序列通常需要大量的内存来存储数据和模型参数,这可能会导致内存耗尽或者性能下降的问题。
在处理LSTF问题时,选择合适的窗口大小(window size)是非常关键的。选择合适的窗口大小可以帮助模型更好地捕捉时间序列中的模式和特征,为了提取序列中更长的依赖建模,本文把窗口大小提升到96,运用CNN-Transformer模型来充分提取序列中的特征信息。
风速数据集的详细介绍可以参考下文:
风速预测(一)数据集介绍和预处理_垂直风速气象数据源-CSDN博客
1 多特征变量数据集制作与预处理
1.1 导入数据
1.2 数据集制作与预处理
先划分数据集,按照9:1划分训练集和测试集
制作数据集
2 基于Pytorch的CNN-Transformer 预测模型
2.1 定义CNN-Transformer预测模型
注意:输入风速数据形状为 [256, 96, 8], batch_size=256,96代表序列长度(滑动窗口取值), 维度8维代表挑选的8个变量。
2.2 设置参数,训练模型
50个epoch,MSE 为0.0008293,多变量特征CNN-Transformer预测效果良好,适当调整模型参数,还可以进一步提高模型预测表现。
注意调整参数:
- 可以适当增加CNN层数和隐藏层的维度,微调学习率;
- 调整Transformer编码器层数和维度数,增加更多的 epoch (注意防止过拟合)
- 可以改变滑动窗口长度(设置合适的窗口长度)
3 模型评估与可视化
3.1 结果可视化
3.2 模型评估
4 代码、数据整理如下:
热门推荐
窗帘清洁保养全攻略:让窗帘焕然一新的小技巧
如何提升项目管理实战能力
睡眠时间和学习效率有什么关系
如何提高项目成本预测的准确性
轮毂CB值是什么意思?详解轮毂关键参数
轮毂孔距对照表:汽车改装与维修必备知识
交换机如何重置
如何开启锐捷交换机web服务
红极一时的“海棠角”为何跌下神坛?听完内行人说完,恍然大悟
海棠角:精致细节打造完美家装
心脏彩超检查的目的与意义
心肌病心脏彩超能查出来吗
如何开具在异地承包经营的发票
肺热咳嗽与肺寒咳嗽有什么区别
润肺止咳食疗——内外兼调,守护呼吸健康
三种简单生蚝蘸料调制方法,提升鲜美口感
厚德载物的意思是什么?解析成语厚德载物的含义
人工智能技术应用培训
什么是光芯片?与传统芯片的区别是什么?
光子芯片,离我们到底还有多远?
《如梦令·昨夜雨疏风骤》原文是什么?应该如何理解?
加拿大海运港口有哪些(加拿大国际海运港口简介)
加拿大海运港口有哪些(加拿大国际海运港口简介)
节节攀升 奥运会带“飞”巴黎物价
手冲咖啡法压壶虹吸壶摩卡壶的研磨度分别是多少?研磨的重要性?
甲醛到底是什么?
安全生产经费如何合理分配?
房屋维修基金计算及缴纳标准解析,详细了解房屋维修基金使用办法
饮用水大揭秘:自来水、纯净水、矿泉水,哪种更健康?
烧开水有用的话要净水器干什么?