时序预测 | MATLAB实现GRU(门控循环单元)时间序列预测

时序预测 | MATLAB实现GRU(门控循环单元)时间序列预测

程序设计

GRU 旨在解决标准 RNN 中出现的梯度消失问题。GRU 也可以被视为 LSTM 的变体,因为它们基础的理念都是相似的,且在某些情况能产生同样出色的结果。

%加载序列数据,数据集包含一个时序,其时间步对应于月份,值对应于输出是一个元胞数组,其中每个元素均为单一时间步。
clc,clear;warning off;
load data ;
data = [data{:}];
figure
plot(data,':.','Color',[0 0 180]./255,'linewidth',0.8,'Markersize',4,'MarkerFaceColor',[0 0 180]./255)
xlabel("Month")
ylabel("Cases")
title("Monthly Cases ")

划分数据集,比例可以自己调整。

numTimeStepsTrain = floor(0.9*numel(data));
dataTrain = data(1:numTimeStepsTrain+1);
dataTest = data(numTimeStepsTrain+1:end);
% 数据归一化:将训练数据标准化为具有零均值和单位方差。
mu = mean(dataTrain);
sig = std(dataTrain);
dataTrainStandardized = (dataTrain - mu) / sig;
% 准备预测变量和响应
%

你可能感兴趣的:(时间序列,#,GRU门控循环单元,#,RNN循环神经网络,机器学习,深度学习)