(时序论文阅读)TimeMixer: Decomposable Multiscale Mixing for Time Series Forecasting

来源论文iclr2024

论文地址:https://arxiv.org/abs/2405.14616

源码地址: https://github.com/kwuking/TimeMixer

背景

数据是有连续性,周期性,趋势性的。我们这篇文章主要围绕的是用MLP结构来预测数据的周期性具体为:
短期变化(细粒度) :例如局部波动、尖峰等,通常与日常行为或随机事件相关。
长期变化(粗粒度) :例如趋势、周期性或季节性模式,这些通常反映更广义的规律。

现有方法(如 RNN 和 Transformer)通常只能从单一时间尺度建模,忽略了不同时间尺度之间的关联性。

确实,在金融领域,如a股是有明显的周期性的,在股价预测方面确实可以借鉴。

模型架构

Past-Decomposable-Mixing (PDM)模块

PDM 模块负责从历史数据中提取多尺度的时间特征,通过分解和多层混合来捕捉趋势和季节性

PDM 的具体步骤:

时间序列分解:

使用分解模块(如基于 Autoformer 的策略)将时间序列分为:

1.趋势性成分(Trend):表示长期变化。

2.季节性成分(Seasonal):表示短期波动。

生成多尺度的趋势和季节性子序列。(也就是将其自底向上隔点取值)

那是怎么进行多尺度划分的呢?

看这里 我们取P为96,l取0,1,2,3.

原文采用的是普通的平均池化来进行多尺度划分,将P和l进行带入后获得的多尺度提取序列是,第一次比如是隔2个点进行取值获得第一次的粗序列,第二次进行四个点取值的粗序列,第四次是隔八个点取的粗序列,反正是根据2的指数进行递增的。如下图。

下面这是特征提取层

那么这个PDM模块得到的是哪个mixing呢?

答案是总的
那我们如何得到这些趋势向和季节向?

原文就是通过平均池化,得到趋势向

然后用总的减去趋势向得到季节向

那么为什么用平均池化可以得到趋势向?

举个例子, 2,4,6,8,假设池化步幅为2

平均池化后得到3,3,7,7那么这就是趋势向得到的结果,这时候我们可以看到这是有上升趋势的,

那么用原来的序列减去平均池化后的序列结果呢?得到-1,1,-1,1 这样一看就很有周期性。

先看季节向的公式:

季节向是自底向上的,为什么自底向上,是因为季节性的话(也就是周期性),提取向上后时间间隔越来越大,那么得到的上层的周期性就不明显,就需要用下层的信息去补充上层信息,使其达到季节性效果。

趋势层是自上到下的,自顶向下的处理方式可以在细粒度特征中引入稳定的趋势信息,减少噪声的影响,使模型在噪声较大的数据中表现更鲁棒。自顶向下的处理方式可以在细粒度特征中引入稳定的趋势信息,减少噪声的影响,使模型在噪声较大的数据中表现更鲁棒。

FMM模块

就是将多尺度提取后mixing模块的结果进行维度转换,把它统一到一个维度去,最后在进行加权得到最后的预测结果。

总体模型图如下。

实验部分

最后实验部分也是比sota模型高。

TimeMixer在所有基准测试中都实现了一致的最先进性能,涵盖了具有不同频率、

变量数和实际场景的大量系列。特别是,TimeMixer的性能明显优于PatchTST,天气MSE降低

了9.4%,Solar-Energy MSE降低了24.7%。值得注意的是,即使在Solar-Energy和ETT等可预测

性较低的数据集上,TimeMixer也表现出了良好的性能,进一步证明了TimeMixer的通用性和有

效性。

为了验证模型的泛化能力,在一些比较随机性差的数据集是否有效果,作者定义了一个指标

Forecastability,Forecastability可预测指数(2013ForeCA算法)

谱熵--反映数据在频域中的不确定性,度量数据集混乱程度的指标,熵值越高,时间序列趋势越复杂,越难以预测

(1-熵值)越大,可预测Forecastability:性越强

相关推荐
学步_技术29 分钟前
自动驾驶系列—自动驾驶车辆的姿态与定位:IMU数据在复杂环境中的关键作用
人工智能·自动驾驶·imu
开发者每周简报1 小时前
当微软windows的记事本被AI加持
人工智能·windows·microsoft
沉下心来学鲁班1 小时前
欺诈文本分类检测(十八):基于llama.cpp+CPU推理
人工智能·语言模型·分类·cpu·llama.cpp
新手小白勇闯新世界1 小时前
点云论文阅读-1-pointnet++
论文阅读·人工智能·深度学习·神经网络·计算机视觉
小菜日记^_^1 小时前
BEAGLE: Forensics of Deep Learning Backdoor Attack for Better Defense(论文阅读)
论文阅读·人工智能·深度学习·sp·ai安全·backdoor 后门攻击·安全四大
千天夜2 小时前
激活函数解析:神经网络背后的“驱动力”
人工智能·深度学习·神经网络
大数据面试宝典2 小时前
用AI来写SQL:让ChatGPT成为你的数据库助手
数据库·人工智能·chatgpt
封步宇AIGC2 小时前
量化交易系统开发-实时行情自动化交易-3.4.1.2.A股交易数据
人工智能·python·机器学习·数据挖掘
m0_523674212 小时前
技术前沿:从强化学习到Prompt Engineering,业务流程管理的创新之路
人工智能·深度学习·目标检测·机器学习·语言模型·自然语言处理·数据挖掘
HappyAcmen2 小时前
IDEA部署AI代写插件
java·人工智能·intellij-idea