#AAAI#
今天分享的是AAAI 2019的一篇论文《Attention Based Spatial-Temporal Graph Convolutional Networks for Traffic Flow Forecasting》
原文链接:https://ojs.aaai.org//index.php/AAAI/article/view/3881
对于交通领域的研究人员和从业者来说,预测交通流量是一个关键问题。然而,这是非常具有挑战性的,因为交通流通常表现出高度的非线性和复杂的模式。现有的交通流预测方法大多缺乏对交通数据动态时空相关性的建模能力,因此无法产生令人满意的预测结果。
在本文中,作者提出了一种新的基于注意力的时空图卷积网络(ASTGCN)模型来解决交通流预测问题。 ASTGCN 主要由三个独立的组件组成,分别对交通流的三个时间属性进行建模,即“近期”、“日周期”和“周周期”依赖关系。更具体地说,每个组件包含两个主要部分:1)时空注意机制,以有效捕捉交通数据中的动态时空相关性;2)时空卷积,它同时使用图卷积来捕获空间模式和通用标准卷积来描述时间特征。对三个分量的输出进行加权融合,生成最终的预测结果。对来自 Caltrans 性能测量系统 (PeMS) 的两个真实数据集的实验表明,所提出的 ASTGCN 模型优于最先进的Baselines。
公路交通流量预测是时空数据预测的典型问题。高速公路网络上交通数据的相关性在空间维度和时间维度上都表现出很强的动态性。如何探索非线性复杂的时空数据,发现其固有的时空模式,并做出准确的交通流量预测,是一个非常具有挑战性的问题。
近年来,许多研究人员使用深度学习方法处理高维时空数据,即采用卷积神经网络(CNN)来有效提取基于网格的数据的空间特征;图卷积神经网络(GCN)用于描述基于图的数据的空间相关性。然而,这些方法仍然无法同时对交通数据的时空特征和动态相关性进行建模。
为了应对上述挑战,作者提出了一种新颖的深度学习模型:基于注意力的时空图卷积网络(ASTGCN)来预测交通网络上每个位置的交通流量。该模型可以直接在原始的基于图的交通网络上处理交通数据,有效捕捉动态时空特征。该模型主要贡献如下:
(1)提出了一种时空注意机制来研究动态时空相关性。利用空间注意力机制捕捉不同位置之间的动态空间相关性,利用时间注意力机制捕捉不同时间之间的动态时间相关性。
(2)设计了一种时空卷积模块,用于时空相关性建模。它包括从原始的基于图的交通网络结构中获取空间特征的图卷积,以及描述邻近时间依赖关系的标准时间维卷积。
(3)在现实世界的高速公路交通数据集上进行了广泛的实验,验证了该模型与现有Baselines相比实现了最佳预测性能。
将交通网络定义为无向图 G = ( V , E , A ) G=(V,E,A) G=(V,E,A),如图2(a)所示,其中 V V V为 ∣ V ∣ = N |V|=N ∣V∣=N个节点的集合; E E E是一组边,表示节点之间的连通性; A ∈ R ( N × N ) A\in R(N×N) A∈R(N×N)表示图 G G G的邻接矩阵。每个节点检测到 F F F个观测值(速度、流量、时间占有率),代表着该节点的 F F F个特征,如图2(b)实线所示。
作者利用过去 T T T个时间节点的数据(速度、流量和时间占有率)预测未来 P P P个时间点的交通流量,即输入为 X ∈ R ( N × F × T ) X\in R(N×F×T) X∈R(N×F×T), 输出为 Y ∈ R ( N × P ) Y\in R(N×P) Y∈R(N×P),其中 N N N为观测站数据, F = 3 F=3 F=3为每个节点的三个特征, T T T为输入的 T T T个时间步, P P P为输出的时间步。
本文章的算法框架如图:
框架主要包含3个部分,分别提取邻近、日、周依赖特征。该三部分具有相同的网络结构,每部分由多个时空块和一个全连接层组成。在每个时空块中都有时空注意力模块和时空卷积模块。为了优化训练效率,文章采用了残差连接。最后,利用一个参数矩阵对三个分量加权合并,得到最终预测结果。
1、空间注意力机制
在空间维度上,不同位置的交通状况相互影响,相互影响具有很强的动态性。因此作者使用注意力机制自适应地捕捉空间维度中节点之间的动态关联性。以最近组件中的空间注意力为例:
S = V S ⋅ σ ( ( X h ( r − 1 ) W 1 ) W 2 ( W 3 X h ( r − 1 ) ) T + b s ) ( 1 ) S=V_S·\sigma((X_h^{(r-1)}W_1)W_2(W_3X_h^{(r-1)})^T+b_s)\ (1) S=VS⋅σ((Xh(r−1)W1)W2(W3Xh(r−1))T+bs) (1)
S i , j ′ = e x p ( S i , j ) ∑ j = 1 N e x p ( S i , j ) ( 2 ) S^{'}_{i,j}=\frac {exp(S_{i,j})}{\sum_{j=1}^Nexp(S_{i,j})}\ (2) Si,j′=∑j=1Nexp(Si,j)exp(Si,j) (2)
维度关系: X ∈ R ( N ∗ C ∗ T ) X\in R(N*C*T) X∈R(N∗C∗T),其中 N N N代表 N N N个观测点, C C C表示三个观测值(流量,速度和时间占有率), T T T代表输入的 T T T个时间步。 W 1 ∈ R ( T ) , W 3 ∈ R ( T ) , W 2 ∈ R ( C ∗ T ) W_1\in R(T),W_3\in R(T),W_2\in R(C*T) W1∈R(T),W3∈R(T),W2∈R(C∗T)是可学习参数, σ \sigma σ是激活函数, V ∈ R ( N ∗ N ) , b ∈ R ( N ∗ N ) V\in R(N*N),b\in R(N*N) V∈R(N∗N),b∈R(N∗N),通过公式(1)得到最终结果 S ∈ R ( N ∗ N ) S\in R(N*N) S∈R(N∗N)。
公式(2)为 s o f t m a x softmax softmax函数的表示形式,目的是将注意力矩阵 S S S进行归一化。归一化后的注意力矩阵 S ′ S' S′在后面的图卷积中将与邻接矩阵 A A A进行相乘,动态调整节点之间的影响权重。
2、时间注意力机制
在时间维度上,不同时间段的交通状况之间存在相关性,不同情况下的相关性也不同。同样,我们使用注意机制来自适应地赋予数据不同的权重。
E = V e ⋅ σ ( ( ( X h ( r − 1 ) ) T U 1 ) U 2 ( U 3 X h ( r − 1 ) ) + b e ) ( 3 ) E=V_e·\sigma(((X_h^{(r-1)})^TU_1)U_2(U_3X_h^{(r-1)})+b_e)\ (3) E=Ve⋅σ(((Xh(r−1))TU1)U2(U3Xh(r−1))+be) (3)
E i , j ′ = e x p ( E i , j ) ∑ j = 1 T r − 1 e x p ( E i , j ) ( 4 ) E^{'}_{i,j}=\frac {exp(E_{i,j})}{\sum_{j=1}^{T_{r-1}}exp(E_{i,j})}\ (4) Ei,j′=∑j=1Tr−1exp(Ei,j)exp(Ei,j) (4)
维度关系: X ∈ R ( N ∗ C ∗ T ) X\in R(N*C*T) X∈R(N∗C∗T),其中 N N N代表 N N N个观测点, C C C表示三个观测值(流量,速度和时间占有率), T T T代表输入的 T T T个时间步。 U 1 ∈ R ( N ) , U 2 ∈ R ( C ∗ N ) , U 3 ∈ R ( C ) U1\in R(N),U2\in R(C*N),U3\in R(C) U1∈R(N),U2∈R(C∗N),U3∈R(C)是可学习参数, V ∈ R ( T ∗ T ) , b ∈ R ( T ∗ T ) V\in R(T*T),b\in R(T*T) V∈R(T∗T),b∈R(T∗T),通过公式(3)得到最终结果 E ∈ R ( T ∗ T ) E\in R(T*T) E∈R(T∗T)。
公式(4)为 s o f t m a x softmax softmax函数的表示形式,目的是将注意力矩阵 E E E进行归一化。归一化后的注意力矩阵 E ′ E' E′将与输入矩阵 X X X进行相乘得到最终输入。
前面的时空注意力模块是在为图卷积模块准备数据。作者提出的时空卷积模块由空间维上的图卷积和时间维上的标准卷积组成。
1、空间维度上的图卷积
为了充分利用交通网络的拓扑性质,采用基于谱图理论的图卷积来直接处理信号。在谱图分析中,图由其对应的拉普拉斯矩阵表示。但当图的规模较大时,直接对拉普拉斯矩阵进行特征值分解是昂贵的。因此,可以采用切比雪夫多项式近似:
g θ ∗ G x = g θ ( L ) x = ∑ k = 0 K − 1 θ k T k ( L ~ ) x ( 5 ) g_\theta*_Gx=g_\theta(L)x=\sum_{k=0}^{K-1}\theta_kT_k(\tilde{L})x\ (5) gθ∗Gx=gθ(L)x=k=0∑K−1θkTk(L~)x (5)
其中 ∗ G *G ∗G表示图卷积操作, g θ g_\theta gθ是卷积核, x x x是图 G G G上的信号, θ ∈ R ( K ) \theta\in R(K) θ∈R(K)为多项式系数的向量。
并给出 L ~ = 2 λ m a x L − I N \tilde{L}=\frac{2}{\lambda_{max}}L-I_N L~=λmax2L−IN,其中 λ m a x λ_{max} λmax为拉普拉斯矩阵的最大特征值,切比雪夫多项式的迭代关系为:
T k ( x ) = 2 x T k − 1 ( x ) − T k − 2 ( x ) w h e r e T 0 ( x ) = 1 , T 1 ( x ) = x T_k(x)=2xT_{k-1}(x)-T_{k-2}(x) \ where\ T_0(x)=1,T_1(x)=x Tk(x)=2xTk−1(x)−Tk−2(x) where T0(x)=1,T1(x)=x
相当于利用卷积核 g θ gθ gθ提取 0 0 0到 ( K − 1 ) (K−1) (K−1)阶邻居的信息。将空间注意力机制应用到该图卷积过程中即为:
g θ ∗ G x = g θ ( L ) x = ∑ k = 0 K − 1 θ k ( T k ( L ~ ) ⊙ S ′ ) x ( 6 ) g_\theta*_Gx=g_\theta(L)x=\sum_{k=0}^{K-1}\theta_k(T_k(\tilde{L})⊙S')x\ (6) gθ∗Gx=gθ(L)x=k=0∑K−1θk(Tk(L~)⊙S′)x (6)
2、时间维度上的标准卷积
图卷积获取了邻域信息,在此基础上再叠加标准的卷积层,在时间维度进一步合并相邻的时间步信息。
X h ( r ) = R e L U ( Φ ∗ ( R e L U ( g θ ∗ G X ^ h ( r − 1 ) ) ) ) ∈ R C r × N × T r ( 7 ) X_h^{(r)}=ReLU(\Phi*(ReLU(g_\theta*_G\hat X_h^{(r-1)}))) \in \mathbb{R}^{C_r×N×T_r}\ (7) Xh(r)=ReLU(Φ∗(ReLU(gθ∗GX^h(r−1))))∈RCr×N×Tr (7)
上面介绍的时空注意力模块和时空卷积模块构成了一个总的时空块。多个时空块叠加,可进一步提取更大范围的动态时空关联性。最后,增加一个全连接层,保证各分量的输出具有与预测目标相同的尺寸和维度。
当不同组件的输出被融合时,三个组件对于每个节点的影响权重是不同的,并且应该从历史数据中学习它们。所以融合后的最终预测结果是:
Y ^ = W h ⊙ Y ^ h + W d ⊙ Y ^ d + W w ⊙ Y ^ w ( 8 ) \hat{Y}=W_h⊙\hat{Y}_h+W_d⊙\hat{Y}_d+W_w⊙\hat{Y}_w\ (8) Y^=Wh⊙Y^h+Wd⊙Y^d+Ww⊙Y^w (8)
该图为不同模型的预测效果比较。
数据集
1、PeMSD4——包括一个csv文件和一个npz文件。
2、PEMSD8——包括一个csv文件和一个npz文件。
Baselines
评估指标
本文提出了一种新的基于注意力的时空图卷积模型,称为ASTGCN,并成功应用于预测交通流量。该模型结合了时空注意力机制和时空卷积,包括空间维度的图卷积和时间维度的标准卷积,同时捕捉交通数据的动态时空特征。在两个真实世界数据集上的实验表明,所提出模型的预测精度优于现有模型。未来,作者将考虑一些外部影响因素,进一步提高预测的准确性。