区间预测 | Matlab实现QRCNN-BiLSTM-Attention分位数回归卷积双向长短期记忆网络注意力机制时序区间预测

区间预测 | Matlab实现QRCNN-BiLSTM-Attention分位数回归卷积双向长短期记忆网络注意力机制时序区间预测

目录

    • [区间预测 | Matlab实现QRCNN-BiLSTM-Attention分位数回归卷积双向长短期记忆网络注意力机制时序区间预测](#区间预测 | Matlab实现QRCNN-BiLSTM-Attention分位数回归卷积双向长短期记忆网络注意力机制时序区间预测)

效果一览


基本介绍

1.Matlab实现基于QRCNN-BiLSTM-Attention分位数回归卷积双向长短期记忆神经网络融合注意力机制的时间序列区间预测模型;

2.多图输出、多指标输出(MAE、MAPE、RMSE、MSE、R2、区间覆盖率、区间平均宽度百分比),单变量时序预测,含不同置信区间图;

3.data为数据集,用过去一段时间的变量,预测下一时刻,适用于负荷预测、风速预测等;main为主程序,其余为函数文件,无需运行;代码质量高,注释清楚;

4.直接替换Excel数据即可用,注释清晰,适合新手小白,直接运行main文件一键出图。

5.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。

该模型的结构和流程如下:

输入的时间序列数据首先经过卷积层,用于提取数据的局部特征。输入到双向LSTM层中。BiLSTM模型包含两个LSTM层,一个正向LSTM和一个反向LSTM。正向LSTM按照时间顺序处理数据,而反向LSTM按照时间逆序处理数据。

BiLSTM层的输出可以连接到一个注意力机制层和全连接层。

最后,全连接层的输出通过输出层进行分位数回归,生成目标变量的预测区间。

程序设计

  • 完整程序和数据获取方式私信博主回复区间预测 | Matlab实现QRCNN-BiLSTM-Attention分位数回归卷积双向长短期记忆网络注意力机制时序区间预测。
clike 复制代码
%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc                     % 清空命令行


%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc                     % 清空命令行

%%  导入数据
res = xlsread('data.xlsx');

%%  绘图
figure
fill([1 : M, M : -1 : 1], [L_sim1{1}, L_sim1{end}(end : -1 : 1)], ...
    'r', 'FaceColor', [1, 0.8, 0.8], 'EdgeColor', 'none')
hold on 
plot(1 : M, T_train, '-', 1 : M, T_sim1', '-', 'LineWidth', 0.3)
legend('95%的置信区间', '真实值', '预测值')
xlabel('预测样本')
ylabel('预测结果')
string = {'QRCNN-BiLSTM-Attention训练集预测结果对比'; ['RMSE = ' num2str(error1)]};
title(string)
xlim([1, M])
grid

figure
fill([1 : N, N : -1 : 1], [L_sim2{1}, L_sim2{end}(end : -1 : 1)], ...
    'r', 'FaceColor', [1, 0.8, 0.8], 'EdgeColor', 'none')
hold on 
plot(1 : N, T_test, '-', 1 : N, T_sim2', '-', 'LineWidth', 1)
legend('95%的置信区间', '真实值', '预测值')
xlabel('预测样本')
ylabel('预测结果')
string = {'QRCNN-BiLSTM-Attention测试集预测结果对比'; ['RMSE = ' num2str(error2)]};
title(string)
xlim([1, N])
grid

参考资料

1 https://blog.csdn.net/kjm13182345320/article/details/127931217

2 https://blog.csdn.net/kjm13182345320/article/details/127418340

相关推荐
iCxhust11 小时前
Matlab求解发电机的极限切除角
开发语言·算法·matlab·电力系统
LMT_Lanmantech18 小时前
MATLAB合规管理:如何避免侵权赔偿和审计风险
开发语言·matlab·信息可视化
Evand J19 小时前
【PMSM例程6】永磁同步电机(PMSM)基于增广EKF的d-q轴电感分阶段辨识算法|电机参数估计与误差分析
算法·matlab·电机·ekf
Matlab程序猿19 小时前
【MATLAB源码-第460期】基于matlab的OTFS通信系统SLM峰均比抑制及非线性功率放大器失真与误码性能仿真
开发语言·算法·matlab·slm·otfs
chhttty2 天前
Stateflow状态机建模:数据
matlab·simulink
Matlab程序猿2 天前
【MATLAB源码-第459期】基于matlab的D-H模型与阻尼最小二乘逆运动学的六自由度机械臂五次轨迹规划及动力学前馈PD控制仿真。
人工智能·算法·matlab·d-h建模·六自由度串联机械臂
机器学习之心2 天前
基于CNN-LSTM的轴承剩余寿命预测,MATLAB代码
matlab·cnn·lstm·cnn-lstm·轴承剩余寿命预测
菜鸟~noob2334 天前
【电子战】 第26篇:大气衰减——氧气与水汽吸收【含matlab代码】
开发语言·matlab
菜鸟~noob2334 天前
【电子战】第25篇:自由空间、双射线与菲涅尔区【含matlab代码】
开发语言·算法·matlab
Evand J4 天前
【电机滤波例程5】渐消因子自适应扩展卡尔曼滤波(EKF),MATLAB。PMSM负载突变下的状态估计。附下载链接
算法·matlab