区间预测 | Matlab实现QRCNN-GRU-Attention分位数回归卷积门控循环单元注意力机制时序区间预测
目录
- 区间预测 | Matlab实现QRCNN-GRU-Attention分位数回归卷积门控循环单元注意力机制时序区间预测
- 效果一览
- 基本介绍
- 程序设计
- 参考资料
效果一览
基本介绍
1.Matlab实现QRCNN-GRU-Attention分位数回归卷积门控循环单元注意力机制时序区间预测;
2.多图输出、多指标输出(MAE、MAPE、RMSE、MSE、R2、区间覆盖率、区间平均宽度百分比),单变量时序预测,含不同置信区间图;
3.data为数据集,用过去一段时间的变量,预测下一时刻,适用于负荷预测、风速预测等;main为主程序,其余为函数文件,无需运行;代码质量高,注释清楚;
4.直接替换Excel数据即可用,注释清晰,适合新手小白,直接运行main文件一键出图。
5.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。
程序设计
- 完整程序和数据获取方式私信博主回复Matlab实现QRCNN-GRU-Attention分位数回归卷积门控循环单元注意力机制时序区间预测。
%% 清空环境变量
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-GRU-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-GRU-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