时序预测 | MATLAB实现基于LSTM长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价)

时序预测 | MATLAB实现基于LSTM长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价)

目录

    • [时序预测 | MATLAB实现基于LSTM长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价)](#时序预测 | MATLAB实现基于LSTM长短期记忆神经网络的时间序列预测-递归预测未来(多指标评价))

预测结果







基本介绍

Matlab实现LSTM长短期记忆神经网络时间序列预测未来(完整程序和数据)

1.Matlab实现LSTM长短期记忆神经网络时间序列预测未来;

2.运行环境Matlab2018及以上,data为数据集,单变量时间序列预测;

3.递归预测未来数据,可以控制预测未来大小的数目,适合循环性、周期性数据预测;

4.命令窗口输出R2、MAE、MAPE、MBE、MSE等评价指标;

程序设计

clike 复制代码
%% 创建混合LSTM网络架构
% 输入特征维度
numFeatures  = f_;
% 输出特征维度
numResponses = 1;
FiltZise = 10;
%  创建"LSTM"模型
    layers = [...
        % 输入特征
        sequenceInputLayer([numFeatures 1 1],'Name','input')
        sequenceFoldingLayer('Name','fold')
        % LSTM特征学习
        lstmLayer(50,'Name','lstm1','RecurrentWeightsInitializer','He','InputWeightsInitializer','He')
        % LSTM输出
        lstmLayer(optVars.NumOfUnits,'OutputMode',"last",'Name','bil4','RecurrentWeightsInitializer','He','InputWeightsInitializer','He')
        dropoutLayer(0.25,'Name','drop3')
        % 全连接层
        fullyConnectedLayer(numResponses,'Name','fc')
        regressionLayer('Name','output')    ];

    layers = layerGraph(layers);
    layers = connectLayers(layers,'fold/miniBatchSize','unfold/miniBatchSize');

%% LSTM训练选项
% 批处理样本
MiniBatchSize =128;
% 最大迭代次数
MaxEpochs = 500;
    options = trainingOptions( 'adam', ...
        'MaxEpochs',500, ...
        'GradientThreshold',1, ...
        'InitialLearnRate',optVars.InitialLearnRate, ...
        'LearnRateSchedule','piecewise', ...
        'LearnRateDropPeriod',400, ...
        'LearnRateDropFactor',0.2, ...
        'L2Regularization',optVars.L2Regularization,...
        'Verbose',false, ...
        'Plots','none');

%% 训练混合网络
net = trainNetwork(XrTrain,YrTrain,layers,options);

参考资料

1\] https://blog.csdn.net/kjm13182345320/article/details/129036772?spm=1001.2014.3001.5502 \[2\] https://blog.csdn.net/kjm13182345320/article/details/128690229

相关推荐
王_teacher20 小时前
LSTM 原理详解手动编写LSTM模型代码
人工智能·llm·nlp·lstm
沪漂阿龙2 天前
面试题:循环神经网络(RNN)是什么?词嵌入、时序建模、梯度消失、LSTM/GRU 一文讲透
人工智能·rnn·深度学习·gru·lstm
沪漂阿龙2 天前
面试题:传统序列模型详解——RNN、LSTM、GRU 原理、区别、优缺点一文讲透
人工智能·rnn·深度学习·gru·lstm
FelixZhang0284 天前
工业时序工况识别项目复盘:从深度学习探索到 LightGBM/CatBoost 落地
人工智能·深度学习·机器学习·gru·lstm·边缘计算·boosting
生信研究猿4 天前
#P4869.第2题-基于LSTM进行室内温度预测
人工智能·rnn·lstm
源码之家4 天前
计算机毕业设计:Python基于数据挖掘的医院疾病分析与预测系统 Flask框架 数据分析 可视化 ARIMA算法 大数据 大模型(建议收藏)✅
python·信息可视化·数据挖掘·数据分析·flask·lstm·课程设计
简简单单做算法7 天前
基于GWO灰狼优化的Transformer-BiLSTM网络模型的时间序列预测算法matlab性能仿真
matlab·transformer·时间序列预测·bilstm·gwo灰狼优化
hans汉斯7 天前
基于LSTM与扩展卡尔曼滤波的无人机机载电子磁干扰补偿研究
开发语言·人工智能·算法·目标检测·lstm·人机交互·无人机
机器学习之心8 天前
多工况车速数据集训练LSTM-Attention用于车速预测,输出未来多个时间步车速,MATLAB代码
人工智能·matlab·lstm·lstm-attention·车速预测
wayz119 天前
Day 19 编程实战:LSTM股价预测
人工智能·rnn·深度学习·神经网络·lstm