区间预测 | MATLAB实现基于QRCNN-BiGRU卷积双向门控循环单元多变量时间序列区间预测
@TOC
效果一览
基本介绍
1.Matlab实现基于QRCNN-BiGRU卷积神经网络结合双向门控循环单元多变量时间序列区间预测;
2.多图输出、点预测多指标输出(MAE、MAPE、RMSE、MSE、R2),区间预测多指比输出(区间覆盖率PICP、区间平均宽度百分比PINAW),多输入单输出,含点预测图、不同置信区间预测图、误差分析图、核密度估计概率密度图;
3.data为数据集,功率数据集,用多个关联变量,预测最后一列功率数据,也可适用于负荷预测、风速预测;MainQRCNN_BiGRUNTS为主程序,其余为函数文件,无需运行;
4.代码质量高,注释清楚,含数据预处理部分,处理缺失值,如果为nan,则删除,也含核密度估计;
5.运行环境Matlab2021及以上。
模型描述
QRCNN-BiGRU是一种深度学习模型,用于多变量时间序列的区间预测。该模型结合了卷积神经网络(CNN)、双向门控循环单元(BiGRU)和量化回归(QR)技术,以提高预测准确性。
在该模型中,卷积神经网络用于提取时间序列的局部特征,双向门控循环单元则用于捕捉时间序列的长期依赖关系。量化回归技术则用于根据预测误差的分布情况调整模型的预测结果,从而提高预测的稳定性和准确性。
该模型的预测过程分为两个步骤:首先,使用QRCNN提取特征,并将特征输入到BiGRU中进行时间序列分析;接下来,使用量化回归技术获得预测的区间范围。这种方法可以有效地减少预测的误差,并提高预测的精度。
总之,QRCNN-BiGRU模型是一种用于多变量时间序列区间预测的高级深度学习模型,具有优秀的准确性和稳定性。
程序设计
- 完整程序和数据获取方式:私信博主。
ntrain=round(nwhole*num_size); ntest =nwhole-ntrain; % 准备输入和输出训练数据 input_train =input(:,temp(1:ntrain)); output_train=output(:,temp(1:ntrain)); % 准备测试数据 input_test =input(:, temp(ntrain+1:ntrain+ntest)); output_test=output(:,temp(ntrain+1:ntrain+ntest)); %% 数据归一化 method=@mapminmax; [inputn_train,inputps]=method(input_train); inputn_test=method('apply',input_test,inputps); [outputn_train,outputps]=method(output_train); outputn_test=method('apply',output_test,outputps); % 创建元胞或向量,长度为训练集大小; XrTrain = cell(size(inputn_train,2),1); YrTrain = zeros(size(outputn_train,2),1); for i=1:size(inputn_train,2) XrTrain{ i,1} = inputn_train(:,i); YrTrain(i,1) = outputn_train(:,i); end % 创建元胞或向量,长度为测试集大小; XrTest = cell(size(inputn_test,2),1); YrTest = zeros(size(outputn_test,2),1); for i=1:size(input_test,2) XrTest{ i,1} = inputn_test(:,i); YrTest(i,1) = outputn_test(:,i); end %% 创建混合网络架构 %% 区间覆盖率 RangeForm = [T_sim(:, 1), T_sim(:, end)]; Num = 0; for i = 1 : length(T_train) Num = Num + (T_train(i) >= RangeForm(i, 1) && T_train(i) <= RangeForm(i, 2)); end picp = Num / length(T_train); S = cumtrapz(X,Y); Index = find(abs(m-S)<=1e-2); Q = X(max(Index));
AI 代码解读
参考资料
[1] https://blog.csdn.net/kjm13182345320/article/details/127931217
[2] https://blog.csdn.net/kjm13182345320/article/details/127418340