当前位置: 首页 > news >正文

区间预测 | MATLAB实现QRBiGRU门控循环单元分位数回归时间序列区间预测

区间预测 | MATLAB实现QRBiGRU门控循环单元分位数回归时间序列区间预测

目录

    • 区间预测 | MATLAB实现QRBiGRU门控循环单元分位数回归时间序列区间预测
      • 效果一览
      • 基本介绍
      • 模型描述
      • 程序设计
      • 参考资料

效果一览

在这里插入图片描述

在这里插入图片描述

基本介绍

区间预测 | MATLAB实现QRBiGRU门控循环单元分位数回归时间序列区间预测

模型描述

分位数回归是简单的回归,就像普通的最小二乘法一样,但不是最小化平方误差的总和,而是最小化从所选分位数切点产生的绝对误差之和。如果 q=0.50(中位数),那么分位数回归会出现一个特殊情况 - 最小绝对误差(因为中位数是中心分位数)。我们可以通过调整超参数 q,选择一个适合平衡特定于需要解决问题的误报和漏报的阈值。GRU 有两个有两个门,即一个重置门(reset gate)和一个更新门(update gate)。从直观上来说,重置门决定了如何将新的输入信息与前面的记忆相结合,更新门定义了前面记忆保存到当前时间步的量。如果我们将重置门设置为 1,更新门设置为 0,那么我们将再次获得标准 RNN 模型。

程序设计

  • 基础版完整程序和数据获取方式,订阅《GRU门控循环单元》(数据订阅后私信我获取):MATLAB实现QRBiGRU门控循环单元分位数回归时间序列区间预测
%% 此程序为单变量输入单步预测
%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc  

%% 导入数据
data =  readmatrix('数据集.xlsx');
[h1,l1]=data_process(data,8);   %单步预测%步长为8
res = [h1,l1];
num_samples = size(res,1);   %样本个数
% 训练集和测试集划分
outdim = 1;                                  % 最后一列为输出
num_size = 0.8;                              % 训练集占数据集比例
num_train_s = round(num_size * num_samples); % 训练集样本个数
f_ = size(res, 2) - outdim;                  % 输入特征维度


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);

%  格式转换
for i = 1 : M 
    vp_train{i, 1} = p_train(:, i);
    vt_train{i, 1} = t_train(:, i);
end

for i = 1 : N 
    vp_test{i, 1} = p_test(:, i);
    vt_test{i, 1} = t_test(:, i);
end

参考资料

[1] https://blog.csdn.net/kjm13182345320/article/details/127931217
[2] https://blog.csdn.net/kjm13182345320/article/details/127418340
[3] https://blog.csdn.net/kjm13182345320/article/details/127380096

相关文章:

  • 【SQL性能优化】预编译SQL:从注入防御到性能飞跃
  • 【复活吧,我的爱机!】Ideapad300-15isk拆机升级:加内存条 + 换固态硬盘 + 换电源
  • 腾讯位置服务学习记录
  • 汇编学习之《变址寄存器》
  • 下载安装mingw配置C++编译环境 及C环境
  • 深入理解 YUV 颜色空间:从原理到 Android 视频渲染
  • 【前端】创建一个vue3+JavaScript项目流程
  • 指纹浏览器技术解析:如何实现多账号安全运营与隐私保护
  • 横扫SQL面试——时间序列分组与合并(会话划分)问题
  • 3.27-1 pymysql下载及使用
  • win10之mysql server 8.0.41安装
  • 从像素到二值化:OpenCV图像处理实战入门指南
  • 虫洞数观系列二 | Python+MySQL高效封装:为pandas数据分析铺路
  • Spring Boot中常用内嵌数据库(H2、HSQLDB、Derby)的对比,包含配置示例和关键差异总结
  • PyTorch量化进阶教程:第一章 PyTorch 基础
  • 如何分辨三极管的三个极
  • leetcode01背包问题(C++)
  • Splunk PDF 格式要求
  • (Kotlin)Android 高效底部导航方案:基于预定义 Menu 和 ViewPager2 的 Fragment 动态绑定实现
  • 【微服务架构】SpringCloud Alibaba(三):负载均衡 LoadBalance
  • 游戏网站排行/av手机在线精品
  • php动态网站开发环境/百度网盘客服
  • 做关于植物的网站/企业推广app
  • 建湖哪家专业做网站/无锡今日头条新闻
  • 车险保险网站/友情链接多少钱一个
  • 河北省建设局材料备案网站/关键词seo价格