回归预测 | MATLAB实现CNN-GRU卷积门控循环单元多输入单输出回归预测
目录
- 回归预测 | MATLAB实现CNN-GRU卷积门控循环单元多输入单输出回归预测
- 预测效果
- 基本介绍
- 程序设计
- 参考资料
 
 
预测效果


 
基本介绍
MATLAB实现CNN-GRU卷积门控循环单元多输入单输出回归预测
数据准备:准备你的输入数据和目标输出数据。
 数据预处理:将数据进行归一化或标准化处理,并划分为训练集和测试集。
 构建模型:使用MATLAB的深度学习工具箱来构建CNN-GRU模型。
 训练模型:使用训练数据来训练模型。
 评估模型:使用验证集和测试集来评估模型的性能。
 预测:使用训练好的模型进行预测。
程序设计
- 完整代码:MATLAB实现CNN-GRU卷积门控循环单元多输入单输出回归预测
%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc  
%% 导入数据
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);
%%  数据平铺
for i = 1:size(P_train,2)
    trainD{i,:} = (reshape(p_train(:,i),size(p_train,1),1,1));
end
for i = 1:size(p_test,2)
    testD{i,:} = (reshape(p_test(:,i),size(p_test,1),1,1));
end
targetD =  t_train;
targetD_test  =  t_test;
numFeatures = size(p_train,1);
layers0 = [ ...
参考资料
[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


















