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

【SegRNN 源码理解】

x = self.valueEmbedding(x.reshape(-1, self.seg_num_x, self.seg_len))

valueEmbedding

特征,时间步,每个特征 60 个观察值,分成 5 份,每份 12 个时间步,嵌入到 512 维

输入: x = [16, 7, 60]  # [batch, feature, time]
       |
      v   重塑
      [112, 5, 12]  # [batch*feature, segments, segment_length]
       |
      v  嵌入
      [112, 5, 512]  # [batch*feature, segments, d_model]

 

_, hn = self.rnn(x)

x 嵌入以后,喂给 RNN

RNN 隐藏层的输出:1×112×512

 为什么h_n的形状 [1, 112, 512]

 

RNN在不分段处理时的形状分析

如果SegRNN模型不进行分段处理,而是直接将完整的时间序列输入到RNN中,其输入、输出的形状和处理过程会有显著不同。

不分段的RNN输入输出形状

假设我们保持批次大小(16)和特征数(7)不变,但不对60个时间步分段处理:

 输入数据预处理

 

 

 问题:

它这么处理是在建模什么东西,尤其是 16*7 的变换我不明白,是什么实际意义,然后又分成 5 段,相当于 5 个时间步,感觉把原始的 16 个 Batch,每个 Batch 60 个时间步,每个时间步 7 个特征的原始信息含义都混着了

RNN 对这个 16个地区的疫情数据 每个地区记录60天 每天记录7种指标(确诊数、死亡数、恢复数、新增病例、R0值、人口密度、医疗资源) 直接进行时间序列建模的输入和输出是什么样的

16个 batch,60 个时间步,7 个特征 -》 112 个序列,5 段,512 维(先理解每段)-》112 个序列,512 维(再混合段落,理解全文)

SegRNN的创新:视角转换的重要意义


http://www.kler.cn/a/573945.html

相关文章:

  • Jmeter使用介绍
  • java数据结构_泛型补充
  • Redis系列之慢查询分析与调优
  • React基础之渲染操作
  • 2025数据存储技术风向标:解析数据湖与数据仓库的实战效能差距
  • MWC 2025|紫光展锐联手美格智能发布5G通信模组SRM812
  • Vue进阶之Vue3源码解析(一)
  • *搜索算法(2)
  • mongodb安装教程以及mongodb的使用
  • 记录一个Circle CI出现的错误
  • Android MVI架构模式详解
  • SolidWorks 转 PDF3D 技术详解
  • vue左侧边框点击后让字体高亮
  • 多线程-线程本地变量ThreadLocal
  • 探秘基带算法:从原理到5G时代的通信变革【十】基带算法应用与对比
  • 前端基础之全局事件总线
  • vue表单已经赋值了,但是还是返回async-validator “xxx is required“提示,弹出验证红字而且不能输入
  • supervisord管理Gunicorn进程,使用Nginx作为反向代理运行flask web项目
  • 代理与 hosts 文件冲突问题解决方案
  • uniapp封装路由管理(兼容Vue2和Vue3)