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

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

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


一、实现效果


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


训练过程

测试集拟合效果


二、数据设置:


198行(代表198天),21列数据,其中前20列为变量,第21列为因变量。

前80%数据训练,后20%数据测试


三、滑动窗口处理:


滑动窗口尺寸为7,即可认为前7天的变量作为输入,第7天的因变量作为输出。

则输入的一组样本矩阵结构由20×1变成 20×7而样本数量也从原来的198变为192 ,因为前6组变量数据作为了历史样本

输入数据样本 20198

转变后 192
20*7

四、评价指标:


RMSE = 1.1891

MAPE = 0.05319


五、部分代码:


%% LSTM 多变量单输入滑动窗口处理
clear all;
clc;
close all;
load data
% 数据处理
% 归一化(全部特征 均归一化)
output_data =data(:,end);
input_data =data(:,1:end-1);
[input_normdata,input_normopt] =mapminmax(input_data',0,1);
[output_normdata,output_normopt] = mapminmax(output_data',0,1);
k =7;          %滑动窗口处理                                                    
% 划分数据集
n = floor(0.8*size(input_normdatacell,1));%训练集,测试集样本数目划分
% LSTM 层设置,参数设置
numhidden_units1=100;
% lstm
layers = [ ...
    sequenceInputLayer(inputSize,'name','input')                             %输入层设置
 lstmLayer(numhidden_units1)                     %学习层设置
     fullyConnectedLayer(outputSize,'name','fullconnect')                     %全连接层设置(outputsize:预测值的特征维度)
    regressionLayer('name','out')];                                          %回归层
% trainoption
opts = trainingOptions('adam', ...        %优化算法
    'MaxEpochs',10, ...                   %遍历样本最大循环数
    'GradientThreshold',1,...             %梯度阈值
    'ExecutionEnvironment','cpu',...      %运算环境
    'InitialLearnRate',0.001, ...         %初始学习率
    'Plots','training-progress'...        % 打印训练进度
    );
% 网络训练
tic
net = trainNetwork(input_xtraincell,output_ytraincell,layers,opts);      %网络训练
% 预测
                                                               %预测天数                                    
yprenorm = net.predict(input_xtestcell);   %预测
ypre = mapminmax('reverse',yprenorm',output_normopt);          %预测值反归一化
yytest = mapminmax('reverse',output_ytestcell',output_normopt); 
RMSE  = sqrt(mean((ypre-yytest).^2));
MAPE  = mean((ypre-yytest)./yytest);
disp(["RMSE2  ",RMSE ])
disp(["MAPE2 ", MAPE])

六、获取方式:


后台回复‘回归滑动窗口’,即可获取下载链接。


相关文章
|
8月前
|
机器学习/深度学习 人工智能 算法
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
320 0
|
9月前
|
机器学习/深度学习 数据采集 资源调度
基于长短期记忆网络定向改进预测的动态多目标进化算法(LSTM-DIP-DMOEA)求解CEC2018(DF1-DF14)研究(Matlab代码实现)
基于长短期记忆网络定向改进预测的动态多目标进化算法(LSTM-DIP-DMOEA)求解CEC2018(DF1-DF14)研究(Matlab代码实现)
377 0
|
9月前
|
机器学习/深度学习 数据采集 边缘计算
相关向量机和特征选取技术在短期负荷预测中的应用(Matlab代码实现)
相关向量机和特征选取技术在短期负荷预测中的应用(Matlab代码实现)
169 4
|
10月前
|
机器学习/深度学习 数据采集 算法
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
【CNN-BiLSTM-attention】基于高斯混合模型聚类的风电场短期功率预测方法(Python&matlab代码实现)
476 4
|
9月前
|
机器学习/深度学习 编解码 并行计算
【创新未发表!】基于BKA算法优化-BP、HO算法优化-BP、CP算法优化-BP、GOOSE算法优化-BP、NRBO算法优化-BP神经网络回归预测比较研究(Matlab代码)
【创新未发表!】基于BKA算法优化-BP、HO算法优化-BP、CP算法优化-BP、GOOSE算法优化-BP、NRBO算法优化-BP神经网络回归预测比较研究(Matlab代码)
516 0
|
9月前
|
算法 安全 数据挖掘
【EI复现】梯级水光互补系统最大化可消纳电量期望短期优化调度模型(Matlab代码实现)
【EI复现】梯级水光互补系统最大化可消纳电量期望短期优化调度模型(Matlab代码实现)
211 0
|
12月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于PSO粒子群优化的BiLSTM双向长短期记忆网络序列预测算法matlab仿真,对比BiLSTM和LSTM
本项目基于MATLAB2022a/2024b开发,结合粒子群优化(PSO)算法与双向长短期记忆网络(BiLSTM),用于优化序列预测任务中的模型参数。核心代码包含详细中文注释及操作视频,涵盖遗传算法优化过程、BiLSTM网络构建、训练及预测分析。通过PSO优化BiLSTM的超参数(如学习率、隐藏层神经元数等),显著提升模型捕捉长期依赖关系和上下文信息的能力,适用于气象、交通流量等场景。附有运行效果图预览,展示适应度值、RMSE变化及预测结果对比,验证方法有效性。
|
10月前
|
机器学习/深度学习 算法 安全
【PSO-LSTM】基于PSO优化LSTM网络的电力负荷预测(Python代码实现)
【PSO-LSTM】基于PSO优化LSTM网络的电力负荷预测(Python代码实现)
438 0
|
12月前
|
机器学习/深度学习 算法 数据挖掘
基于WOA鲸鱼优化的BiLSTM双向长短期记忆网络序列预测算法matlab仿真,对比BiLSTM和LSTM
本项目基于MATLAB 2022a/2024b实现,采用WOA优化的BiLSTM算法进行序列预测。核心代码包含完整中文注释与操作视频,展示从参数优化到模型训练、预测的全流程。BiLSTM通过前向与后向LSTM结合,有效捕捉序列前后文信息,解决传统RNN梯度消失问题。WOA优化超参数(如学习率、隐藏层神经元数),提升模型性能,避免局部最优解。附有运行效果图预览,最终输出预测值与实际值对比,RMSE评估精度。适合研究时序数据分析与深度学习优化的开发者参考。
|
12月前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于GA遗传优化的BiLSTM双向长短期记忆网络序列预测算法matlab仿真,对比BiLSTM和LSTM
本内容包含基于BiLSTM与遗传算法(GA)的算法介绍及实现。算法通过MATLAB2022a/2024b运行,核心为优化BiLSTM超参数(如学习率、神经元数量),提升预测性能。LSTM解决传统RNN梯度问题,捕捉长期依赖;BiLSTM双向处理序列,融合前文后文信息,适合全局信息任务。附完整代码(含注释)、操作视频及无水印运行效果预览,适用于股票预测等场景,精度优于单向LSTM。

热门文章

最新文章