时间序列新范式!多尺度+时间序列,刷爆多项SOTA

2024-06-07 19:44

本文主要是介绍时间序列新范式!多尺度+时间序列,刷爆多项SOTA,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

当我们面对复杂模式和多变周期的应用场景(比如金融市场分析)时,采用多尺度时间序列来做分析和预测是个更好的选择。

这是因为:传统时序方法通常只用固定时间窗口来提取信息,难以适应不同时间尺度上的模式变化。但多尺度时间序列通过调整时间分辨率和距离,不仅能捕捉到时序的局部细节,还能把握其长期趋势和周期性变化。这就大大提升了模型对新数据集的适应性和不同应用场景迁移能力,让我们能够实现更精确的时间序列预测。

举个比较热门的例子:Pathformer。
Pathformer结合了时间分辨率和时间距离的概念,采用自适应Pathways来根据输入时序的时间特征动态提取和聚合多尺度特征,取得了SOTA预测效果。

除此之外,研究者们已经开发了很多创新的多尺度时间序列方案,我挑选了最新的10篇给各位作参考,开源代码贴心附上,欢迎各位讨论~

论文原文以及开源代码需要的同学看文末

Multi-Scale Transformer Pyramid Networks for Multivariate Time Series Forecasting

方法:论文提出了一种多尺度Transformer金字塔网络(MTPNet)用于多元时间序列(MTS)预测。MTPNet通过将MTS数据分解为季节和趋势组件来处理时间依赖性,其中线性层用于直接从历史数据生成趋势组件的预测。同时,MTPNet用于建模时间依赖性并生成季节组件的预测。MTPNet利用多个Transformer来捕捉不同尺度上的时间依赖性,然后将这些多尺度潜在表示连接起来,并应用CNN层来生成季节组件的预测。

创新点:

  • 提出了一种维度无关嵌入技术,用于捕捉短期时间依赖关系。该技术将多元时间序列数据投影到高维空间中,同时保留原始的时间步长和变量维度。

  • 提出了一种新颖的多尺度Transformer金字塔网络(MTPNet),专门用于有效地捕捉多个不受限制的尺度上的时间依赖关系。该网络利用来自不同尺度Transformer的多尺度潜在表示来进行预测。

  • MTPNet尤其在包含细粒度信息的数据集中表现出色,能够有效捕捉从细粒度到粗粒度尺度的各种时间依赖关系。这一发现突出了MTPNet在分析以分钟为单位采样的多元时间序列数据方面的潜力。

Time Series Prediction Based on Multi-Scale Feature Extraction

方法:论文提出了一种基于Transformer模型的多尺度特征提取模型MSFformer,用于解决长时间序列预测任务中长期依赖和短期特征提取不足的问题。研究通过引入一种新颖的特征卷积方法在CSCM中获取粗粒度信息,通过具有指定步长的卷积操作构建金字塔形数据结构,连续提取时间特征信息。

创新点:

  • MSFformer模型:提出了一种基于Transformer模型的多尺度特征提取模型,用于处理长期时间序列预测任务,能够有效提取长期依赖关系和短期特征,提高了模型的准确性和效率。

  • Skip-PAM组件:引入了Skip-PAM组件,通过多层级的注意力机制,在不同时间步长上处理输入数据,从而捕捉不同粒度的时间依赖关系,既能关注短期、细粒度的模式,又能捕捉宏观趋势和周期性。该组件有效提高了模型的预测能力。

HiMTM: Hierarchical Multi-Scale Masked Time Series Modeling for Long-Term Forecasting

方法:论文介绍了一种用于长期预测的分层多尺度遮蔽时间序列建模方法(HiMTM)。该方法包括分层多尺度Transformer(HMT)、解耦编码器-解码器(DED)、多尺度遮蔽重构(MMR)和跨尺度注意力微调(CSA-FT)等四个核心模块。

创新点:

  • 引入了层次多尺度Transformer,通过层次分割更精细的补丁,增强了处理具有多尺度特征的时间序列的能力。这种方法提供了多尺度特征提取能力,为掩蔽时间序列建模提供了更好的指导信号。

  • 在每个编码器层次上实现了专门用于重建掩蔽部分的解码器。这种多层次方法提供了不同层次的监督信号,从而更有效地指导预训练过程。这种方法克服了固定尺度重建的局限性,可以为时间序列提供多阶段的指导信号,更好地对时间序列进行建模。

MSHyper: Multi-Scale Hypergraph Transformer for Long-Range Time Series Forecasting

方法:本文提出了一种用于长期时间序列预测的多尺度超图Transformer模型MSHyper。通过引入H-HGC模块来建立超图和超边图,以提供高阶交互建模的基础。通过TMP机制来聚合高阶模式信息,并学习不同尺度时间模式之间的交互强度。

创新点:

  • H-HGC module:通过引入H-HGC模块,作者提出了一种建模不同尺度时间模式之间高阶相互作用的方法。该模块能够为模型提供基础,用于建模高阶模式之间的相互作用。

  • TMP mechanism:作者提出了TMP机制,用于聚合高阶模式信息,并学习不同尺度时间模式之间的相互作用强度。该机制通过三个消息传递阶段来实现。

  • 作者提出了一种多尺度超图Transformer框架,用于建模不同尺度时间模式之间的高阶相互作用。该框架引入了多尺度超图和超边图,并采用三阶段消息传递机制来聚合模式信息和学习相互作用强度。

关注下方《学姐带你玩AI》🚀🚀🚀

回复“多尺度时序”获取全部论文+代码

码字不易,欢迎大家点赞评论收藏

这篇关于时间序列新范式!多尺度+时间序列,刷爆多项SOTA的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1040125

相关文章

问题:第一次世界大战的起止时间是 #其他#学习方法#微信

问题:第一次世界大战的起止时间是 A.1913 ~1918 年 B.1913 ~1918 年 C.1914 ~1918 年 D.1914 ~1919 年 参考答案如图所示

YOLOv8改进 | SPPF | 具有多尺度带孔卷积层的ASPP【CVPR2018】

💡💡💡本专栏所有程序均经过测试,可成功执行💡💡💡 专栏目录 :《YOLOv8改进有效涨点》专栏介绍 & 专栏目录 | 目前已有40+篇内容,内含各种Head检测头、损失函数Loss、Backbone、Neck、NMS等创新点改进——点击即可跳转 Atrous Spatial Pyramid Pooling (ASPP) 是一种在深度学习框架中用于语义分割的网络结构,它旨

时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测

时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测 目录 时序预测 | MATLAB实现LSTM时间序列未来多步预测-递归预测基本介绍程序设计参考资料 基本介绍 MATLAB实现LSTM时间序列未来多步预测-递归预测。LSTM是一种含有LSTM区块(blocks)或其他的一种类神经网络,文献或其他资料中LSTM区块可能被描述成智能网络单元,因为

java中查看函数运行时间和cpu运行时间

android开发调查性能问题中有一个现象,函数的运行时间远低于cpu执行时间,因为函数运行期间线程可能包含等待操作。native层可以查看实际的cpu执行时间和函数执行时间。在java中如何实现? 借助AI得到了答案 import java.lang.management.ManagementFactory;import java.lang.management.Threa

时间服务器中,适用于国内的 NTP 服务器地址,可用于时间同步或 Android 加速 GPS 定位

NTP 是什么?   NTP 是网络时间协议(Network Time Protocol),它用来同步网络设备【如计算机、手机】的时间的协议。 NTP 实现什么目的?   目的很简单,就是为了提供准确时间。因为我们的手表、设备等,经常会时间跑着跑着就有误差,或快或慢的少几秒,时间长了甚至误差过分钟。 NTP 服务器列表 最常见、熟知的就是 www.pool.ntp.org/zo

20170723 做的事 ecdsa的签名验证时间短于bls signature

1 今天在虚拟机 /home/smile/Desktop/20170610/Test//time_ecdsa 文件夹下,找到ecdsa的验证时间是 989.060606μs μs 先 make ,然后run。 再取BLS的签名生成时间: ./run  2  gnuplot 画图,画对比的时间 gnuplot 画图参考教程 http://blog.sciencen

Python几种建表方法运行时间的比较

建立一个表[0,1,2,3.......10n],下面几种方法都能实现,但是运行时间却截然不同哦 import time#方法一def test1(n):list=[]for i in range(n*10):list=list+[i]return list#方法二def test2(n):list=[]for i in range(n*10):list.append(i)#方法三d

【Qt6.3 基础教程 16】 掌握Qt中的时间和日期:QTimer和QDateTime的高效应用

文章目录 前言QTimer:定时任务的强大工具QTimer的基本用法高级特性:单次定时器 QDateTime:处理日期和时间获取当前日期和时间日期和时间的格式化输出日期和时间计算 用例:创建一个倒计时应用结论 前言 在开发桌面应用程序时,处理时间和日期是一个常见且重要的任务。Qt框架提供了强大的工具来处理与时间相关的功能,其中QTimer和QDateTime是最核心的类。本

代码随想录——摆动序列(Leetcode376)

题目链接 贪心 class Solution {public int wiggleMaxLength(int[] nums) {if(nums.length <= 1){return nums.length;}// 当前一对差值int cur = 0;// 前一对差值int pre = 0;// 峰值个数int res = 1;for(int i = 0; i < nums.length -

想让Python序列切片更高效?这些技巧你不可不知!

目录 1、自定义类实现切片 🍏 1.1 实现__getitem__方法 1.2 支持正负索引与步长 2、利用 collections.abc 模块 🧠 2.1 继承MutableSequence类 2.2 重写关键方法 3、使用标准库itertools.slice 🍲 3.1 itertools工具介绍 3.2 slice函数应用实例 4、通过生成器实现动态切片 🌀