时序预测 | MATLAB实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络时间序列预测
目录
- 时序预测 | MATLAB实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络时间序列预测
- 预测效果
- 基本介绍
- 模型描述
- 程序设计
- 参考资料
预测效果
基本介绍
MATLAB实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络时间序列预测(完整源码和数据)
1.Matlab实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络机时间序列预测;
2.输入数据为单变量时间序列数据,即一维数据;
3.运行环境Matlab2018及以上,运行GWOBiLSTMTIME即可,其余为函数文件无需运行,所有程序放在一个文件夹,data为数据集;
4.灰狼算法优化学习率,隐藏层节点,正则化系数;
模型描述
构建GWO-BILSTM预测模型的步骤如下:
(1) 现有数据集作为 BILSTM 模型的输入参数。
(2)初始化GWO-BILSTM模型的网络参数,将参数输入到
网络进行学习,输出一定时期预测值。
(3) GWO算法调整样本权重,不断更新中的参数BILSTM 直到找到最优解或达到最大迭代代数。
(4)获取GWO-BILSTM预测模型,获取并输出最终的预测结果。基于GWO-BILSTM模型的预测流程图如上。
程序设计
- 完整程序和数据下载方式1:同等价值程序兑换;
- 完整程序和数据下载方式2:MATLAB实现GWO-BiLSTM灰狼算法优化双向长短期记忆神经网络时间序列预测
%% 灰狼优化bilstm时间序列预测
%% 清空环境变量
warning off % 关闭报警信息
close all % 关闭开启的图窗
clear % 清空变量
clc % 清空命令行
tic
% restoredefaultpath
%%
data = xlsread('data.xlsx', 'Sheet1');
n=6;
[x,y]=data_process(data,n);%前n个时刻 预测下一个时刻
%划分数据
n=size(x,1);
m=round(n*0.7);%前70%训练 后30%测试
P_train=x(1:m,:)';
P_test=x(m+1:end,:)';
T_train=y(1:m,:)';
T_test=y(m+1:end,:)';
f_=size(P_train, 1);
outdim = 1;
%% 数据归一化
[p_train, ps_input] = mapminmax(P_train, 0, 1);
p_test = mapminmax('apply', P_test, ps_input);
[t_train, ps_output] = mapminmax(T_train, 0, 1);
t_test = mapminmax('apply', T_test, ps_output);
%% 划分训练集和测试集
M = size(P_train, 2);
N = size(P_test, 2);
%% 优化算法参数设置
SearchAgents_no = 5; % 狼群数量
Max_iteration = 10; % 最大迭代次数
dim = 3; % 优化参数个数
lb = [1e-3, 10, 1e-4]; % 参数取值下界(学习率,隐藏层节点,正则化系数)
ub = [1e-2, 30, 1e-1]; % 参数取值上界(学习率,隐藏层节点,正则化系数)
%% 优化算法初始化
Alpha_pos = zeros(1, dim); % 初始化Alpha狼的位置
Alpha_score = inf; % 初始化Alpha狼的目标函数值,将其更改为-inf以解决最大化问题
Beta_pos = zeros(1, dim); % 初始化Beta狼的位置
Beta_score = inf; % 初始化Beta狼的目标函数值 ,将其更改为-inf以解决最大化问题
Delta_pos = zeros(1, dim); % 初始化Delta狼的位置
Delta_score = inf; % 初始化Delta狼的目标函数值,将其更改为-inf以解决最大化问题
%% 初始化搜索狼群的位置
Positions = initialization(SearchAgents_no, dim, ub, lb);
%% 用于记录迭代曲线
Convergence_curve = zeros(1, Max_iteration);
参考资料
[1] https://blog.csdn.net/kjm13182345320/article/details/128589064?spm=1001.2014.3001.5502
[2] https://blog.csdn.net/kjm13182345320/article/details/128577926?spm=1001.2014.3001.5502