EI级 | Matlab实现TCN-GRU-Multihead-Attention多头注意力机制多变量时间序列预测

EI级 | Matlab实现TCN-GRU-Multihead-Attention多头注意力机制多变量时间序列预测

目录

    • [EI级 | Matlab实现TCN-GRU-Multihead-Attention多头注意力机制多变量时间序列预测](#EI级 | Matlab实现TCN-GRU-Multihead-Attention多头注意力机制多变量时间序列预测)

预测效果



基本介绍

1.【EI级】Matlab实现TCN-GRU-Multihead-Attention时间卷积门控循环单元融合多头注意力机制多变量时间序列预测;

多头自注意力层 (Multihead-Self-Attention):Multihead-Self-Attention多头注意力机制是一种用于模型关注输入序列中不同位置相关性的机制。它通过计算每个位置与其他位置之间的注意力权重,进而对输入序列进行加权求和。注意力能够帮助模型在处理序列数据时,对不同位置的信息进行适当的加权,从而更好地捕捉序列中的关键信息。在时序预测任务中,注意力机制可以用于对序列中不同时间步之间的相关性进行建模。

2.运行环境为Matlab2023a及以上;

3.data为数据集,输入多个特征,输出单个变量,考虑历史特征的影响,多变量时间序列预测,main.m为主程序,运行即可,所有文件放在一个文件夹;

4.命令窗口输出R2、MSE、RMSE、MAE、MAPE、MBE等多指标评价。

程序设计

  • 完整程序和数据获取方式:私信博主回复Matlab实现TCN-GRU-Multihead-Attention多头注意力机制多变量时间序列预测获取。
clike 复制代码
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%%  划分训练集和测试集
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);
%%  相关指标计算
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%  MAPE
maep1 = sum(abs(T_sim1 - T_train)./T_train) ./ M ;
maep2 = sum(abs(T_sim2 - T_test )./T_test) ./ N ;
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
disp(['训练集数据的MAPE为:', num2str(maep1)])
disp(['测试集数据的MAPE为:', num2str(maep2)])
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
%  RMSE
RMSE1 = sqrt(sumsqr(T_sim1 - T_train)/M);
RMSE2 = sqrt(sumsqr(T_sim2 - T_test)/N);
%-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
disp(['训练集数据的RMSE为:', num2str(RMSE1)])
disp(['测试集数据的RMSE为:', num2str(RMSE2)])

参考资料

[1] http://t.csdn.cn/pCWSp

[2] https://download.csdn.net/download/kjm13182345320/87568090?spm=1001.2014.3001.5501

[3] https://blog.csdn.net/kjm13182345320/article/details/129433463?spm=1001.2014.3001.5501

相关推荐
胖哥真不错6 天前
Python基于TensorFlow实现双向长短时记忆循环神经网络加注意力机制回归模型(BiLSTM-Attention回归算法)项目实战
python·tensorflow·attention·项目实战·bilstm·双向长短时记忆循环神经网络·注意力机制回归模型
胖哥真不错6 天前
Python基于TensorFlow实现双向循环神经网络GRU加注意力机制分类模型(BiGRU-Attention分类算法)项目实战
python·tensorflow·attention·项目实战·bigru·双向循环神经网络gru·注意力机制分类模型
机器学习之心10 天前
SCI一区级 | Matlab实现SSA-TCN-LSTM-Attention多变量时间序列预测
人工智能·matlab·lstm·attention·多变量时间序列预测·ssa-tcn-lstm
机器学习之心1 个月前
全新一区PID搜索算法+TCN-LSTM+注意力机制!PSA-TCN-LSTM-Attention多变量时间序列预测(Matlab)
注意力机制·多变量时间序列预测·tcn-lstm·psa-tcn-lstm
机器学习之心2 个月前
多维时序 | Matlab基于BO-LSSVM贝叶斯优化最小二乘支持向量机数据多变量时间序列预测
支持向量机·matlab·贝叶斯优化·多变量时间序列预测·最小二乘支持向量机·bo-lssvm
机器学习之心2 个月前
多维时序 | Matlab基于SSA-SVR麻雀算法优化支持向量机的数据多变量时间序列预测
支持向量机·多变量时间序列预测·ssa-svr·麻雀算法优化支持向量机
CS_木成河2 个月前
【HuggingFace Transformers】OpenAIGPTModel的核心——Block源码解析
人工智能·gpt·深度学习·transformer·openai·attention·mlp
机器学习之心2 个月前
强推!创新直发核心!时序分解+优化组合+模型对比!VMD-SSA-Transformer-BiLSTM多变量时间序列预测
transformer·bilstm·多变量时间序列预测·vmd-ssa
机器学习之心2 个月前
时序预测 | 基于DLinear+PatchTST多变量时间序列预测模型(pytorch)
人工智能·pytorch·python·多变量时间序列预测·dlinear·patchtst
机器学习之心2 个月前
时序预测 | 基于VMD-SSA-LSSVM+LSTM多变量时间序列预测模型(Matlab)
lstm·多变量时间序列预测·vmd-ssa-lssvm