1、文章信息
《Spatial-Temporal Synchronous Graph Convolutional Networks: A New Framework for Spatial-Temporal Network Data Forecasting》。北京交通大学万怀宇老师团队发在国际顶级会议AAAI2020上的一篇文章。
2、摘要
时空网络数据预测在交通管理和城市规划的大量应用中非常重要。但是,潜在的复杂时空相关性和异质性使这个问题具有挑战性。现有方法通常使用单独的组件来捕获空间和时间相关性,而忽略时空数据中的异质性。在本文中,我们提出了一种新颖的模型,即时空同步图卷积网络(STSGCN),用于时空网络数据预测。该模型能够通过精心设计的时空同步建模机制有效捕获复杂的局部时空相关性。同时,在模型中设计了不同时间段的多个模块,以有效地捕获局部时空图中的异质性。在四个真实的数据集上进行了广泛的实验,这表明我们的方法达到了最先进的性能,并且始终优于其他基准。
3、问题定义
给定交通网络g=(V, E, A)和网络节点上的信号矩阵序列,即历史交通信息x=(x1,x2,..,xn),我们的目的是建立一个模型f,可以将一个长度为T的序列 (Xt-T+1, Xt-T+2,…,Xt)作为输入,预测未来T’个时间步的交通信息 (Xt+1, Xt+2,…,Xt+T’)。
4、模型
我们将STSGCN的核心思想概括为三点:1)在上一个和下一个时间步将每个节点与其自身连接,以构造局部时空图。2)使用时空同步图卷积模块捕获局部时空相关性。3)部署多个模块以对时空网络系列中的异构性进行建模。
本文所提出的STSGCN模型框架如上图所示。我们的STSGCN包含多个时空同步图卷积层(STSGCL),分别具有输入层和输出层。它使用输入层(全连接神经网络)将输入特征转换为更高维度的特征。然后,堆叠的多个STSGCL捕获时空网络序列中的局部时空相关性和异质性。最后,它使用多模块输出层(全连接神经网络)将最终表示映射到输出空间。
接下来分别介绍模型中的不同模块:
(1)局部时空图构造
本文中建立的模型可以直接捕获每个节点对属于当前和相邻时间步的邻居的影响。实现此目标的最直观的想法是在相邻的时间步将所有节点与其自身连接起来。通过在前一刻和下一刻将所有节点连接起来,我们可以获得局部的时空图。根据局部时空图的拓扑结构,可以直接捕获每个节点与其时空邻居之间的相关性。
本文中利用了A∈RN*N代表单个时间步的空间图的邻接矩阵,用A’∈R3N*3N代表表示在三个连续的空间图上构建的局部时空图的邻接矩阵。对于空间图中的节点i,我们可以通过(t − 1)N + i来计算其在局部时空图中的新索引,其中t表示局部时空图中的时间步长。邻接矩阵的构造规则很简单:如果在此局部时空图中两个节点相互连接,则邻接矩阵中的对应值将设置为1,否则为0。局部时空图构造和邻接矩阵示意图如下图所示,局部时空图的邻接矩阵的对角线是三个连续时间步长的空间网络的邻接矩阵。对角线的两侧指示每个节点与属于相邻时间步长的自身的连通性。
(2)时空信息embedding
但是,将不同时间步的节点连接到一个图中会掩盖每个节点的时间属性。换句话说,该局部时空图将处于不同时间步的节点置于相同的环境中,而不会对其进行区分。所以类似transformer模型中位置编码的思想,这篇文章中将位置嵌入到时空网络序列中,以便模型可以考虑时空信息,从而可以增强对时空相关性进行建模的能力。
对于这里的时空序列,文中定义了两个可学习的参数矩阵来分别表示空间位置关系和时间位置关系。是可学习的时间embedding矩阵,而是可学习的空间embedding矩阵。再通过广播操作将这两个嵌入矩阵添加到时空网络序列中,以获得网络序列的新表示形式,如下式所示:
(3)时空同步图卷积模块
文中建立了一个时空同步图卷积模块(STSGCM),以捕获局部时空相关性。STSGCM由一组图卷积运算组成。图卷积运算可以聚合每个节点及其邻居的特征。在本文的图卷积运算中,每个节点汇总其自身及其相邻的时间步的邻居的特征。聚合函数是线性组合,其权重等于节点与其邻居之间的边的权重。然后,我们部署一个具有激活功能的全连接层,以将节点的特征转换为新的空间。该图卷积运算可以表示为:
该图卷积运算是在空间域中定义的,这意味着它不需要计算图拉普拉斯算子。而且,该图卷积运算不仅可以应用于无向图,而且可以应用于有向图。另外,对于局部时空图的每个节点还需要添加自环,以便在聚合特征时允许图卷积运算考虑其自身的特征。本文中堆叠了多个图卷积运算以扩展聚集区域,这可以增加图卷积运算的感受野以捕获局部时空相关性。
需要注意的是,在本文中由于每层图卷积的输入是聚合了三个时间步时空信息的局部时空图,如果初始的输入是T个时间步的单时空图,那么每经过一次图卷积层,输出的单时空图的数量变为T-2个。
对于具有L层的图卷积运算的STSGCM,每个图卷积层的输出将被馈送到聚合层(如图4(a))。聚合层将压缩STSGCM中所有图卷积层的输出。聚合操作分为两个步骤:聚合和裁剪。模型的整体框架如下图所示。
聚合操作:在本文中选择最大池化作为聚合操作。它对STSGCM中所有图卷积层的输出应用逐个元素的max运算。max运算需要所有输出具有相同的大小,因此该模块内的图卷积运算的filter数应相等。最大聚合操作可以表示为:
裁剪操作:裁剪操作(图4(c))删除了上一个和下一个时间步的节点的所有特征,仅保留了中间时刻的节点。这样做的原因本文的作者给出的理由是:构筑的局部时空图已经将相邻时间步的相同空间节点相连并且图卷积运算已经汇总了上一个和下一个时间步中的信息。即使裁剪了两个时间步的信息,每个节点仍包含局部时空相关性。如果堆叠多个STSGCM,并保留所有相邻时间步长的特征,则会在模型中保留大量冗余信息,这会严重损害模型的性能。
(4)其它组件
掩码矩阵:对于STSGCN中的图卷积运算,邻接矩阵A ’决定聚合的权重。但是,每个节点对其邻居的影响程度不同。如果邻接矩阵仅包含0和1,则可能会限制图卷积的表达能力。因此我们在STSGCN中添加了一个可学习的掩码矩阵Wmask来调整聚合权重以使 聚合更合理。这里的掩码操作类似于图注意力网络GAT,为每个邻居节点分配一个权重。式子如下所示:
输入层:本文中在整个网络顶部添加一个全连接层,以将输入转换为高维空间,从而可以提高网络的表示能力。
输出层:输出层作用是将最后一个STSGCL的输出转换为预期的预测。该输出层的输入可以表示为。首先对其进行转置并将其重塑为。然后,我们使用T ’个两层全连接层网络来生成预测,如下所示:
损失函数:本文中选择了Huber损失作为损失函数,如下所示:
5、实验结果
论文中使用了四个数据集,分别是PEMS03,PEMS04,PEMS07和PEMS08。对于一个时间片切分为5分钟,用过去的12个时间步的交通流速预测未来的12个时间步的交通流速。这四个数据集上的最佳模型由4个STSGCL组成,每个STSGCM包含3个图卷积运算,分别具有64、64、64个滤波器。总体试验结果表明该模型优于其他方法。
6、创新点
本文的最大亮点是在时空图的建模上做了改进,构筑了局部时空同步图,将时间尺度与空间尺度的信息同步连接起来。对比以往的工作,时间和空间信息往往都是分开考虑并分别用不同模型捕捉,在本文中只需要图卷积模型就可以同步捕捉时空信息,模型更加简单,从实验结果上看,能够超越以往一些更加复杂的模型。但是个人认为本文中的模型也是有所不足的,STSGCN对于捕捉时空短时依赖的性能会更好,但是对于捕捉时空长时依赖的性能就会相对欠缺,因为模型的每一个输入都是只聚合了相邻的时间片,而没有考虑到更长序列,甚至周期性,趋势性等影响。
Attention
如果你和我一样是轨道交通、道路交通、城市规划相关领域的,可以加微信:Dr_JinleiZhang,备注“进群”,加入交通大数据交流群!希望我们共同进步!