摘要
为了解决许多交通流预测研究方法不能全面地挖掘交通数据中的动态隐藏相关性的问题,研究了动态时空变化特征,提出了一个基于编码器-解码器的交通预测模型。在模型中,编码器和解码器都主要由多头时空注意力机制组成,在两者中间加入了连接注意力机制,以分析路网时空相关性。模型还使用时空嵌入编码与自适应图卷积结合构成的动态嵌入模块来分析节点的动态和静态信息。在两个真实数据集上的实验,证明了该时空模型在长短期流量预测的效果优于其他方法。因此,时空编码器-解码器模型能有效处理复杂的时空序列,提升交通流预测的准确性。
Abstract
In order to solve the problem that many traffic flow prediction research methods are unable to comprehensively explore the dynamic hidden correlations in traffic data, the dynamic spatio-temporal variation characteristics were studied and an encoder-decoder-based traffic prediction model was proposed. In the model, both encoder and decoder mainly consisted of multi-head spatio-temporal attention mechanism modules, and a connection attention mechanism was added in between to analyze the spatio-temporal correlations of the road network. The model also used a dynamic embedding module consisting of a combination of both spatio-temporal embedding coding and adaptive graph convolution to analyze the dynamic and static information of nodes. Experiments on two real datasets demonstrate that the spatio-temporal model outperform other models for long- and short-term traffic prediction. Thus, the spatio-temporal encoder-decoder model can effectively handle complex spatio-temporal sequences and improve the traffic flow prediction accuracy.
智慧交通系统(intelligent transportation system,ITS)是智慧城市中的重要组成部分[1],预测交通流量成为ITS中至关重要的一个环节。交通流的预测包括交通速度、密度、道路利用率、区域流入流出车辆数等特征的预测。通过准确的交通流量预测,路段的拥堵可以被提前警示,以提高交通运输效率。交通流预测的宗旨是交通系统根据历史的交通数据来预测未来的交通状况。近些年来交通预测的研究与应用方面不断扩大,但仍有部分因素导致交通预测成为一个有挑战性的任务。这些因素包括:
1)复杂的空间相关性:路网的结构是基于非欧几里得的,不同区域的道路状况也会因地理位置的不同而具有差异性。
2)复杂的时间相关性:一个传感器附近的交通流量与其历史交通流量息息相关。交通流量会随着时间变化而动态变化。
3)长时间序列导致的误差传播[2]:在较长时间序列中预测交通流量时,会随着时间步长增加而导致预测结果与真实情况之间的误差增大。
交通流预测方法可以分成基于统计方法、机器学习方法和深度学习的模型。最早的交通流预测模型是统计模型,有历史平均值(history average,HA)[3]、自回归综合移动平均值(autoregressive integrated moving average,ARIMA)[4]、向量自回归(vector autoregressive,VAR)[5]和支持向量回归(support vector regression,SVR)[6]等。HA、ARIMA、VAR为基于统计方法的交通流预测模型,它们使用历史数据进行预测,模型理论较为简单,但是大部分模型都是基于线性基础的,因此在变化大的交通流数据预测中很难体现准确的预测结果。SVR模型为基于机器学习的预测模型,可以从数据中提取隐藏信息,但模型性能较差,预测精度也不高。
近年来,深度学习模型被广泛用于交通流预测,尤其是基于图结构的深度学习模型。许多科研人员将交通路网建模为一个图结构,并使用图卷积神经网络(graph convolutional network,GCN)[7]挖掘空间相关性。时间图卷积网络(temporal graph convolutional network,T-GCN)[8]结合GCN和门控递归单元(gated recurrent unit,GRU),其中GCN捕获空间相关性,GRU捕获时间相关性。时空图卷积网络(spatio-temporal graph convolutional networks,STGCN)[9]通过图对交通网络进行建模,在时间、空间两个层次作用图卷积,用于交通流量预测任务。随后一些模型中被加入注意力机制来建模动态时空特征,基于注意力机制的时空图卷积(attention based spatial-temporal graph convolutional networks,ASTGCN)[10]提出了基于注意力的时空图卷积网络模型来解决交通流预测问题。然而以上模型都以固定的邻接矩阵来表示交通路网中的道路连通性,因此图波网络(Graph WaveNet)[11]、自适应图卷积循环网络(adaptive graph convolutional recurrent network,AGCRN)[12]通过开发一个新的自适应依赖矩阵并通过节点嵌入来学习它,可以捕捉交通历史数据中的隐藏空间依赖。文献[13]利用图结构和编码器-解码器结构,提出了一个基于图扩散注意力的交通流预测模型,反映出了路网传感器之间动态变化的交通流。
时空相关性的捕捉和节点的动态变化特征是时序预测模型中需要关注的重点问题。因此本研究的主要内容是设计一个基于编码器-解码器的交通流预测模型,编码器负责对历史交通流量数据进行编码并输出向量,解码器则将编码器输出的向量转化为用于预测的输出序列。在两个真实数据集上进行多项实验,目的是完善对数据的时空关系建模,希望对现有的交通流预测模型做出一定的创新和推动。
1 问题描述及研究动机
将交通路网定义为一个有向图结构 G=(V,E,A)。在图G中:V代表道路网络上的顶点(例如传感器设备),顶点个数N=|V|,构成一个有限集合;E是代表连接顶点之间具有连通性的一组边;A∈RN×N为加权邻接矩阵,代表节点之间的连通性和邻近度,是通过道路距离测量得出的结果。
时间步长t处的交通状况表示为图形信号Xt,Xt∈RN×C,其中C代表交通流量特征的数目(例如,交通量、交通速度等)。
该研究问题可表述为:给定历史时间步长为P的历史数据X=(Xt,Xt+1,···,XtP),表示N个顶点的观测值,X∈RN×P×C,根据X预测所有顶点的下一个Q个时间步长的交通状况Y=(YtP,YtP+1,···,YtP+Q),表示为Y∈RN×Q×D。
考虑大多数基于GCN的模型容易忽略交通流数据中同时存在的时间空间相关性以及每个节点唯一的特征[8-9]。然而编码器-解码器结构和注意力机制相融合的模型可以高效处理变长序列,同时专注于每一个节点的时空变化特征。此外,大部分方法使用的是预定义邻接矩阵来代表路网节点之间的连通性,忽略了节点之间的隐藏空间关联性。虽然部分模型[11-12]通过基于参数学习自适应地捕捉空间相关性,但是它们忽略了节点之间的依赖关系受到时间变化和空间位置变化的影响,因此本模型将时空嵌入编码结合自适应图卷积,将学习到的邻接矩阵随时空变化而自适应改变。
2 研究方法和模型
2.1 时空编码器-解码器模型的总体架构
图1是时空编码器-解码器模型的总体架构。输入特征信息通过全连接层增加维度并提高网络的表达能力。编码器和解码器都包含L个时空多头注意力机制块,用于提取数据的时空相关性。动态图卷积嵌入模块结合时空嵌入和自适应图卷积,对节点的动态和静态状态分别进行嵌入。连接注意力机制处理短期流量预测模块和编码器的输出,并结合动态图卷积嵌入,将它们转换并送入解码器。所有层的输出维度表示为D。下面会详细介绍每个模块。

图1时空编码器-解码器模型的总体架构
Fig.1Overall architecture of the spatio-temporal encoder-decoder model
2.2 短期流量预测模块
短期交通流量预测一般指预测未来30 min以内的流量。短期预测模块是ReLU激活函数[14]和卷积神经网络(convolutional neural network,CNN)[15]构成,先前的研究已证实CNN可有效获取短期时间依赖关系[16]。本模块设计结构如图2所示。把张量X=(Xt,Xt+1,···,XtP)作为输入,得到了可初始化预测的一个张量。模块的输出记作XS∈RN×P×D,从输入X到输出XS的过程记为:
(1)
式中,Short代表短期流量输出函数。设置二维卷积核大小为3×3,移动步长为1,且卷积层的输入输出通道数都为64。因为交通流数据是高维度的,卷积神经网络共享卷积核,处理高维数据压力较小,ReLU激活函数能加快网络训练速度,增加网络非线性,且残差连接防止了梯度爆炸等现象,所以基于CNN和残差连接的短期流量预测模块能在短期预测中达到很好的效果。

图2短期流量预测模块结构
Fig.2Short-term flow forecasting module structure
2.3 动态图卷积嵌入模块
2.3.1 时空嵌入
空间嵌入将图G顶点编码到交通路网图结构中,表示为es∈RN×D。这些向量描述了N个传感器顶点的D维特征信息,构成了空间嵌入向量集。这里的空间嵌入表示的是道路的静态情况,是有预先定义性质的,所以还需要利用时间步长来构造动态的时间嵌入。
时间嵌入考虑到交通流量的周期性变化,加入了1 d里的T个时间步长和7 d里的7个时间步长来组成二维时间编码,并使用One-hot独热编码来表示为et∈RT+7,然后通过全连接层映射到维度D。
最后,时空嵌入是空间嵌入和时间嵌入相加而成,节点vi在时间步tj的表示为:
(2)
式中,f1,f2代表映射维度的全连接层。N个节点在P+Q个时间步长的情况下表示为est∈R(P+Q)×N×D,它包含了整个输入特征中历史时间以及未来预测的时间片段信息。
2.3.2 自适应图卷积
在本模型中,GCN直接用于结构化交通图形数据,提取空间特征信息。
为了解决静态的预定义图很难体现相邻路网节点之间真实依赖关系的问题,本设计提出了动态自适应邻接矩阵Aapt,它能够从数据中自动学习并推断出节点之间隐藏的相互依赖关系。许多研究[11,18-19]表明,使用自适应邻接矩阵代替预定义邻接矩阵在交通预测任务中能体现出更多优势。自适应矩阵为:
(3)
式中,EA∈RN×D是随机初始化的可训练参数矩阵,每一行表示节点的嵌入,D表示嵌入维度,通过EA与自身的转置相乘,导出了所有节点的空间相关性权重。因某些距离较远的节点之间连接性很弱,所以需要使用ReLU激活函数来消除弱连接性[13]。应用Softmax函数[20]对自适应邻接矩阵进行归一化。参考Xie等工作[7],并通过结合自适应邻接矩阵和输入的图结构信息,将GCN操作定义为:
(4)
式中,X∈RN×P×D是GCN含有拓扑信息的输入特征信息,Z∈RN×P×D则是GCN的输出,W是可学习权重矩阵,b为偏置项。自适应图卷积可以自动学习交通路网中节点邻域之间的具有变换性的特征信息,提高了计算效率。
最后,通过时空嵌入增强自适应图卷积,提取了交通路网中静态和动态的信息,得到动态图卷积嵌入模块的最终输出XG∈RN×Q×D,表示为:
(5)
2.4 编码器-解码器模块
先前的研究图多头注意力网络(graph multi-attention network,GMAN)[2]和时空 Transformer网络(spatial-temporal Transformer networks,STTN)[21]等都使用了时空注意力,并将时空嵌入或位置编码与注意力模块连接。但这些方法还不足以充分挖掘隐藏状态下的时空依赖,因此本模型通过融合动态图卷积嵌入来加强时空注意力机制以解决此问题。
2.4.1 编码器
编码器主要的任务是将历史交通数据转化为一个有隐藏含义的输出向量。2.3节中的动态图卷积嵌入模块的输出XG和输入特征X分别送入编码器的多头注意力机制模块中,编码器的输入记为XEin。
1)多头空间注意力机制。交通特征信息融合动态图卷积嵌入能够自适应地捕捉交通路网中传感器之间的相关性,关键思想是在不同的时间步长向不同的顶点动态分配不同的权重。因此,将XEin映射到3个矩阵:query矩阵QS,key矩阵KS,value矩阵VS。多头注意力机制可以关注多个方面信息,以获取更完整的数据,将QS,KS,VS拆分成维度d=D/h,h为多头注意力的头数目。空间注意力机制可以描述为:
(6)
式中,AS∈RN×P×D为注意力机制得分矩阵;分母是为了使训练过程中梯度值保持稳定;在交通路网中,VN表示传感器(或节点的数量),通过归一化,模型可以动态地比较不同节点的重要性。下一步,将h个头的空间注意力矩阵拼接在一起,得到:
(7)
式中,WO∈RN×P×D为可训练参数矩阵,为拼接操作。
2)多头时间注意力机制。因为时间相关性会受到交通状态和相应时间段前后的影响,所以主要任务是测量不同时间步长之间的相关性。上述的融合数据信息能够自适应地对不同时间步长之间的线性、非线性相关性进行建模。TP表示时间窗口的长度(例如过去P个时间步),通过归一化,模型可以比较不同时间步的贡献。同理,将时间注意力机制表示为:
(8)
(9)
时间注意力机制和空间注意力机制经过门控融合,得到编码器的多头时空注意力模块输出结果。门控融合过程为:
(10)
(11)
其中:OutputA被临时定义为时空注意力机制结合的输出结果;⊙为两个张量矩阵的点乘运算;W1,W2为可训练参数矩阵;b为偏置项;σ为sigmoid激活函数;λ为门控单元。门控融合机制动态控制每个顶点和时间步长处的空间和时间相关性。
为了解决梯度消失和可训练参数矩阵的退化问题,编码器中使用残差连接并得到编码器的输出XEout∈RN×P×D。为了使解码器能解析更多具有价值的交通数据信息,更精准地预测短期交通流量,将2.2节短期流量预测模块的输出XS与编码器的输出XEout相加,得到编码器融合信息序列XES∈RN×P×D。
2.4.2 解码器
解码器的任务是预测交通流量,其输入的数据都是Q个时间步长。解码器接收从连接注意力机制(下文介绍)中转化的编码器与短期流量预测模块的融合输出,同时合并了动态图卷积嵌入模块的结果,组成了解码器的输入XDin。在解码器里,时空多头注意力机制的定义与上述编码器中的形式大致相同,唯一改变的是输入的特征信息。动态图卷积嵌入模块的输出XG与连接注意力机制的输出XC组成解码器的输入XDin,因此XDin映射的3个矩阵变成了:
(12)
其中,WQ,WK,WV均为可训练参数矩阵。后续工作与编码器的注意力机制同理,得到多头时空注意力机制的输出为MA∈RN×Q×D。数据通过残差连接得到解码器的输出XDout∈RN×Q×D,其经过全连接层并输出接下来Q个时间步长的交通流预测数据。
2.5 连接注意力机制模块
连接注意力机制的主要目的是对未来Q个时间步长和历史P个时间步长之间的直接关系建模,缓解预测中长时间范围内不同预测步长之间的误差传播。2.3.1节中的时空嵌入模块会被用于连接注意力机制,用于提供路网图形结构和时间信息。
连接注意力机制模块的查询query、键key、值value分别为Q个时间步长的时空嵌入estQ∈RQ×N×D、P个历史时间步长的时空嵌入estP∈RP×N×D、编码器和短期流量预测模块的融合输出XES∈RN×P×D。因此连接注意力得分矩阵可以描述为:
(13)
式中,WQ,WP,WV均为可训练参数矩阵。接下来多头连接注意力机制表示为:
(14)
MAC经过一次全连接层的线性转化后,最终得到了连接注意力机制模块的输出XC∈RN×Q×D,将P长度的历史数据转化为Q长度的预测数据。连接注意力机制的效果如图3所示,箭头代表交通图中顶点Vi在对应2个时间之内的注意力得分。

图3连接注意力机制模块示意图
Fig.3Schematic diagram of the connection attention mechanism module
2.6 模型算法训练流程及时间复杂度分析
如算法1所示,模型时间复杂度包括:①全连接网络层的时间复杂度(步骤1、7),大约是O(N);②短期流量预测模块的时间复杂度(步骤2),大约是O(N);③时空嵌入编码的时间成本(步骤3)大约为O((P+Q)ND),其中P、Q、D为常量(下文同理),因此时间复杂度约为O(N);④自适应图卷积模块的时间成本(步骤3)约为O(N2D2),因此时间复杂度为O(N2);⑤多头时空注意力模块的时间复杂度分别约为O(N2DP)(步骤4)和O(N2DQ)(步骤6),因此复杂度约为O(N2);⑥连接注意力模块的时间成本约为O(PQDN2),所以复杂度约为O(N2);⑦损失函数的时间复杂度(步骤8)大约为O(Q),所以复杂度记为O(1)。因此时空编码器-解码器算法训练过程的总时间复杂度为O(N+N+N+N2+N2+N2+1)≈O(N2)。
算法1 时空编码器-解码器训练过程
Alg.1 Training process of spatio-temporal encoder-decoder

3 实验与分析
3.1 数据集介绍
为了评估时空编码器-解码器模型的性能,本模型在两个不同的数据集上进行了实验:①PEMS-BAY数据集[22],它包含由加州交通局性能测量系统(performance measurement system,PEMS)从海湾地区收集的2017年1月1日至2017年5月31日期间325个传感器的5个月交通信息。②METR-LA数据集[22],它包含从2012年3月1日至2012年6月30日在207个传感器上记录的4个月的交通速度数据,这些数据是从洛杉矶县高速公路的环形探测器收集的。
3.2 数据处理及实验设置
采用了与GMAN[2]中相同的数据预处理程序。在两个数据集中,时间步长1表示5 min,则1 d的时间步长为288。使用ZScore方法对数据进行归一化,训练集 ∶验证集 ∶测试集=7 ∶1 ∶2。为了构建道路网络图,将每个交通传感器视为一个顶点,计算传感器之间成对的道路网络距离来构造邻接矩阵:
(15)
其中,Aij表示传感器vi和vj之间的权重,dist(vi,vj)为传感器vi和vj之间的道路网络距离,δ为距离的标准偏差,e为阈值(设置为0.1)。
实验在GPU环境下进行,用Python 3.7和Pytorch 1.12.1实现,选择的GPU是Tesla T4。遵循先前的工作,使用P=12的历史步长来预测下一个Q=3,6,12(15 min,30 min,60 min)的交通状况。使用Adam优化器[23]和0.001的初始学习率训练模型,batchsize选择32。所有输出层维度D=64。多头注意力机制中,设置头部h=8,每个头的维度为8(d=D/h)。编码器和解码器中多头时空注意力块的数目都设置为3。采用平均绝对误差(mean absolute error,MAE)、均方根误差(root mean square error,RMSE)[22]以及平均绝对百分比误差(mean absolute percentage error,MAPE)三种广泛使用的指标来评估预测性能,它们的定义如下,其中Yi是实际值,而是预测值。
1)MAE是预测值和实际值之间绝对差值的平均值:
(16)
2)RMSE是预测值和实际值之间的差异的度量:
(17)
3)MAPE是绝对百分比误差的平均值:
(18)
3.3 模型对照基线
将时空编码器-解码器模型与以下模型进行性能比较。ARIMA[4]是使用时间序列数据之间的相关性来预测交通流量的经典统计方法模型;SVR[6]是用支持向量机来进行交通流量预测的机器学习方法模型;扩散卷积递归神经网络模型(diffusion convolutional recurrent neural network model, DCRNN)[24]是扩散卷积神经网络,融合时间空间依赖性来预测交通流量;STGCN[9]是使用空间域的图卷积和时间域的一维卷积来进行流量预测;ASTGCN[10]是使用时空注意力机制与图卷积融合的交通流量预测模型;Graph WaveNet[11]在图卷积中引入自适应矩阵,能动态学习交通数据的空间依赖关系;图多注意力网络模型(graph multi-attention network model, GMAN)[2]使用编码器-解码器,结合注意力机制以及时空嵌入编码预测交通流量。
3.4 实验结果
在METR-LA和PEMS-BAY数据集对比了时空编码器-解码器模型与上述对照基线分别在时间步为3(15 min)、6(30 min)、12(60 min)的性能,结果见表1、表2。由表1、表2的结果得知: ①深度学习模型的性能优于统计方法和机器学习方法的模型,证明了深度学习神经网络的强大以及其在线性、非线性交通数据建模方面的能力;②图卷积网络的模型(包括DCRNN、STGCN、ASTGCN、Graph WaveNet、时空编码器-解码器)的性能优势,表明了交通路网的图结构信息对交通预测十分重要; ③ASTGCN和GMAN都使用了时空注意力机制,且相对DCRNN、STGCN性能较好,证明了注意力机制捕获时空相关性的重要性; ④相比较于基线模型,本模型体现了最优的性能,且在长期流量预测和短期流量预测中都体现出优异的效果。因此时空编码器-解码器模型更适合分析并预测交通流量数据。
表1时空编码器-解码器在METR-LA数据集与对照基线的性能对比结果
Tab.1 Performance comparison results on METR-LA dataset of spatial-temporal encoder-decoder model and baselines

表2时空编码器-解码器在PEMS-BAY数据集与对照基线的性能对比结果
Tab.2 Performance comparison results on PEMS-BAY dataset of spatial-temporal encoder-decoder model and baselines

3.5 消融实验
为了验证时空编码器-解码器中每个模块的重要性,在PEMS-BAY、METR-LA数据集上将模型中的各个模块分别移除再进行性能测试实验。分别移除自适应图卷积模块、短期流量预测模块、连接注意力模块、空间注意力模块、时间注意力模块进行实验,并依次命名为model-AptGCN、model-Short、model-conn、model-SA、model-TA,本模型记为model。使用MAE来测评。实验结果如图4所示,图4表明:①时空编码器-解码器每个时间步长的性能始终优于上述5个已拆分的模型,这表明时空注意力机制结合自适应图卷积能在建模较复杂的时空相关性方面展现出色的性能;②当时空编码器-解码器移除短期流量预测模块时,可以见到其预测30 min内的流量精度有明显下降,证明了短期流量预测模块的有效性;③当时空编码器-解码器模型移除连接注意力机制模块时,其性能在所有对比实验中表现最差,这也体现了连接注意力机制能非常有效地缓解长时间范围内的误差传播的影响,大幅提高流量预测结果的精确度;④移除空间注意力模块,相比其他移除的模块对预测精度的影响最小,由此可知,在自适应图卷积捕获了空间信息之后,用空间注意力能起到更好的效果,两者结合能更全面地捕获时空相关性。

图4消融实验结果
Fig.4Results of ablation experiments
3.6 时空多头注意力机制的特征融合方式评估
为了研究时间注意力、空间注意力机制的特征融合方式对模型性能的影响,本实验分别使用拼接、相加、门控融合机制三种方式评估了它们对模型预测性能的影响。表3展示了时空编码器-解码器模型中时空注意力不同的组合方式预测未来不同时间段流量的性能对比结果,从中可知,使用门控融合机制在两个数据集中表现都为最好,因此门控融合机制能将时空注意力处理的数据信息充分结合,相比与其他两种方式能最大限度地保证信息传输的完整性。
表3时空注意力不同组合方式的预测性能对比
Tab.3 Comparison of the prediction performance different combinations of spatio-temporal attention

4 结论
本研究提出了一种面向交通流预测的时空编码器-解码器模型,使用图结构和多头时空注意力机制,全面地对交通路网进行时空建模。结合不同实验,在两个真实世界的数据集上进行实验评估之后,发现该模型不仅能很好地同时提取复杂时空相关性,而且动态图卷积嵌入模块可以分析路网图中的动态和静态数据信息,提高计算效率并节省计算资源。实验结果表明,时空编码器-解码器模型的性能比7个基线模型更优越。