港科技&MIT&浙大联合发布通用时序特征机器TimeMixer++,多项任务取得SOTA效果

科技   2024-11-04 23:18   北京  

点关注,不迷路,用心整理每一篇算法干货~

后台留言”交流“,加入圆圆算法交流群~
👇🏻扫码👇🏻加入圆圆算法知识星球~
(文末送双11优惠券!)
已有910+同学加入学习,700+干货笔记)

近年来,时间序列相关领域的发展与日俱进。以 Transformer 类架构或 Linear 类架构的一系列时间序列相关工作都致力于构建一种更通用更高效的模型架构,但大都因为灵活性和通用性等方面的局限而缺乏对于通用时序特征提取的能力,无法满足广泛适用的特性。

今天为大家介绍一篇来自香港科技大学MIT浙江大学格里菲斯大学的团队提出的新模型架构:TimeMixer++,该模型在常见的 8 种时序任务上超越了几种 Baseline 模型,实现了更高的精度和更通用的时序特征提取和分析。

论文标题:TimeMixer++: A General Time Series Pattern Machine for Universal Predictive Analysis

下载地址https://arxiv.org/pdf/2410.16032

1

研究背景

为了应对更丰富的时间序列分析场景,“时序特征机器” (Time Series Pattern Machines, TSPMs) 的开发非常重要。它们的核心是能够识别和概括时间序列数据中固有的时间序列特征,使模型能够发现有意义的时间结构,并适应不同的时间序列任务场景。但由于马尔可夫假设和效率低下等限制,一些基于自回归类模型的方法往往难以捕捉长期依赖关系。然而 TCNs 尽管能有效捕捉局部模式,但由于其感受野固定,在处理长程依赖关系(如季节性和趋势)时同样面临挑战。一些基于 Transformer 架构的方法利用自注意力机制建模长期依赖关系,然而时间序列数据往往涉及单个时间点上的重叠,例如同时出现的日、周和季节特征。这种重叠使得这类时序特征难以有效被表示。

往往从连续现实世界中采样到的时序数据是多尺度、多周期性的,例如每日数据要捕获每小时波动,而年度数据则反映长期趋势和季节性周期,这给模型设计带来了重大挑战。要设计一个足以适应各种分析任务的多尺度和多周期性特征的模型,要同时适用多样化或一致性的表示。

为了解决上述问题和挑战,文章提出了 TimeMixer++,这是一种通用的时序特征机器,旨在通过解决多尺度和多周期性动态的复杂性来捕获通用的、任务自适应的时间序列特征。该模型通过同时捕捉时域中多个尺度和频域中各种分辨率的复杂时间序列特征,以实现适应不同时序任务场景的目的。

2

实现方法

TimeMixer++ 是一个 Encoder-Only 的架构,主要包括下采样(Down-sampling)、输入映射层(Input Projection)、MixerBlock、输出映射层(Output Projection)等部分。

下采样:使用卷积网络对原始输入序列进行下采样处理,从而生成多尺度序列集合;

输入映射层:本文采用通道混合来捕捉交叉变量的相互作用。输入映射层包括两个部分:通道混合 (Channel Mixing) 和编码嵌入 (Embedding)。首先在最粗尺度的变量维度上应用自注意力机制,然后使用嵌入层将所有多尺度时间序列嵌入到深度特征集中。

MixBlock:文章使用混合模块 (MixBlock) ,目的是捕捉跨时域尺度和频域分辨率的复杂特征。该模块共包含 4 个核心部分:

多分辨率时间成像(Multi-Resolution Time Imaging, MRTI):该部分根据频域信息,利用快速傅立叶变换将时序进行多尺度、多周期重塑,从而得到多分辨率时间图;

时序图分解(Time Image Decomposition, TID):该部分通过横轴和纵轴两个轴向的注意力机制,从每一个时序图中解耦季节和趋势两个不同特征,得到季节图和趋势图;

多尺度混合(Multi-scale Mixing, MCM):该部分主要采用了卷积和反卷积的操作将不同尺度上的季节图和趋势图混合。将季节图由细粒度到粗粒度逐步聚合,并利用较粗尺度的先验知识深入挖掘宏观趋势信息,最终实现从过去信息提取中的多尺度混合。对趋势图,则采用由粗粒度到细粒度的逐步聚合。

多分辨率混合(Multi-resolution Mixing, MRM):该部分在所有尺度上重复进行,获取每个尺度的综合嵌入,以捕获不同分辨率的信息。

输出映射层:在经过 L 层 MixBlocks 后得到了多尺度表示集合,为了适应不同尺度的预测任务而使用多预测头方式,每个预测头负责特定的尺度,并对输出进行组合。这种设计具有任务适应性,允许每个预测头专注于其尺度上的相关特征,而集合操作则汇聚互补信息以增强预测的鲁棒性。

3

实验结果

为了验证 TimeMixer++ 的性能,作者在以下这8个时序主流任务上进行测试:

长期预测:在 8 个广泛使用的真实世界数据集上进行了实验,包括 ETT 数据集的四个子集(ETTh1、ETTh2、ETTm1、ETTm2),以及天气、太阳能、电力和交通数据集;

单变量短期预测:使用 M4 Competition 数据集对模型进行测试,该数据集由10万个营销时间序列组成,具有从每小时到每年的六种频率,能够在不同的时间分辨率上进行全面评估;

多变量短期预测:在四个公开可用的高维交通网络数据集:PEMS03、PEMS04、PEMS07 和  PEMS08 上评估模型,这些数据集包含大量变量;

填充:使用了电力和天气领域的数据集,并选择了对应的基线结果作对比;

小样本场景预测:在 6 个不同的数据集上进行了测试,每个模型仅在 10% 的时间步上进行训练;

零样本场景预测:在数据集A上训练的模型直接在未见数据集B上进行评估;

分类:使用 UEA 时间序列分类集中的 10 个多变量数据评估,结果为多个数据集的平均值;

异常检测:使用 SMD、SWAT、PSM、MSL 和 SMAP 进行评估,结果为多个数据集的平均值。

消融实验:为验证 TimeMixer++ 各组件的有效性,我们通过移除单个组件 (w/o) 进行了消融研究,结果证明了完整模型的优越性;

可视化分析:TimeMixer++ 将时间序列分解为多组季节图和趋势图,可以从时域和频域两个角度提取时序特征。同时不同尺度和频率条件下,季节性和趋势性有显著差异;

效率分析:TimeMixer++ 在内存占用和训练时间上有着优越的表现,同时保持较好的 MSE 分数。在天气数据填补和 ETTm1 长期预测任务中,相较于其他模型具备更低的内存占用和较快的训练时间。

END




后台留言”交流“,加入圆圆算法交流群~
后台留言”星球“,加入圆圆算法知识请星球~【时序预测专题课程持续更新中
知识星球提供一文贯通笔记、经典代码解析、问答服务、新人入门,已有910+小伙伴加入价格随人数增加和内容丰富上涨,感兴趣的同学尽早加入~
双11优惠券,扫码领取!

投稿&加交流群请加微信,备注机构+方向拉群~

【历史干货算法笔记】
生成式模型入门:一文讲懂3大类生成式模型
Sptial-Temporal时空预测总结:建模思路、优化方法梳理
时序预测顶会论文数据集、数据处理方法、训练方法汇总
时间序列预测实战方法概述:从数据到模型
Informer模型结构和代码解析
基于Transformer的时序预测模型TFT代码详解
时空预测经典模型STGCN原理和代码解读
一网打尽:14种预训练语言模型大汇总
Vision-Language多模态建模方法脉络梳理
花式Finetune方法大汇总
从ViT到Swin,10篇顶会论文看Transformer在CV领域的发展历程

如果觉得有帮助麻烦分享在看点赞~  

圆圆的算法笔记
定期更新深度学习/算法干货笔记和世间万物学习记录~
 最新文章