TimesNet: 用于一般时间序列分析的时间二维变化建模

5cbeeac78e1ccc14ad8f9bb0c7f3ff6f.png

文章信息

481228c758f64e86a88f405a4e41a5fd.png

论文题目为《TIMESNET: TEMPORAL 2D-VARIATION MODELING FOR GENERAL TIME SERIES ANALYSIS》,该文于2023年发表于ICLR会议。

a1bb81564a83e3381a85cf90fb26d08d.png

摘要

49b9ee6f34f95ca061c4433f1201d8e3.png

时间序列分析在天气预报、异常检测和动作识别等广泛应用中具有重要意义。本文关注的是时间变化建模,这是广泛分析任务中常见的关键问题。以前的方法试图直接从一维时间序列中完成这一点,由于复杂的时间模式,这是极具挑战性的。基于对时间序列多周期的观测,本文将复杂的时间变化分解为多个周期内和周期间的变化。为了解决一维时间序列在表示能力上的局限性,通过将一维时间序列转换为基于多个周期的一组二维张量,将时间变化的分析扩展到二维空间。这种变换可以将周期内和周期间的变化分别嵌入到二维张量的列和行中,使得二维变化很容易用二维核来建模。在技术上,本文提出了带有TimesBlock的TimesNet作为时间序列分析任务的通用模型。TimesBlock可以自适应地发现多周期,并通过参数有效的初始块从变换后的二维张量中提取复杂的时间变化。

e1e8c8e144e5089c2296e280d7c34ae4.png

介绍

119988446f171d31e11ae2b9361fd090.png

与语言、视频等其他类型的序列数据不同,时间序列是连续记录的,每个时间点只保存一些标量。由于单个时间点通常无法提供足够的语义信息进行分析,因此许多研究都将重点放在时间变化上,时间变化信息量更大,更能反映时间序列的连续性、周期性、趋势性等固有属性。然而,现实世界时间序列的变化总是涉及复杂的时间模式,其中多种变化(如上升、下降、波动等)相互混合和重叠,使得时间变化建模极具挑战性。为了解决复杂的时间变化问题,本文从多周期的新维度对时间序列进行了分析。首先,观察到现实世界的时间序列通常呈现多周期性,例如天气观测的日和年变化,电力消耗的周和季度变化。这些多周期相互重叠、相互影响,使得变量建模变得难以处理。其次,对于每个时段,本文发现每个时间点的变化不仅受到相邻时间段的影响,而且与其相邻时段的变化高度相关。为清楚起见,我们将这两种类型的时间变化分别命名为周期内变化和周期间变化。前者表示一个时期内的短期时间模式。后者可以反映连续不同时期的长期趋势。注意,对于没有明显周期性的时间序列,其变化将以周期内变化为主,与无限周期长度的时间序列相当。由于不同的周期将导致不同的周期内和周期间变化,多周期可以自然地推导出时间变化建模的模块化体系结构,可以在一个模块中捕获特定周期产生的变化。此外,该设计将复杂的时间模式解耦,有利于时间变化建模。然而,值得注意的是,一维时间序列很难同时显式地呈现两种不同类型的变化。为了解决这一障碍,本文将时间变化的分析扩展到二维空间。具体而言,如图1所示,可以将一维时间序列重塑为二维张量,其中每一列包含一个时间段内的时间点,每一行包含不同时间段内同一相位的时间点。

b63600ca1276bb82506c5587282ec857.png

因此,通过将一维时间序列转换为一组二维张量,可以打破原始一维空间中表示能力的瓶颈,成功地将二维空间中的周期内和周期间变化统一起来,得到时间上的二维变化。在技术上,基于以上动机,我们超越了以往的骨架,提出了TimesNet作为时间序列分析的一种新的任务通用模型。借助TimesBlock, TimesNet可以发现时间序列的多周期性,并在模块化架构中捕获相应的时间变化。具体而言,TimesBlock可以根据学习周期自适应地将一维时间序列转换为一组二维张量,并通过参数有效的初始块进一步捕获二维空间中的周期内和周期间变化。在实验上,TimesNet在短期和长期预测、插值、分类和异常检测等五个主流分析任务中达到了一致的最优水平。本文的贡献可以概括为三个方面:

(1)基于多周期和周期内与周期间复杂的相互作用,本文找到了一种模块化的时间变化建模方法。通过将一维时间序列转换为二维空间,可以同时表示周期内和周期间的变化。

(2)本文提出了带有TimesBlock的TimesNet,通过参数有效的初始块来发现多个周期并捕获转换后的2D张量的时间变化。

(3)作为一种任务通用基础模型,TimesNet在五种主流时间序列分析任务中达到了一致的最新水平。包括详细和富有洞察力的可视化。

b171dc853724963a9c623c5fd02e4f2d.png

方法论

c793a09738741be66fd7ac0170f8e395.png

如上所述,基于时间序列的多周期性,本文提出了一个模块化架构的TimesNet来捕获不同时期的时间模式。对于每个周期,为了捕获相应的周期内和周期间变化,在TimesNet中设计了一个TimesBlock,它可以将1D时间序列转换为2D空间,并通过参数有效的初始块同时对两种类型的变化进行建模。

1.一维时间序列转换为二维

如图1所示,每个时间点在不同时期之间同时涉及与相邻区域和同相位的两种时间变化,即周期内变化和周期间变化。然而,这种原始的一维时间序列结构只能呈现相邻时间点之间的变化。为了解决这一限制,本文探索了时间变化的二维结构,它可以明确地表示时间段内和时间段之间的变化,从而在表示能力上更具优势,有利于后续的表示学习。

对于一个长为T、C个变量的时间序列,一维原始序列可以表示为6bdf1f8d1dac3c5d2c5e4b9381154768.png,为了捕获周期间的变化,本文采用了快速傅里叶变换(FFT)在频域分析时间序列:

3b655876b1334b71372591d6650e1ff4.png

4e1b67240c21c757602efb36d8947e20.png表示通过FFT得到的时间序列不同频域下的振幅,Avg()表示对C个变量所得到的振幅进行平均操作。考虑到频域的稀疏性和避免无意义高频带来的噪声,只选择前k个振幅值,并获得最显著的频率06bc27da54eae29831f3b0863e75586b.png,相应的振幅0ad38f83472565b176b119dcdcc960f6.png,和相应的周期dac301ad1a5c0f56ff42d149a816c1f6.png。可以将上式总结为:

9cf34a3b3d7eb19fe576e5291a588516.png

基于上述操作,可以将时序变换为二维空间:

13af7a3bac0d4b1c07682a86687ae4e1.png

其中Padding()表示将时间序列长度T扩展到能够3809caf652065a4fa00ba6a5c5587acb.png9cb43b1295fb2763bec850859d51dc08.png表示基于频率i和周期i得到的二维变换后的时间序列。

同样值得注意的是,该变换为变换后的二维张量带来了两种类型的局部,即相邻时间点(列,周期内变化)和相邻周期(行,周期间变化)之间的局部。

8f9112abbba5ca7b7ed8f15e9b646237.png

2.TimesBlock

470d149ddd8831aa479744839f96a8a3.png

TimesNet有多个TimesBlock堆叠而成,如图3所示,对于TimesNet的第l层,输入为5b6b021a4ef11ed6444b3d7787274b47.png,其过程可以形式化为:

041649cfe93ea639bc0bed42db8593fb.png

对于第l个TimesBlock,整个过程包括两个连续的部分:捕获时间2D变化和自适应地聚合来自不同时期的表征。

(1)捕获二维变化:首相通过上述操作,将一维时间序列变换到二维,然后采用多个二维卷积核获取周期内和周期间的变化:

f2cae4f07ca321070fd7d495dacdbc88.png

其中,Trunc()表示上述Padding()的逆操作使二维时间序列重新转换为长为T的一维时间序列。

(2)自适应聚合:幅值A可以反映所选频率和周期的相对重要性,从而对应每个变换后的二维张量的重要性。因此,本文基于振幅聚合了一维表示:

d4124b0d01294329a8a7d8d88c981a7d.png

61061393a4edfe651ae9b9cf4d358ef6.png

实验

ea9574d297205be69571971c5c84e510.png

为了验证TimesNet的通用性,本文为对五种主流分析任务进行了广泛的实验,包括短期和长期预测、插值、分类和异常检测。

1.短期和长期预测

b16b105b495d0af2fae96cb956d5c794.png

f58e01a5cd11ba138d7620020e483e1d.png

TimesNet在长期和短期预测都表现出很好的性能(表2-3)。具体来说,TimesNet在超过80%的长期预测案例中达到了最先进的水平(表13)。对于M4数据集,由于时间序列是从不同的来源收集的,因此时间变化可能相当多样化,这使得预测更具挑战性。我们的模型在这项任务中仍然表现最好,超过了广泛的先进的基于MLP和基于Transformer的模型。

2.插值

595012fc51772d5cddee36b5977b232f.png

由于时间点的缺失,模型需要从不规则和部分观测到的时间序列中发现潜在的时间模式。如表4所示,TimesNet在这项困难的任务中仍然达到了一致的最新水平,验证了模型从极其复杂的时间序列中捕获时间变化的能力。

3.分类

8011b0546a22974897a007878bfde0ca.png

如图5所示,TimesNet的平均准确率达到了73.6%,超过了之前最先进的经典方法Rocket(72.5%)和deep model Flowformer(73.0%)。同样值得注意的是,基于mlp的模型DLinear在该分类任务中失败(67.5%),它在一些时间序列预测数据集上表现良好。这是因为DLinear在时间维度上只采用了一层MLP模型,这种模型可能适用于一些具有固定时间依赖性的自回归任务,但在学习高级表示时会退化很多。相比之下,TimesNet将二维时空变化统一到二维空间中,便于学习二维核的信息表示,从而有利于需要分层表示的分类任务。

4.异常检测

006b62e82d0cb5930a7826e230e0baf9.png

表5表明,TimesNet在异常检测方面仍然取得了最佳性能,优于基于变压器的先进模型FEDformer和Autoformer。规范的Transformer在此任务中表现较差(平均f1得分为76.88%)。这可能是因为异常检测需要模型找出罕见的异常时间模式,而注意机制计算每对时间点之间的相似性,这可能会被占主导地位的正常时间点分散。此外,考虑到周期性,TimesNet、FEDformer和Autoformer都取得了很好的性能。因此,这些结果也证明了周期性分析的重要性,它可以隐式地突出违反周期性的变化,进一步有利于异常检测。

85ac14bd134fdd70515e9838c3163f75.png

结论

60a3008f3465367c25333a070ae0274c.png

本文提出了时间网络作为时间序列分析的任务通用基础模型。在多周期性的驱动下,TimesNet可以通过模块化架构来解决复杂的时间变化,并通过参数有效的初始块捕获二维空间中的周期内和周期间变化。实验表明,TimesNet在五种主流分析任务中表现出良好的通用性和性能。

  • 4
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
TimesNet 是一种基于卷积神经网络(CNN)的时间序列分析模型,它可以用于处理时间序列数据。与传统的时间滑窗方法不同,TimesNet 不需要显式地使用固定长度的窗口来处理时间序列数据。 TimesNet 使用一维卷积神经网络来捕捉时间序列数据中的局部模式和全局依赖关系。它通过卷积和池化操作来提取时间序列数据的特征,并使用全局池化层来汇总这些特征。最后,通过全连接层和输出层进行预测或分类。 相比于时间滑窗方法,TimesNet 具有以下优势: 1. 灵活性:TimesNet 不需要显式设置固定长度的窗口,而是通过卷积和池化操作自动提取时间序列数据中的特征。这使得模型更加灵活,可以适应不同长度的时间序列数据。 2. 参数共享:通过卷积操作,TimesNet 可以共享参数来处理不同位置和时间步上的特征。这大大减少了模型的参数量,提高了模型的效率和泛化能力。 3. 局部特征捕捉:由于卷积操作可以捕捉局部模式,TimesNet 可以更好地捕捉时间序列数据中的短期依赖关系和局部特征。 需要注意的是,TimesNet 仍然需要将时间序列数据分为训练集和测试集,并进行适当的预处理。而时间滑窗方法可以作为一种数据预处理的手段,用于时间序列数据切分成固定长度的窗口。这样可以将时间序列数据转化为适用于卷积神经网络的输入形式。 综上所述,TimesNet 是一种基于卷积神经网络的时间序列分析模型,它与传统的时间滑窗方法相比具有更大的灵活性和参数共享优势,但仍需要对时间序列数据进行适当的预处理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

当交通遇上机器学习

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值