【论文分享】用于多元时间序列的预训练增强的时空图神经网络

#KDD#

今天分享的是KDD 2022的一篇论文《Pre-training Enhanced Spatial-temporal Graph Neural Network for Multivariate Time Series Forecasting》

原文链接:https://dl.acm.org/doi/abs/10.1145/3534678.3539396

摘要

多元时间序列(Multivarite Time Series,MTS)是一种典型的时空数据,包含多条相互关联的时间序列,对MTS进行学习和预测具有至关重要的意义。现在,时空图神经网络 (Spatial-Temporal Graph Neural Networks,STGNNs) 已成为越来越流行的多元时间序列预测方法。不过,受限于模型复杂度,大多数STGNN只考虑短期的历史MTS数据。事实上,时间序列的模式和空间之间的依赖关系需要基于长期历史的MTS数据进行分析。

为了解决这个问题,本文提出了一种新的框架,其中STGNN被一个可扩展的预训练时间序列框架(STEP)所增强。具体来说,作者设计了一个预训练模型TSFormer,从而可以有效地从长期时间序列(例如,过去两周的多元时间序列)中学习到时间模式,并生成片段级的表示。这些表示为STGNNs的短期时间序列输入提供了上下文的信息,并促进了时间序列之间的依赖关系建模。

1.介绍

多元时间序列数据在我们的生活中无处不在,根据历史数据去预测未来趋势,可以帮助人们做出更好的决策。实际上,多元时间序列通常可以形式化为时空图数据,而时空图神经网络 (STGNNs) 在多元时间序列预测方面,可以取得良好的效果。但目前的方法有两个问题:

① STGNN 模型对窗口之外的上下文信息视而不见。而考虑到时间序列通常有噪声,所以模型可能难以区分不同上下文中的短期时间序列。

② 短期信息对于依赖图的建模是不可靠的。

同时,预训练模型目前发展较快,它会从大量未被标记的数据中学习良好的表示,然后将这些表示用于其他下游任务。在自然语言处理领域,许多任务借助从预训练模型中提取的表示,性能显著提高。在计算机视觉领域,MAE 使用基于屏蔽自动编码策略的自监督学习,能够高效地训练大型模型。虽然在自然语言处理和计算机视觉领域,预训练模型取得了显著的成果,但在时间序列预测领域,还未出现效果显著的模型。

2.贡献

为了应对上述挑战,作者提出了一种新颖的框架。本文主要贡献如下:

① 作者提出了一个用于多元时间序列预测的新框架,其中 STGNN 通过预训练模型得到增强。具体来说,预训练模型会生成包含上下文信息的片段级表示,以改进下游模型。

② 作者基于 Transformer 块设计了一个高效的时间序列无监督预训练模型(TSFormer),并通过掩码自动编码策略对其进行训练。此外,还设计了一个图结构学习器用来学习依赖图。

③ 在三个真实世界数据集上的实验结果表明,作者提出的方法可以显著提高下游时空图神经网络的性能,同时预训练模型恰当地捕捉了时间模式。

3.算法框架

在这里插入图片描述
本文应用预训练模型来实现时间序列预测。算法框架主要分为两部分:

左图——预训练阶段。将长期时间序列分成多个片段,并将它们输入 TSFormer,它通过掩码自动编码策略进行训练。

右图——预测阶段。基于预训练的 TSFormer 产生的片段级表示,来增强下游STGNN。

3.1 预训练阶段

3.1.1 掩蔽

这是数据进入编码器的前一步。将来自节点 i i i的输入序列 𝑆 𝑖 𝑆^𝑖 Si,分成 P P P个长度为 L L L的片段,假设 L L L是STGNN模型输入时间序列的常用长度,随机屏蔽一部分序列段,屏蔽率设置为75%,从而创建具有挑战性的自监督任务。

在第一步输入序列段的原因是:

① 片段比单独的点更适合显式提供语义。

② 因为下游 STGNN 将单个片段作为输入,所以采用序列段促进了下游模型的使用。

③ 显著减少了输入到编码器的序列长度,使编码器在预训练阶段更加高效。

3.1.2 编码

编码部分包含三块内容:输入Embedding、位置编码和Transformer块。

① 输入Embedding层是一个线性的投影,可将未遮蔽的空间转换为潜在空间。具体公式如下:

U j i = W ⋅ S j i + b ( 1 ) U^{i}_{j}=W·S^{i}_{j}+b (1) Uji=WSji+b1

其中, W W W b b b是可学习的参数, U U U是模型输入向量。

② 位置编码层用于附加新的顺序信息。与MAE使用的确定性正弦嵌入不同,文章这部分使用“可学习”的位置嵌入,这有助于模型表现出更好的性能。

③ 通过4层Transformer,获得所有未屏蔽序列段的潜在表示 𝐻 𝑗 𝑖 𝐻_𝑗^𝑖 Hji

3.1.3 解码

解码部分包含一系列的Transformer块,它适用于所有的patch(与MAE框架不同,本文在此处不再添加位置嵌入,因为所有patch都已在编码器中添加了位置信息)。之后,应用多层感知 (MLP) 进行预测,其输出维度数等于每个patch的长度。具体来说,该部分的输入输出过程为:给定patch的潜在表示 H j i H^i_j Hji,通过解码器给出重构的序列 S ^ j i \hat{S}^i_j S^ji。另外,解码器仅在预训练阶段用于执行序列重建任务,且可以独立于编码器进行设计。

3.1.4 重建目标

使用损失函数计算原始序列 S j i S^i_j Sji和重构序列 S ^ j i \hat{S}^i_j S^ji之间的平均绝对误差。与其他预训练模型一致,此处只计算被掩蔽patch的损失。另外,所有这些操作都是针对所有时间序列 i i i并行计算的。

3.2 预测阶段

首先,引入图正则化,为基于 TSFormer 表示的图优化提供监督信息。在所有节点之间计算一个图 𝐴 𝑎 𝐴^𝑎 Aa,得益于TSFormer的能力,图 𝐴 𝑎 𝐴^𝑎 Aa可以反映节点之间的依赖关系,这有助于对图结构进行训练。再计算一个非归一化概率 Θ Θ Θ。将 Θ Θ Θ 𝐴 𝑎 𝐴^𝑎 Aa之间的交叉熵作为图结构的正则化 L g r a p h L_{graph} Lgraph

之后进入下游时空图神经网络模块,本文提出的 STEP 框架可以扩展到几乎任何 STGNN中,作者选择了一种代表性方法,即 Graph WaveNet 模型。它将图卷积与扩大卷积相结合,能够高效地捕获时空依赖性。通过多层感知(MLP)回归层,能根据其输出的潜在隐藏表示 H g w H_{gw} Hgw进行预测。

采用以下方式融合 Graph WaveNet 和 TSFormer 的表示:

H f i n a l = S P ( H p ) + H g w ( 2 ) H_{final}=SP(H_p)+H_{gw} (2) Hfinal=SP(Hp)+Hgw2

其中, H p H_p Hp指结合所有节点的 TSFormer 的表示, S P ( ⋅ ) SP(·) SP()是一个语义投射器,将 H p i H^i_p Hpi转换到 H g w H_{gw} Hgw的语义空间。

最后,通过回归层进行预测,使用平均绝对误差作为回归损失 L r e g r e s s i o n L_{regression} Lregression。下游 STGNN 和图结构以端到端的方式进行训练:

L = L r e g r e s s i o n + λ L g r a p h ( 3 ) L=L_{regression}+\lambda L_{graph} (3) L=Lregression+λLgraph3

其中, λ \lambda λ是图正则化项。

4.实验

数据集
在这里插入图片描述

  • METR-LA :它包含2012年3月至6月,4个月期间207个选定传感器的数据。交通信息以每5分钟的速率记录一次,时间片总数为34272个。

  • PEMS-BAY :它包含2017年1月1日到2017年5月31日,6个月内的325个传感器的数据。交通信息以每5分钟的速率记录一次,时间片总数为52116个。

  • PEMS04 :它包含2018年1月1日到 2018年2月28日,2个月内的307个传感器的数据。交通信息以每5分钟的速率记录一次,时间片总数为16992个。

评估指标

  • 平均绝对误差(MAE)
  • 均方根误差(RMSE)
  • 平均绝对百分比误差(MAPE)

实验结果

① 根据MAE、RMSE、MAPE指标进行评估的实验结果如下:

在这里插入图片描述
② 为了直观地探索 TSFormer 学到了什么,通过可视化查看预训练模型的效果如下:
在这里插入图片描述
上图表示的含义分别如下:
(a)学习到的时间周期性(b)重建情况(c)不同片段之间潜在表示的相似性(d)不同片段之间位置嵌入的相似性

5.总结

在本文中,作者提出了一种用于多元时间序列预测的新型 STEP 框架,以解决 STGNN 无法学习长期信息的问题。下游 STGNN 通过可扩展的时间序列预训练模型 TSFormer 得到增强。 TSFormer 能够从长期时间序列中有效地学习时间模式并生成片段级表示,这为 STGNN 的短期输入提供了丰富的上下文信息,并促进了时间序列之间的建模依赖性。对三个真实世界数据集的大量实验表明了 STEP 框架和 TSFormer 模型的优越性。

  • 7
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值