回归预测 | MATLAB实GRU多输入单输出回归预测

回归预测 | MATLAB实GRU多输入单输出回归预测

目录

预测效果


基本介绍

回归预测 | MATLAB实GRU多输入单输出回归预测。使用GRU作为RNN的一种变体来处理时间序列数据。GRU相比传统的RNN有较好的记忆能力和防止梯度消失的特性。在模型构建中,输入层将多个时间序列数据输入到GRU模型中,而输出层通常是一个全连接层,用于将GRU的输出映射到预测的单一输出变量。

程序设计

clike 复制代码
%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc  
addpath(genpath(pwd))
%% 导入数据
data =  readmatrix('day.csv');
data = data(:,3:16);
res=data(randperm(size(data,1)),:);    %此行代码用于打乱原始样本,使训练集测试集随机被抽取,有助于更新预测结果。
num_samples = size(res,1);   %样本个数


% 训练集和测试集划分
outdim = 1;                                  % 最后一列为输出
num_size = 0.7;                              % 训练集占数据集比例
num_train_s = round(num_size * num_samples); % 训练集样本个数
f_ = size(res, 2) - outdim;                  % 输入特征维度


P_train = res(1: num_train_s, 1: f_)';
T_train = res(1: num_train_s, f_ + 1: end)';
M = size(P_train, 2);

P_test = res(num_train_s + 1: end, 1: f_)';
T_test = res(num_train_s + 1: end, f_ + 1: end)';
N = size(P_test, 2);

%  数据归一化
[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);

参考资料

1\] https://blog.csdn.net/kjm13182345320/article/details/128267322?spm=1001.2014.3001.5501 \[2\] https://blog.csdn.net/kjm13182345320/article/details/128234920?spm=1001.2014.3001.5501

相关推荐
free-elcmacom1 天前
MATLAB与高等数学<1>一道曲面积分题的几何直观
开发语言·数学建模·matlab·高等数学
hoiii1871 天前
量子密钥分发密钥率仿真MATLAB实现
开发语言·matlab
机器学习之心1 天前
MATLAB基于云模型的模糊综合评价法——以电工学课程教学评价为例
matlab·云模型·模糊综合评价法
88号技师1 天前
【2025年1区SCI】最新信号分解方法-JMD的参数优化:15种适应度函数-matlab代码
开发语言·matlab·故障诊断·信号分解
Evand J2 天前
【MATLAB例程】二维指纹对目标的一段轨迹定位,锚点数量可调。输出位置真值、估计值对比,附代码下载链接
开发语言·数据库·matlab
Dev7z2 天前
基于MATLAB数学形态学的边缘检测算法仿真实现
算法·计算机视觉·matlab
来鸟 鸣间2 天前
日常简单数据分析之matlab (一)
matlab·数据分析
wearegogog1232 天前
DEA模型MATLAB实现(CCR、BCC、超效率)
开发语言·算法·matlab
ghie90902 天前
MATLAB自适应子空间辨识工具箱
数据结构·算法·matlab
cici158742 天前
基于反向传播算法实现手写数字识别的MATLAB实现
开发语言·算法·matlab