✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
更多Matlab仿真内容点击👇
⛄ 内容介绍
从具有共性的间歇过程终点质量预测问题出发,针对生产过程的时间序列特性进行分析,提出了一种基于双向门控循环单元神经网络的预测模型,对不等长间歇过程进行最终产品质量预测.结合实际生产中对预测值的要求,构建了适应间歇过程的损失函数,使模型在保证预测精度的前提下满足预测要求,从而获得更大的生产效益.将使用不同损失函数的双向门控循环(GRU)单元神经网络与多向偏最小二乘(MPLS),神经网络(NN),支持向量回归(SVR)以及门控循环单元神经网络的预测结果进行实验对比,结果表明双向门控循环单元神经网络具有更强的适用性和更高的准确性.
⛄ 部分代码
%% 清空环境变量
warning off % 关闭报警信息
close all % 关闭开启的图窗
clear % 清空变量
clc % 清空命令行
%% 导入数据
f = xlsread('KalmanFilter.xls','Sheet1','B2:B100');
[x,y]=data_process(f,1); %步长为12
n=size(x,1);
m=round(n*0.7); %前70%训练,对最后30%进行预测
P_train=x(1:m,:)';
T_train=y(1:m,:)';
P_test=x(m+1:end,:)';
T_test=y(m+1:end,:)';
M = size(P_train,2);
% 测试集—200个
N = size(T_test,2);
outdim = 1; % 最后一列为输出
f_ = size(P_train,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);
%% 数据平铺
% 将数据平铺成1维数据只是一种处理方式
% 也可以平铺成2维数据,以及3维数据,需要修改对应模型结构
% 但是应该始终和输入层数据结构保持一致
P_train = double(reshape(P_train, f_, 1, 1, M));
P_test = double(reshape(P_test , f_, 1, 1, N));
t_train = t_train';
t_test = t_test' ;
⛄ 运行结果
⛄ 参考文献
[1] 韩启龙, 张育怀, 门瑞,等. 一种基于注意力增强图卷积神经网络AGC和门控循环单元GRU的空气质量预测方法:, CN112085163A[P]. 2020.
[2] 骆楠、祁佳康、罗娜. 基于双向门控循环单元神经网络的间歇过程最终产品质量预测[J]. 华东理工大学学报:自然科学版, 2020, 46(6):8.
[3] 桑海峰, 陈紫珍. 基于双向门控循环单元的3D人体运动预测[J]. 电子与信息学报, 2019, 41(9):8.
[4] 桑海峰, 陈紫珍, 何大阔. 基于双向GRU和注意力机制模型的人体动作预测[J]. 计算机辅助设计与图形学学报, 2019, 31(7):9.