【MATLAB第54期】基于LSTM长短期记忆网络的多输入多输出滑动窗口回归预测模型

简介: 往期文章提到了对单列时间序列数据进行滑动窗口处理的思路,本文介绍如何对多输入多输出数据进行滑动窗口的思路。198行(代表198天),21列数据,其中前19列为变量,第20-21列为因变量。滑动窗口尺寸为7,即可认为前7天的变量作为输入,第7天的因变量作为输出。而样本数量也从原来的198变为192 ,因为前6组变量数据作为了历史样本。则输入的一组样本矩阵结构由20×1变成 20×7。往期第13期已实现多输入单输出滑动窗口回归预测。​输入数据样本 19×198。​转变后 192×19×7。

【MATLAB第54期】基于LSTM长短期记忆网络的多输入多输出滑动窗口回归预测模型

往期第13期已实现多输入单输出滑动窗口回归预测
本次在此代码基础上,新增多输出滑动窗口功能。
多输入单输出滑动窗口回归预测

一、实现效果

往期文章提到了对单列时间序列数据进行滑动窗口处理的思路,本文介绍如何对多输入多输出数据进行滑动窗口的思路。实现效果如下:

1.训练过程:
2023-07-09_173036.png

2.训练集拟合效果:
2023-07-09_173243.png

训练集输出变量1数据的RMSE为:0.087981
训练集输出变量1数据的MAPE为:-0.90458
训练集输出变量1数据的MAE为:0.066594
训练集输出变量1数据的R2为:0.21599
训练集输出变量2数据的RMSE为:0.98063
训练集输出变量2数据的MAPE为:0.034358
训练集输出变量2数据的MAE为:0.77383
训练集输出变量2数据的R2为:0.52585

2023-07-09_173339.png


3.测试集拟合效果:

2023-07-09_173408.png

测试集输出变量1数据的RMSE为:0.10677
测试集输出变量1数据的MAPE为:-0.88689
测试集输出变量1数据的MAE为:0.065214
测试集输出变量1数据的R2为:0.030359
测试集输出变量2数据的RMSE为:1.1881
测试集输出变量2数据的MAPE为:0.053303
测试集输出变量2数据的MAE为:0.99446
测试集输出变量2数据的R2为:0.31222

2023-07-09_173440.png

二、数据设置:

198行(代表198天),21列数据,其中前19列为变量,第20-21列为因变量。
前80%数据训练,后20%数据测试
(因变量数量可以更改)

三、滑动窗口处理:

滑动窗口尺寸为7,即可认为前7天的变量作为输入,第7天的因变量作为输出。
则输入的一组样本矩阵结构由20×1变成 20×7
而样本数量也从原来的198变为192 ,因为前6组变量数据作为了历史样本
​输入数据样本 19×198
​转变后 192×19×7
输出数据样本 2×198
​转变后 192×2

四、代码获取

后台私信回复“54期”可获得下载链接。

相关文章
|
16天前
|
算法
基于GA遗传优化的离散交通网络双层规划模型设计matlab仿真
该程序基于GA遗传优化设计了离散交通网络的双层规划模型,以路段收费情况的优化为核心,并通过一氧化碳排放量评估环境影响。在MATLAB2022a版本中进行了验证,显示了系统总出行时间和区域排放最小化的过程。上层模型采用多目标优化策略,下层则确保总阻抗最小,实现整体最优解。
|
3天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于PSO粒子群优化的GroupCNN分组卷积网络时间序列预测算法matlab仿真
本项目展示了一种结合粒子群优化(PSO)与分组卷积神经网络(GroupCNN)的时间序列预测算法。该算法通过PSO寻找最优网络结构和超参数,提高预测准确性与效率。软件基于MATLAB 2022a,提供完整代码及详细中文注释,并附带操作步骤视频。分组卷积有效降低了计算成本,而PSO则智能调整网络参数。此方法特别适用于金融市场预测和天气预报等场景。
|
6天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于NSCT非采样轮廓波变换和CNN网络人脸识别matlab仿真
本项目展示了一种结合非采样轮廓波变换(NSCT)与卷积神经网络(CNN)的人脸识别系统。通过NSCT提取多尺度、多方向特征,并利用CNN的强大分类能力实现高效识别。项目包括ORL人脸库的训练结果对比,提供Matlab 2022a版本下的完整代码及详细中文注释,另有操作步骤视频指导。
|
8天前
|
机器学习/深度学习 算法
基于小波神经网络的数据分类算法matlab仿真
该程序基于小波神经网络实现数据分类,输入为5个特征值,输出为“是”或“否”。使用MATLAB 2022a版本,50组数据训练,30组数据验证。通过小波函数捕捉数据局部特征,提高分类性能。训练误差和识别结果通过图表展示。
|
4月前
|
机器学习/深度学习 自然语言处理 数据可视化
数据代码分享|PYTHON用NLP自然语言处理LSTM神经网络TWITTER推特灾难文本数据、词云可视化
数据代码分享|PYTHON用NLP自然语言处理LSTM神经网络TWITTER推特灾难文本数据、词云可视化
|
1月前
|
机器学习/深度学习 API 异构计算
7.1.3.2、使用飞桨实现基于LSTM的情感分析模型的网络定义
该文章详细介绍了如何使用飞桨框架实现基于LSTM的情感分析模型,包括网络定义、模型训练、评估和预测的完整流程,并提供了相应的代码实现。
|
1月前
|
机器学习/深度学习
【机器学习】面试题:LSTM长短期记忆网络的理解?LSTM是怎么解决梯度消失的问题的?还有哪些其它的解决梯度消失或梯度爆炸的方法?
长短时记忆网络(LSTM)的基本概念、解决梯度消失问题的机制,以及介绍了包括梯度裁剪、改变激活函数、残差结构和Batch Normalization在内的其他方法来解决梯度消失或梯度爆炸问题。
47 2
|
3月前
|
机器学习/深度学习 PyTorch 算法框架/工具
RNN、LSTM、GRU神经网络构建人名分类器(三)
这个文本描述了一个使用RNN(循环神经网络)、LSTM(长短期记忆网络)和GRU(门控循环单元)构建的人名分类器的案例。案例的主要目的是通过输入一个人名来预测它最可能属于哪个国家。这个任务在国际化的公司中很重要,因为可以自动为用户注册时提供相应的国家或地区选项。
|
3月前
|
机器学习/深度学习 数据采集
RNN、LSTM、GRU神经网络构建人名分类器(一)
这个文本描述了一个使用RNN(循环神经网络)、LSTM(长短期记忆网络)和GRU(门控循环单元)构建的人名分类器的案例。案例的主要目的是通过输入一个人名来预测它最可能属于哪个国家。这个任务在国际化的公司中很重要,因为可以自动为用户注册时提供相应的国家或地区选项。
|
3月前
|
机器学习/深度学习 算法 数据可视化
m基于PSO-LSTM粒子群优化长短记忆网络的电力负荷数据预测算法matlab仿真
在MATLAB 2022a中,应用PSO优化的LSTM模型提升了电力负荷预测效果。优化前预测波动大,优化后预测更稳定。PSO借鉴群体智能,寻找LSTM超参数(如学习率、隐藏层大小)的最优组合,以最小化误差。LSTM通过门控机制处理序列数据。代码显示了模型训练、预测及误差可视化过程。经过优化,模型性能得到改善。
78 6