SageFormer:用于多变量时间序列预测的系列感知图增强变压器

KDD 2023

摘要

多元时间序列预测在各个领域都具有重要作用。虽然最近深度学习方法的进步,特别是变形金刚,已经显示出了希望,但在解决系列间依赖关系的重要性方面仍然存在差距。本文介绍了SageFormer,一个系列感知图增强的Transformer模型,设计用于使用图结构有效地捕获和建模系列之间的依赖关系。SageFormer解决了两个关键挑战:跨系列有效地表示不同的时间模式,并减轻系列之间的冗余信息。重要的是,提出的系列感知框架与现有的基于transformer的模型无缝集成,增强了它们对系列间依赖关系建模的能力。通过在真实世界和合成数据集上的大量实验,我们展示了与之前最先进的方法相比,SageFormer的优越性能。

1 介绍

多变量时间序列(Multivariate Time Series, MTS)数据由多个单变量序列组成,是MTS预测任务的基础,MTS预测任务的目的是基于一个固定的历史序列窗口来预测未来的趋势。MTS预测的价值超越了学术兴趣,在日常生活和众多行业中都有重要的应用。它促进了能源[1]、金融[2]和天气[3]等不同领域的资源管理和战略规划。近年来,与传统方法(如ARIMA、SSM[10])相比,深度学习方法[4,5],特别是Transformer结构[6,7,8,9]在MTS预测任务上取得了显著突破。

图1:对系列依赖关系建模的三种不同方式的说明:(a)提出的系列感知框架。在将原始输入令牌输入到Transformer编码器之前,我们合并了可学习的全局令牌来捕获每个系列的内在特征。嵌入令牌通过多个SageFormer层进行处理,其中迭代地执行时间编码和图聚合。(b)序列混合框架将每个时间戳的所有序列组合成单个标记向量。(c)独立于序列的框架分别处理每个序列,改进对不同序列的独特时间模式的学习。

在许多基于transformer的研究中,不同系列之间的依赖关系经常被忽略。这些模型通常通过线性转换将不同的序列合并为隐藏的时间嵌入(序列混合框架,图1b)。这些模型主要关注时间依赖性,很大程度上忽略了序列之间的关系[11]。最近,一些研究[12,13]发现有意忽略序列间依赖关系建模(序列独立框架,图1c)可以改善预测结果,因为它对分布漂移具有鲁棒性[14]。然而,序列独立框架完全忽略了序列之间的依赖关系,导致在特定数据集上的次优结果(参见章节4.5)。这些发现突出了在建模系列依赖关系、进行准确捕获方面的挑战在MTS预测任务中是一个很有前途的研究方向。为了解决这一研究空白,我们在本文中提出了SageFormer。

现在的工作。本文研究了长期MTS预测问题中的序列间依赖关系。为了准确地建模序列间的依赖关系,我们提出了序列感知的GraphEnhanced Transformer (SageFormer,图1a),这是一种通过图神经网络(GNN)增强的序列感知Transformer模型。通过使用图结构学习时间序列之间的关系,我们的目标是使用全局标记来区分序列,并通过图聚合提高对不同序列中不同时间模式的建模能力。SageFormer可以作为基于transformer的结构的通用扩展,更好地利用系列之间的依赖关系,并在不显著影响模型复杂性的情况下获得卓越的性能。我们认为,提出的SageFormer解决了系列间依赖关系建模中的两个挑战:

1. 如何有效地表示序列中不同的时间模式?我们引入了一种系列感知方法,通过在输入令牌之前合并几个全局令牌来扩展现有的系列独立框架。这些令牌通过自关注捕获每个变量的全局信息,并通过图形聚合促进序列交互。全局令牌的添加使SageFormer不仅可以学习单个序列的时间模式,还可以关注序列之间的依赖关系,从而增强多样性并克服与序列无关的限制(参见4.5节)。

2. 如何避免跨系列冗余信息的影响?我们提出使用稀疏连接的图结构来减少不相关序列中冗余信息的影响。在MTS预测中,由于时间和序列维度的冗余,并非所有信息都是有用的[15]。为了评估使用稀疏数据的模型有效性,我们设计了具有不同序列数的低秩数据集(见第4.5节)。随着序列维度的增加,我们的模型性能保持稳定,有效地利用了低秩特性。相比之下,序列混合方法随着序列维数的增加,预测能力会下降。

我们的贡献有三个方面:

•我们引入了一个新颖的系列感知框架,作为基于transformer的模型的通用扩展。它有效地利用图结构来挖掘序列之间的依赖关系,而不会显著增加模型的复杂性。

•我们提出了SageFormer,一个用于长期MTS预测的序列感知变压器模型。通过集成GNN, SageFormer有效地捕获了序列间的依赖关系,超越了现有的基于transformer的模型在建模这些依赖关系方面的限制。

•实验结果表明,我们的模型在现实世界和合成数据集上都达到了最先进的性能。

2相关工作

多元时间序列预测。MTS预测模型一般分为统计模型和深度模型。许多预测方法从传统工具开始,如V向量自回归模型和V向量自回归移动平均[16,17]。这些典型的统计MTS预测模型假设序列和值之间存在线性依赖关系。随着深度学习的进步,出现了各种深度模型,并且与统计模型相比,它们往往表现出更好的性能。颞卷积网络[5,18]和DeepAR[19]将MTS数据视为向量序列,使用cnn和rnn捕获时间依赖性。

MTS预测变压器。近年来,具有自注意机制的Transformer模型在各个领域都表现优异[20,21,22,23]。许多研究旨在通过解决二次复杂度来提高变压器对MTS的预测能力。值得注意的方法包括Informer[7],它引入了ProbSparse自关注和蒸馏技术;Autoformer[8],融合了分解和自相关的概念;FEDformer[9],采用傅里叶增强结构;和Pyraformer[24],实现金字塔式注意力模块。PatchTST[13]将每个系列划分为多个补丁,并使用独立于系列的Transformer来建模时间模式。虽然这些模型主要关注于减少时间依赖关系建模的复杂性,但它们经常忽略关键的序列间依赖关系。

MTS预测的序列间依赖关系。已经提出了许多方法来明确地增强MTS预测中的序列间依赖性。LSTnet[4]采用CNN处理序列间依赖关系,RNN处理时序依赖关系。基于gnn的模型[25,26,27,28],如MTGNN[28],利用时间和图卷积层来解决这两个依赖关系。STformer[29]将多变量时间序列扁平化为Transformer输入的一维序列,而Crossformer[11]采用维度分段嵌入和两阶段关注层,分别用于有效捕获时间和序列间依赖关系。大多数基于CNN和gnn的模型都难以捕获长期的时间依赖性。STformer[29]和Crossformer[11]将1-D的注意力扩展到2-D,但它们不能明确地揭示级数之间的关系。与上面提到的方法不同,我们提出的SageFormer作为一个通用框架,可以应用于各种基于transformer的模型,利用图结构学习来增强它们捕获序列间依赖关系的能力。

3方法

3.1问题定义

在本文中,我们专注于长期MTS预测任务。设表示C序列在时间步长t处的值。给定一个历史MTS实例,其长度为L,目的是预测MTS值的下一个t步。目的是学习一个映射使用提出的模型(我们省略下标t时,它不会造成歧义)。

我们使用图来表示MTS中的序列间依赖关系,并简要概述了与图相关的相关概念。从图的角度来看,MTS中的不同序列被认为是节点,序列之间的关系使用图邻接矩阵来描述。形式上,MTS数据可以看作是一个信号集。节点集V包含C组MTS数据,其中是一个加权邻接矩阵。aij表示级数i和级数j之间的依赖关系,如果它们不相关,aij等于零。本文使用的主要符号及其含义详见附录A的表6。

3.2概述

SageFormer旨在增强基于transformer的模型在处理系列间依赖关系方面的能力。整个体系结构遵循Transformer编码器管道,符合系列感知框架。Transformer的解码器部分被省略,取而代之的是线性解码器头(算法1中的扁头),证明效率更高[12,13,30]。

SageFormer的编码工作流程,总结为算法1,包含三个关键组件:(1)序列感知的全局令牌,(2)图结构学习,(3)迭代消息传递。

3.3系列感知的全局令牌

从类令牌在自然语言模型[21]和Vision Transformer[31]中的应用中获得灵感,我们为每个系列预先添加可学习的令牌,以封装其相应的全局信息。在第3.5节中,我们使用这些全局令牌,而不是所有令牌,来捕获序列间的依赖关系,从而增强每个子序列的序列意识。

根据PatchTST[13],将输入的MTS 重构为,其中P为子序列补丁长度,C为时间序列个数,N=[(L-P)/S]+2为补丁个数,S为相邻补丁之间不重叠的长度。表示系列c的补丁序列。在Transformer编码块(TEB)之间保持了大小为D的一致潜在向量,具有可训练的线性投影,将Xp映射到D维空间(公式1)。

在修补序列之前添加M个可学习嵌入(全局令牌),表示每个序列自关注后的全局信息,得到有效的输入序列长度为M + N。预先添加全局令牌是为了便于序列之间的交互。

通过1D位置嵌入E_{pos}增强位置信息。X的最终嵌入是,其中

3.4图结构学习

邻接矩阵是端到端学习的,在不需要先验知识的情况下捕获序列之间的隐式关系。在MTS预测任务中,我们假设序列间的依赖关系是单向的(例如,电力负荷影响油温,而不是相反),从而产生由学习图表示的有向关系。

具体来说,整个图结构学习模块可以用下面的方程来描述:通过随机初始化学习序列的节点嵌入。随后,利用将E转化为,并采用非线性act1(式2)。根据MTGNN[28]的方法,采用式3学习单向依赖关系。对于每个节点,选取最邻近的k个节点作为邻居,将未连通节点的权值设为0,得到最终的稀疏邻接矩阵

3.5迭代消息传递

嵌入令牌(见第3.3节)由SageFormer编码器层处理,其中迭代地进行时间编码和图聚合(图2)。这种方法旨在将在GNN阶段收集的全局信息传播到每个系列中的所有令牌中。因此,模型通过迭代的消息传递来捕获序列间的依赖关系。

图2:SageFormer中迭代消息传递过程的说明。每一层都从图形聚合开始,来自所有序列的全局令牌被收集并由多跳GNN组件(最左边的矩形)处理。然后将图形增强的全局令牌分派到其原始系列并由TEB编码。每个TEB的权重在所有系列中共享。

图聚合图聚合阶段的目的是将每个序列的信息与相邻序列的信息融合,从而使每个序列具有相关的模式。对于第l层中的每个序列,我们取前M个嵌入作为第l层的全局令牌:

从所有序列中收集第l层的全局令牌,并将其传递给GNN进行图聚合。为简单起见,我们采用与[25,28]相同的模型进行图聚合:

式4表示图上的多跳信息融合,其中D表示图聚集深度,\tilde{A}为图拉普拉斯矩阵。每个嵌入都被分配到其原始序列,然后与序列标记连接,从而产生图形增强的嵌入

图形增强的嵌入可以稍后由任何Transformer组件(Transformer[20]、Informer[7]、FEDformer[9]等)进行处理。我们选择普通的Transformer编码器[20]作为我们的主干。TEB的输出作为以下编码层的输入令牌级嵌入。以前来自GNN的汇总信息通过自我关注传播给每个系列中的其他代币,从而能够访问相关系列信息。与系列无关的模型相比,这个过程增强了我们模型的表达能力。

4实验

4.1实验设置

数据集。为了评估我们提出的SageFormer,我们在8个主流的真实世界数据集上进行了广泛的实验,包括天气、交通、电力、ILI(流感样疾病)和4个ETT(电力变压器温度)数据集。这些多变量数据集的细节如表1所示。在所有数据集中,交通和电力具有更多的序列,可以更好地反映所提出方法的有效性。

基线和任务设置。我们将我们提出的方法与九种流行的长期MTS预测模型作为基准进行比较,其中包括三种明确利用序列间依赖关系的模型:Crossformer[11]、MTGNN[28]和LSTnet[4];两个序列无关的神经模型:DLinear[12]和PatchTST[13];以及变压器[20]、信息器[7]、自耦器[8]、非稳态变压器[32]等四种混联变压器型号。

实现细节。对于模型训练和评估,我们采用与[30]相同的设置。整个数据集以1的步长滚动生成不同的输入输出对,Train/V al/Test集使用训练集的均值和标准差进行零均值归一化。性能是通过每个数据集上不同的未来窗口大小来评估的。ILI设置过去序列长度为36,其他设置为96。均方误差(MSE)和平均绝对误差(MAE)作为评价指标。所有实验进行了五次,并报告了指标的平均值。关于数据集、基线、实现和超参数的详细信息可以在附录A中找到。

4.2主要结果

表2:长期预测任务。加粗/下划线表示最佳/第二名。蓝色背景标志着模型明确利用序列间依赖关系;绿色标记系列无关神经模型;黄色标志为混联变压器型号。所有结果均取4个不同预测长度的平均值,即ILI为{24,36,48,60},其他为{96,192,336,720}。完整结果见附录A表8。

长期预测结果。表2给出了建议的SageFormer和其他基线模型的预测结果。该表显示了所建议的模型在所有基准测试和预测长度上一致地实现了最先进的性能。值得注意的是,SageFormer在具有大量序列的数据集上显著优于其他深度模型,与之前的最先进结果相比,流量的平均MSE降低了7.4%(0.471→0.436),电力的平均MSE降低了9.3%(0.193→0.175)。我们的模型在每个数据集上都有很大的改进,特别是与明确利用序列间依赖关系的模型相比。这表明我们提出的方法有效地提高了模型捕捉多个序列之间关系的能力。

框架通用性。此外,我们的模型可以作为基于transformer的体系结构的通用扩展。为了验证这一点,我们将SageFormer框架应用于三个突出的transformer,并报告每个模型的性能增强,如表3所示。我们的方法持续提高了不同模型的预测能力,证明了SageFormer是一个有效的、普遍适用的框架。通过利用图结构,可以更好地利用各种序列之间的相互依赖关系,最终达到优越的预测性能。

表3:通过将建议的框架应用于Transformer及其变体来提升性能。我们报告了所有预测长度的平均MSE/MAE(与表2相同)。完整结果(在所有预测长度下)见附录A中的表7

4.3消融研究

消融研究是为了解决两个主要问题:1)图聚合的影响和2)系列感知全局令牌的影响。我们指定没有特定组件的SageFormer变体,如表4所示。

表4:模型架构缩减(报告的MSE度量)。图聚合:消除编码器中的图聚合;-全局令牌:图形信息传播应用于所有没有全局令牌的令牌;-稀疏图:去除图结构学习中的k近邻约束;-有向图:从有向图学习到无向图的图结构修正。

首先,实验验证了图结构在时间序列预测模型中的有效性。从每个编码器层去除图形聚合模块导致预测精度大幅下降。在Traffic数据集上,平均下降了7.3%,在七个系列的ETTh1数据集上,平均下降了2.8%,这表明图结构在多个系列的数据集上更能提高性能。其次,序列感知的全局令牌增强了模型的预测精度,同时减少了计算开销。如果所有令牌(不仅仅是全局令牌)都参与图传播计算,那么模型在Traffic和ETTh1数据集上的性能将分别下降6.3%和1.6%。最后,我们发现像稀疏约束和图构造中的有向图这样的技术对于更大的数据集(例如流量)更有效。相比之下,它们对较小数据集的预测结果几乎没有影响。这一发现表明,应用稀疏约束可以减轻变量冗余对模型的影响,同时节省计算资源。

4.4超参数的影响

在本节中,我们将研究四个超参数对我们提出的SageFormer模型的影响:全局令牌长度、图聚合深度、最近邻数量和编码器层深度。我们对流量数据集进行了敏感性分析(图3)。对于四项任务中的每一项,无论选择的值如何,SageFormer都始终提供稳定的性能。

全局令牌长度(图3a):模型的性能在所有预测窗口中保持一致,与M的值无关。为了优化计算效率,我们设置M=1。图聚合深度(图3b):该模型在不同的图聚合深度下表现出稳健的性能。为了平衡准确性和效率,我们设d=3。最近邻居的数量(图3c):较大的k值通常会产生更好的结果,但是当使用完全连接的图时,性能会下降。这表明MTS预测任务中存在序列冗余,因此我们选择k = 16。SageFormer编码器层(图3d):增加编码层的数量会导致模型的参数数量和计算时间增加。在模型超过三层后,没有观察到明显的减少,因此我们将模型的层数设置为3。

4.5综合数据集

有向循环图数据集。在本节中,我们使用由N=10个节点组成的合成数据集研究SageFormer推断的邻接矩阵。每个序列值xi,t从另一个序列(i−1 mod N)中采样,时间滞后\tau = 10,得到邻接矩阵的有向循环图。数据集的详细信息见附录A。

图4a表示了实际的序列间依赖关系以及我们推断的结果,有效地证明了我们的方法成功地恢复了这些依赖关系。如图4b所示,我们提出的系列感知框架优于之前的系列混合和系列独立框架,实现了最低的MAE和MSE测试损失。重要的是,在这种情况下,系列无关框架的性能明显较差,MSE超过1。这一缺陷源于它忽视了该数据集中固有的重要序列间依赖关系,特别是考虑到该数据集中的每个子序列几乎等同于白噪声。

低秩的数据集。为了评估不同模型在处理稀疏数据方面的有效性,我们设计了多个具有不同序列数的Low-rank MTS数据集。受离散正弦变换的启发,我们生成任意信号作为不同正弦波与高斯噪声的和。相同的正弦波在不同的节点之间共享,从而创建了低秩属性。

数据集的详细信息见附录A。

图4c给出了使用序列混合方法和我们的方法对具有不同序列数(N)的数据集的预测MAE结果。可以看出,由于序列混合方法将所有序列信息编码为相同的令牌,因此随着序列数量的增加,序列混合方法的预测性能迅速下降。相反,我们的方法的MAE不随序列数量的增长,表明我们设计的方法可以有效地利用数据集的低秩特征。

4.6计算效率分析

我们比较了我们的模型SageFormer与其他基于transformer的模型的计算效率(表5)。尽管SageFormer的复杂度在理论上是历史序列长度T的二次函数,但在实践中,较大的补丁长度P使其运行时间接近线性复杂度模型。额外的O(C2)复杂度是由于标准的图卷积操作,但存在将其降低为线性复杂度的技术[33,34]。在解码器部分,由于线性解码器头部的流线型设计,将SageFormer的复杂度简化为线性。

我们还评估了流量数据集的运行时间和内存消耗,它具有最多的变量。SageFormer很好地平衡了运行时间和内存使用,每个批处理的运行时间为0.31±0.03秒,消耗12.42 GB内存。这个结果比PatchTST[13]模型稍慢,但比Crossformer[11]模型快。这些结果表明,我们提出的SageFormer模型在效率和预测精度之间表现出一种竞争性的权衡。

表5:基于transformer的模型的每层计算复杂度。T为历史序列的长度,\tau为预测窗口的长度,C为序列的个数,P为每个patch的片段长度。

5结论与未来工作

本文提出了一种用于长期多元时间序列(MTS)预测任务中序列间依赖关系建模的新方法SageFormer。通过将图神经网络(GNN)与Transformer结构相结合,SageFormer可以有效地捕获不同的时间模式并利用不同序列之间的依赖关系。我们的模型通过广泛的实验展示了令人印象深刻的多功能性,在现实世界和合成数据集上提供了最先进的性能。因此,SageFormer提供了一个很有希望的解决方案,以克服系列的局限性MTS中的依赖关系建模预测任务,并展示了在涉及系列间依赖关系的其他领域进一步发展和应用的潜力。

我们也承认我们工作的局限性,并简要描述了未来研究的潜在途径。虽然SageFormer在长期MTS预测中取得了卓越的表现,但它所捕获的依赖关系并不能严格代表因果关系。因此,由于时间序列的非平稳性质,一些依赖关系在实际场景中可能被证明是不可靠的。我们对提高长期预测性能的主要关注在某种程度上导致了对图结构的可解释性的忽视。展望未来,我们的工作可以改进图神经网络组件,以学习变量之间的因果关系并降低其复杂性。本文提出的框架将来也可以应用于非transformer模型。

  • 22
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Python多变量时间序列预测是指使用Python编程语言来预测受多个变量影响的时间序列数据的未来趋势和走势。通常情况下,多变量时间序列预测需要考虑多个相关因素对于目标变量的影响。 首先,需要明确需要进行预测的目标变量和相关变量。可以通过数据收集和分析来确定与目标变量相关的多个预测变量。这些变量可以是同一领域的其他指标,也可以是其他领域的相关指标。 其次,对收集到的多变量时间序列数据进行预处理。这包括数据清洗、缺失值处理、异常值处理以及时间序列数据的平稳化等。通过合适的预处理方法,可以提高模型的准确性和预测性能。 然后,选择适当的预测模型。可以使用Python中的各种机器学习算法和时间序列模型来进行多变量时间序列预测。例如,可以使用线性回归、随机森林、支持向量回归等机器学习算法,也可以使用ARIMA模型、VAR模型等时间序列模型。 接下来,使用收集到的数据进行模型训练。通过将数据集划分为训练集和测试集,可以使用训练集对模型进行训练和参数调整,然后使用测试集进行模型的评估和验证。 最后,使用训练好的模型对未来的多变量时间序列数据进行预测。根据模型的预测结果,可以进行未来走势的分析和决策制定。 总之,Python提供了丰富的数据处理、机器学习和时间序列分析的库和工具,可以用于变量时间序列预测。通过合理选择预测因素和模型,并对数据进行适当的处理和训练,可以得到准确的多变量时间序列预测结果。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值