ImagenTime:基于图像转换的变长时间序列生成模型

ImagenTime模型利用图像转换和扩散模型,实现对短、长和超长时间序列的统一生成建模,并在多个基准测试中达到SOTA。

原文标题:NeurIPS 2024 ImagenTime:利用图像转换实现变长时间序列生成的处理

原文作者:数据派THU

冷月清谈:

本文介绍了一种名为ImagenTime的新型时间序列生成模型,该模型利用图像转换技术和视觉扩散模型来处理不同长度的时间序列数据,包括短期、长期和超长期序列。

该模型的核心思想是将时间序列数据转换为图像,然后利用成熟的视觉扩散模型进行处理。具体而言,它使用延迟嵌入和短时傅里叶变换(STFT)将时间序列转换为图像。转换后的图像被输入到一个扩散模型中,该模型学习如何对图像进行去噪。在生成过程中,模型通过反向迭代逐步去除噪声,最终生成新的时间序列数据。

实验结果表明,ImagenTime在多个数据集上实现了最先进的性能,尤其在超长序列的生成上表现出色。在无条件生成任务中,ImagenTime在短期判别得分上比之前的扩散模型提高了58.17%,在(超)长分类得分上提高了132.61%。此外,ImagenTime在条件生成任务(例如插值和预测)中也表现出色,优于现有的许多方法。

该模型的优点在于其能够在一个统一的框架内处理不同长度的时间序列,并且可以利用视觉领域先进的扩散模型技术。这种跨领域结合的思路为时间序列生成建模提供了新的方向。

怜星夜思:

1、将时间序列转换为图像进行处理,这种方法的局限性在哪里?除了文中提到的延迟嵌入和STFT,还有哪些其他的转换方法可以尝试?
2、文章中提到了扩散模型在推理过程中计算成本较高的问题,如何改进或优化这个问题,以提高模型的效率?
3、ImagenTime 模型在条件生成任务中表现出色,但实际应用中条件生成的任务往往更加复杂,例如多变量时间序列的插值和预测。如何将 ImagenTime 扩展到更复杂的条件生成场景?

原文内容

来源:EvolGroup
本文约2500字,建议阅读5分钟
本文提出了一种基于信号到图像变换和视觉扩散骨干的新模型实现在一个框架中同时考虑短期、长期和超长期时间序列。

标题
Utilizing Image Transforms and Diffusion Models for Generative Modeling of Short and Long Time Series
作者
Ilan Naiman,Nimrod Berman,Itai Pemper,Idan Arbiv,Gal Fadlon,Omri Azencot
论文
https://arxiv.org/pdf/2410.19538
代码
https://github.com/azencot-group/ImagenTime


摘要


最近,围绕时间序列数据的生成建模的兴趣激增。大多数现有方法要么设计用于处理短序列,要么用于处理长序列。这种二分法可以归因于循环网络的梯度问题、与变换器相关的计算成本,以及状态空间模型的有限表现力。为了实现可变长度时间序列的统一生成模型,我们在本研究中提出将序列转换为图像。

通过使用可逆变换,如延迟嵌入和短时傅里叶变换,本文解锁了三个主要优势:

  • 利用先进的扩散视觉模型;
  • 在同一框架内显著处理短序列和长序列输入;
  • 利用时间序列到图像文献中最近提出和建立的工具。

我们的方法在强基线对比下持续达到最先进的结果。在无条件生成任务中,我们在短判别得分上比先前的扩散模型提高了58.17%,在(超)长分类得分上提高了132.61%。

1.引言


现有的时间序列生成模型通常要么设计用于多变量短期序列,要么设计用于单变量长期数据,通常导致完全不同的神经网络框架。然而,一个自然的问题出现了:能否开发出一个统一的框架,既能处理高维短序列,也能处理低维长时间序列?

现有的时间序列处理方法,包括循环神经网络(RNN)、Transformer和状态空间模型(SSM)及其衍生方法,各自在处理短序列和长期依赖性方面存在挑战,其中RNN受梯度问题困扰,Transformer计算成本高且在生成模型方面未充分探索,而SSM及其变体在长期序列生成上应用有限且线性模型在处理短序列时表达力不足。

为了克服循环骨干的梯度问题、Transformer的时间计算成本和SSM的表达问题,我们通过小尺寸图像来表示时间序列信息。

我们的工作创新在于:

  • 将时间序列生成建模视为视觉问题,利用图像转换和视觉模型技术;
  • 开发了一个灵活的生成模型,无需重大调整即可处理不同长度的序列;
  • 在无条件及条件生成任务上达到最先进水平,尤其在超长序列基准上表现卓越。


2.问题陈述


本文致力于生成时间序列问题,旨在从学习到的分布   中采样以模拟未知分布  ,处理的数据为   长度、  特征的序列。本文的任务包括无条件生成,即学习模型   从    采样,以及条件生成,即给定信号   学习  ,后者对时间序列插值和外推等任务至关重要。

3.时间序列到图像的转换




在本研究中,本文关注两种可逆的时间序列到图像的转换方法:1)延迟嵌入;2)短时傅里叶变换(STFT)。

延迟嵌入(Delay embeddings )


延迟嵌入通过将时间序列的数据信息按列排列并必要时填充,将单变量时间序列   转换为图像。设   和   是两个用户参数,分别表示跳跃值和列维度。我们构造以下矩阵 

其中  。通过零填充,使得图像   满足神经网络输入的要求。

给定  ,可以通过多种方式提取原始时间序列 

短时傅里叶变换(STFT)


短时傅里叶变换(STFT)是一种将信号映射至频率域的技术,通过时间轴上的滚动窗口保持时间结构,对时间序列片段应用FFT。输入信号经STFT处理后形成图像,包含实部和虚部。STFT对短序列可能需线性插值以满足长度要求,且变换是可逆的,信息损失极小,不涉及频谱图的进一步计算。

4. 方法


思路形成


本文用于时间序列信息生成建模的方法基于以下简单的观察和直接的想法:

视觉领域的扩散模型最近取得了显著的进展和成果,因此,本文的思路是将时间序列转换为图像,从而能够使用现有的扩散视觉模型进行处理。

模型框架概述


本文的计算流程由三个主要模块组成:

  • 时间序列到图像的模块;
  • 扩散模型;
  • 图像到时间序列的模块。

扩散模型是我们神经网络中唯一的可学习参数部分。

形式上,给定一个输入时间序列  ,我们将其转换为图像  。噪声被添加到该图像中,得到张量  ,并用我们的扩散模型进行处理,输出   代表去噪后的图像。在推理过程中,噪声   从   中采样,反向迭代到  ,并转换为时间序列 

我们框架的核心是生成性扩散模型骨干。所有扩散模型的一个限制是推理过程中需要反复去噪图像,从而导致成本较高的神经函数评估(NFE)。

Karras等人提出了一种平衡快速采样与高质量生成的增强评分模型,通过定义设计空间和采用二阶ODE的EDM扩散模型,实现了35次NFE下的低FID图像生成,本研究以EDM作为生成骨干。

5.实验


5.1 短期、长期和超长期无条件生成


短期实验中,使用延迟嵌入变换,嵌入维度为n = 8,延迟为m = 3,得到8×8的图像。长期实验中使用STFT变换,生成32×32大小的图像,长短期都使用18个采样步骤和EDM扩散生成骨架。

超长期实验中,对Traffic数据使用延迟嵌入变换(n = 144, m = 136),生成144×144的图像。KDD-Cup数据则通过STFT变换,生成112×112的图像。两个数据集的采样步数均为36。



相比之下,本文除了在短期时间序列上取得SOTA结果外,本文在长期时间序列任务中也取得了强劲的表现。这些结果还突显了本文框架在超长序列上的可扩展性,展示了它在所有序列长度上的出色表现。

在一个框架中同时考虑短期、长期和超长期时间序列正是我们工作的创新之处。

5.2 时间序列的条件生成


本文方法在无条件生成基准之外,还在条件生成任务(包括填补和预测)上进行了评估。通过简单修改,方法能适应这些任务,如插值任务中仅在缺失值处应用模型并使用掩码,而外推任务则类似于图像修复。实验中,插值任务掩盖了50%的序列值,而外推任务则分割序列以预测目标值,涵盖了不同时间跨度的序列。


本文的方法在短期插值任务中性能比CRU高出4倍,在短期外推中比最优现有方法提高30%;在长期插值任务中显著提升,特别是在Physionet和USHCN数据集上分别提升两个和一个数量级。在超长期插值任务中也表现出色,比ODE-RNN好4倍。

总体而言,该方法对不同长度的序列具有强大的鲁棒性,并在多个数据集上优于现有最优生成模型。

6.总结


新生成模型快速涌现,但大多针对短或长序列,缺乏统一处理不同长度时间序列的框架。本文提出了一种基于信号到图像变换和视觉扩散骨干的新模型实现在一个框架中同时考虑短期、长期和超长期时间序列。本文的思路本质是将输入进行转化以借助其他领域的先进模型/技术来实现跨模态生成,这种跨领域寻找启发的思路可以帮助拓展思考的范围,站在不同模态的角度去理解模型。

编辑:王菁



关于我们

数据派THU作为数据科学类公众号,背靠清华大学大数据研究中心,分享前沿数据科学与大数据技术创新研究动态、持续传播数据科学知识,努力建设数据人才聚集平台、打造中国大数据最强集团军。



新浪微博:@数据派THU

微信视频号:数据派THU

今日头条:数据派THU

我认为一个主要的局限性在于图像的二维结构可能无法完全捕捉时间序列中复杂的时间依赖性。 另外,转换后的图像尺寸可能会很大,导致计算成本增加。除了文中提到的方法,还可以考虑使用Markov Transition Field (MTF) 或 recurrence plots 等方法,这些方法可以更好地捕捉时间序列中的动态特征。

我觉得转换过程中必然会丢失一些信息吧,比如时间序列的细微变化,转换成图像后可能就体现不出来了。还有就是图像的分辨率对结果的影响也挺大的,分辨率太低肯定不行。至于其他的转换方法,我想到的是小波变换,它可以捕捉到时间序列的局部特征,说不定效果更好。

除了DDIM,还可以考虑使用其他的采样方法,比如改进的Langevin dynamics或Hamiltonian Monte Carlo等。另外,并行计算和模型量化也是可以尝试的方向。

可以尝试一些快速采样策略,比如DDIM,或者改进模型架构,减少模型参数量,或者使用更高效的硬件设备,例如GPU。

转换方法的选择很大程度上取决于时间序列数据的特性。对于具有周期性或频率特征的数据,STFT 可能更合适;而对于非平稳时间序列,小波变换可能是更好的选择。此外,还可以考虑使用递归图或格拉姆角场等方法将时间序列转换为图像。当然,每种方法都有其局限性,需要根据具体问题进行选择和优化。

我觉得可以尝试将多变量时间序列的每个变量都转换成图像,然后将这些图像拼接成一个更大的图像,或者使用多通道图像来表示多变量时间序列。这样就可以利用ImagenTime模型来处理多变量时间序列了。

我觉得可以从模型压缩和知识蒸馏的角度入手,训练一个更小的学生模型来模拟ImagenTime的行为,这样可以减少计算量和内存占用。

可以考虑在模型中引入注意力机制,使模型能够关注不同变量之间的关系。此外,还可以尝试使用图神经网络来建模多变量时间序列之间的复杂依赖关系。

对于多变量时间序列,可以考虑将每个变量单独进行图像转换,然后将转换后的图像作为多通道输入到扩散模型中。此外,也可以探索使用条件扩散模型,将条件信息(例如其他相关变量的值)融入到模型中,以实现更精准的条件生成。