随着经济社会的高速发展,交通问题日益受到人们的关注,与日俱增的汽车带来了日益拥堵的交通.为解决交通问题,越来越多的国家开始重视智能交通系统(intelligent transportation system, ITS)的建设.交通流预测是智能交通系统中不可缺少的部分,交通流是指道路上的车流量,其可以很好地反映道路的状况.如果能提前准确预测交通流,就能有效地避免交通拥堵,方便人们的出行.然而,交通流预测是一个复杂的时空预测问题,空间上,每个节点交通流的变化都不是独立的,其他节点交通流对其也存在着影响,且影响程度是随时间、天气等因素变化的,例如早高峰是上班方向的车辆较多,晚高峰是下班方向的车辆较多,恶劣天气也会影响道路上的车流量,因此,交通流的变化存在动态的空间关系.时间上,不同时间间隔的历史交通流对未来交通流的影响是不同的,可能时间间隔久的影响更大,也可能时间间隔短影响更大.例如,如果某一时刻道路上发生了交通事故,那可能对当前道路以及其他关联道路这一时刻后很长一段时间内的交通流的影响都是很大的,但如果没有发生交通事故,那这一时刻的交通流对未来交通流对影响程度会没那么大,持续时间也没那么久.相同时间间隔在不同时间段内对未来交通流的影响也会动态变化的,例如高峰时刻,一旦某一时刻发生交通拥堵,那可能会导致拥堵持续很久,但如果不是高峰时刻,道路上发生拥堵,可能很快道路通畅,因此,交通流的变化存在动态的时间关系.同时,交通流数据是存在线性、非线性以及周期性变化的特征的,如何捕获动态交通流的线性、非线性以及周期性特征同样是个复杂问题.交通流的这些特性导致准确地预测交通流具有挑战性.
近些年来,研究者们为解决交通流预测问题尝试了许多的方法,这些方法可以大致分为传统的方法和深度学习的方法.传统的统计学方法的代表有历史平均(historical average, HA)、差分自回归移动平均模型(auto-regressive integrated moving average model, ARIMA)、向量自回归(vector auto-regressive, VAR),文献[1-2]采用改进的ARIMA对交通流进行预测.统计学方法是线性预测方法,这种方法不能捕获数据间的复杂非线性关系,预测能力十分有限.传统的机器学习方法例如支持向量机回归(support vector regression, SVR)[3],相比于统计学方法预测效果有不错的提升,但其不仅需要良好的特征工程,且挖掘复杂时空关系能力有限,因此预测效果依然不太理想.随着深度学习的快速发展,研究者们开始将循环神经网络(recurrent neural network, RNN)及其变体长短期记忆网络(long short-term memory, LSTM)/门控循环单元(gated recurrent unit, GRU)[4-5]以及卷积神经网络(convolutional neural networks, CNN)[6]引入到交通预测当中[7-8].循环神经网络可以很好捕获交通数据时间上的关联性,卷积神经网络可以捕获空间之间的关联性,文献[9]采用循环卷积网络,旨在挖掘数据的空间特征.然而由于卷积是针对欧几里得空间的,且只能应用于标准网格数据,其不能很好地建模复杂的交通网络的空间关系.为了更好地建模交通网络的空间关系,图卷积神经网络(graph convolutional neural networks, GCN)[10-14]被研究者们引入,对于非欧几里得空间的交通数据,图神经网络能够更好挖掘出其中的空间依赖关系.
根据对交通数据的时间关系挖掘的方法,基于图神经网络的方法可以大致分为2种,一种是利用RNN去提取时间关系,另一种是利用卷积去提取时间关系.文献[15]将GRU与GCN结合,提出T-GCN(temporal graph convolutional network)进行交通预测,其利用GRU提取时间关系,利用GCN生成GRU的门.DCRNN(diffusion convolutional recurrent neural network)[16]也是基于GRU的,但是它使用双向的随机游走的扩散GCN去提取空间依赖.同样,AGCRN(adaptive graph convolutional recurrent network)[17]在T-GCN的基础上,使用自适应的图结构去捕获空间关系.T-MGCN(temporal multi-graph convolutional network)[18]则是使用4个不同的图结构处理数据的空间关系.这些方法都充分利用RNN在捕获时间依赖上的优势,他们的区别是在GCN网络结构上.利用卷积提取时间关系的方法有STGCN(spatial-temporal graph convolution network)[19],ASTGCN(attention based spatial-temporal graph convolutional networks)[20],AM-GCN(adaptive multi-channel graph convolutional networks)[21],Graph Wavenet[22],MTGNN(multivariate time series forecasting with graph neural networks)[23],GMAN(graph multi-attention network)[24],STSGCN(spatial-temporal synchronous graph convolutional network)[25],LSGCN(long short-term traffic prediction with graph convolutional networks)[26],STFGNN(spatial-temporal fusion graph neural networks)[27]等.文献[19]提出STGCN,第一次利用卷积捕获时间关系,利用GCN捕获空间关系.ASTGCN[20]和GMAN[24]从注意力机制的角度出发,采用了多种注意力机制.Graph Wavenet[22]和MTGNN[23]使用门控的膨胀卷积结构去处理数据的时间关系.AM-GCN[21]从多图的角度出发,采用多个图结构,不同的图结构体现不同的数据关系,通过结合不同的图的卷积结果去挖掘更多的信息.STSGCN[25]可以同步地提取局部时空关系.文献[26]提出基于图卷积和线性门控(gated linear units, GLU)的LSGCN挖掘短期和长期的依赖关系.STFGNN[27]将时间和空间模块融合在一起,提出一种时间图.文献[28]采用矩阵分解的方法解决数据稀疏问题,利用图卷积扩展的循环神经网络捕获时间关系.
为了更好地捕获交通网络的时空关系,取得更好的交通流预测的准确度,本文提出一种信息增强传输的时空图神经网络(information enhanced transmission spatial-temporal graph neural network, STEGN)的交通流预测模型,该模型能够动态地捕获交通流数据复杂的时空特征.本文的重要贡献有4个方面:
1) 提出一种多特征注意力机制捕获交通数据复杂的特征关系.具体来说,多特征注意力机制将交通速度、交通时间占有率、交通流周期特征等特征信息有效地结合起来,从而更好地学习交通流的变化规律.
2) 设计了一种信息增强传输机制捕获交通数据复杂的动态空间依赖.它包含一个自适应的动态图学习结构以及信息传输增强机制,自适应图学习结构可以动态地学习节点间的依赖关系,增强信息传输机制可以增大信息传输的区域,以捕获更丰富的空间信息,并通过注意力机制选择有效信息,剔除无效信息.
3) 在解码器部分,提出一种时间注意力机制,它能自适应地挖掘编码器输出结果的所有时间序列与预测目标之间的依赖关系,将编码器和解码器有机地结合起来,帮助更好地预测.
4) 设计了一种数据线性与非线性融合机制,该机制包含线性和非线性部分,2个部分分别捕获数据的线性和非线性特征,然后进行融合.实验结果表明该机制可以有效地提高模型的预测精度.
原始的交通数据包含N个节点,T个时间片,C个特征.本文使用图G=(V,E,A)来代表交通网络的拓扑结构,其中V代表道路上的监测节点,E代表节点间的连接边,A∈
N×N是邻接矩阵,代表节点间的依赖关系.设![]()
C代表第i个节点第t时刻的数据特征,![]()
N×C代表时刻t的所有节点的特征,特征包含交通流、交通速度、交通时间占有率以及交通流周期性特征,X=(X1,X2,…,Xw)T∈
N×C×w代表历史的w个时刻的观测数据,本文的目标就是利用历史的w个观察数据预测未来的N个站点h个交通流数据,Y=(y1,y2,…,yh)T∈
h×N代表预测的未来的h个交通流数据,因此问题可以定义为
{y1,y2,…,yh}=model(X1,X2,…,Xw).
(1)
传统的卷积是利用卷积核在标准的网格数据上进行滑动,每次将网格数据与卷积核对应元素相乘再相加,但现实生活中多数的数据集是一种图的形式存储的,例如交通数据集就是一个标准的图的形式.传统的卷积无法应用在图结构上,因此需要图卷积来执行.图卷积包含谱域图卷积和空域图卷积,谱域图卷积是通过傅立叶变换将时域信号转换到频域,然后进行过滤器操作,再将结果通过傅立叶反变换转换到时域.空域图卷积则直接在空域上对图上节点和其邻居进行聚合操作.图卷积(GCN)属于谱域图卷积的一种,其通式为
Hl+1=f(Hl,A),
(2)
其中,l代表图卷积的层数,H0=x为初始的输入,x∈
N×C,N为节点数,C为每个节点的特征数,A为邻接矩阵,不同的图卷积的不同点在于f实现的不同,基本的实现方式为
![]()
(3)
其中,
为邻接矩阵A∈
N×N增加自环,I单位矩阵,
为度矩阵,
代表第l层的权值矩阵,σ(·)为激活函数.
注意力机制在各个领域都有着广泛的应用,如图像标注、机器翻译等.注意力机制借鉴了人类的视觉注意力,例如人在看到一幅图像后,会获得关注的重要部分而抑制其他部分,这可以帮助人们从众多信息中提取对当前目标有用的信息.注意力机制,其本质是一种通过网络自主学习出的一组权重系数,并以“动态加权”的方式来强调本文所感兴趣的区域同时抑制不相关背景区域的机制.近年来,注意力机制也被应用到了时空数据预测问题上[20,24,29].文献[30]提出一种序列到序列的注意力时空模型预测交通流,取得不错的效果.注意力机制本身是一种思想,并没有规定死的公式,获取注意力权重的方法多种多样,具体的方法需要结合具体的应用背景来使用.
本文提出的STEGN模型的总体框架如图1所示.模型的输入为图结构以及交通特征数据:交通流、交通速度、交通时间占有率以及交通流周期性,其数据格式为(节点,特征,时间),输出为预测的交通流.模型基于门控循环单元(gate recurrent unit, GRU)编码器-解码器架构,在编码器部分,本文利用多特征注意力机制对不同交通特征进行建模,挖掘交通流与交通速度、交通时间占有率等其他交通特征之的关系以及自身变化的周期性规律,同时,本文设计了一种信息增强传输机制对交通网络复杂且动态的结构进行建模.在解码器部分,本文引入了时间注意力机制对编码器不同时刻的隐藏层状态进行动态的学习.最后,本文提出一种线性与非线性的融合机制,该机制很好地结合了数据的线性与非线性特征.
Fig. 1 Model architecture of the proposed STEGN
图1 本文提出模型STEGN的总体架构
交通数据特征包含交通流、交通速度、交通时间占有率等多种特征,不同交通数据特征都可以在不同的角度反应当前道路的交通情况.例如,交通流越大,则说明当前道路通行车辆越多;交通速度若相对较大,则说明当前道路的通行情况比较顺畅;交通时间占有率越大,则当前道路越拥堵.
图2展示了交通流、交通速度、交通时间占有率的变化关系,数据都分别进行了归一化,从图2中可以看出,3种交通特征的变化规律很相似,因此,可以看出不同交通特征之间存在着可待挖掘的隐藏关系,因此,本文引入了交通速度、交通时间占有率这2个交通数据特征帮助预测交通流.
Fig. 2 Relationship between traffic flow, traffic speed and traffic time occupy
图2 交通流与交通速度、交通时间占有率之间的关系
数据的周期性是数据的重要特征之一,若能良好地运用交通流的周期性特点,这将更好地学习到交通流的变化规律,图3展示了交通流第1周和第2周的数据变化情况,从图3可以看出,交通流第1周和第2周的变化规律十分相似,表明交通流的变化的周期为1周,因此,本文引入了交通流的周期性特征.
Fig. 3 Periodicity of traffic flow
图3 交通流的周期性
若能挖掘出特征之间的依赖关系,就能更好地学习交通流的变化规律,因此,本文提出一种多特征注意力机制,该机制将交通速度、交通时间占有率以及交通流前一周的数据引入到模型中,能够有效地提取出隐藏的依赖关系.具体的,本文令![]()
N代表所有节点的时刻t的交通流,![]()
N代表所有节点的时刻t的交通速度,![]()
N代表所有节点的时刻t的交通时间占有率,![]()
N代表所有节点的时刻t的上一周同一时刻的交通流,ht-1∈
N代表时刻t-1所有节点的隐藏层状态,其中N为节点数量.多特征注意力的计算公式为
∂t=W∂·σ(Whht-1+ ![]()
(4)
(5)
其中,W∂∈
F×F,Wh∈
hidden,Wf∈
F×F,b∂∈
F是模型学习参数,hidden是隐藏层单元数,σ是激活函数
是将这4个变量连接在一起,
是第f个特征的注意力权值,F是特征数量.
通过将各个特征与对应权值相乘,得到多特征注意力模块的输出
![]()
(6)
当前节点的交通流变化不仅与自身历史状况有关系,同样也与相邻或相似的节点有关.图4是某一交通道路的模拟图.
Fig. 4 Traffic roads simulation diagram
图4 交通道路模拟图
由于车辆的运行存在着自主性,道路上的车流量是动态变化的,从而节点间的相互影响也是随着时间动态变化的,如图5所示,其中圆点和五角星都是代表道路上的传感器,五角星代表目标节点,节点间的连接颜色深浅代表影响大小不同,随着时间的变化,节点间的影响关系也是动态变化的,因此,挖掘节点间复杂且动态的空间关系具有挑战性.
Fig. 5 Dynamic spatial-temporal relationship of traffic network
图5 交通网络动态时空关系示意图
相对于静态的图结构,本文基于交通网络结构构造了一个自适应学习的图结构,随着模型训练的进行,其可以自适应地学习图结构,该图结构不仅可以学习本来存在拓扑关系的节点的依赖关系,还可以学习本来不存在拓扑关系但却存在隐藏关系的节点间的依赖关系.图结构一开始由随机生成的可学习嵌入参数Eadp∈
N×d生成,N是节点的数量,d为每个节点的嵌入维度,生成的自适应邻接矩阵为
![]()
(7)
Fig. 6 Information enhanced propagation mechanism
图6 信息增强传输机制
其他节点对当前节点的影响通过图卷积传输到当前节点,但图卷积只会将局部连通节点的信息传输到当前节点,那些没有连通的节点信息无法传输到当前节点,对于复杂的交通网络结构来说,仅仅这样无法很好的捕获节点间的空间依赖关系.
本文提出的信息增强传输机制可以将没有连通的节点信息传输到当前节点,扩大了信息传输的范围,增强了交通网络信息的传输能力.如图6所示,为了方便描述,本文将没有直接与当前节点连接,而是与当前节点的连接节点有连接关系的节点称为当前节点的一跳连接.
例1. 节点a与节点b相连,节点b与节点c相连,而节点a与节点c没有连接关系,则称节点c为节点a的一跳连接节点,n跳连接依此类推,图6仅展示了一跳、两跳、三跳的情况.
若通过人工将节点分成多个不同跳数多集合,则针对每个节点都需要进行一次划分,这样做的成本太高,也不便于实际的应用,本文利用图卷积的原理,通过简单的方式实现了上述思想.节点信息通过图卷积在图网络中进行传输,一次图卷积则信息在图网络中传输了一次.
例2. 紧接例1,一次图卷积后,节点c的信息传输到了节点b,节点b的信息传输到了节点a,若想要将节点c的信息传输到节点a,只需要再进行一次卷积即可,因此,经过2次图卷积之后,一跳节点的进行传输到了当前节点,n跳节点信息传输依次类推.第一次信息传输的公式为
![]()
(8)
其中,
是输出,X是输入,
是自适应邻接矩阵.
若简单进行多次图卷积来传输信息,则会造成信息的冗余以及累计错误无用的信息,本文通过将后一次图卷积减去前一次图卷积的方式将各个跳数节点信息独立出来,具体的公式为
![]()
(9)
不同跳数节点的信息有效性不同,若简单地将他们的作用看作是一样显然是不合理的,因此,本文提出一种多跳注意力机制,学习不同跳数节点信息的有效性,使得图网络可以更好的传播有用的信息,多跳注意力的计算公式为
ωt=Wω·σ(Whht-1+Zt+bω),
(10)
(11)
其中,Wω∈
n×n,Wh∈
hidden,bω∈
n是模型学习参数,Wh与多特征注意力,σ是激活函数tanh,n是信息传输的最大跳数,
是将各跳信息连接在一起,
是第j跳信息的注意力权值.
将每跳信息与对应权值相乘,得到信息增强信息传输模块的输出
![]()
(12)
交通数据在时间维度上同样表现着高度的动态性,未来的交通流与历史测量值存在着动态依赖关系,未来时刻t+1的交通流可能与时间间隔较小的时刻t交通流情况更相关,也可能与时间间隔较大的时刻t-γ更相关,例如,时刻t-γ可能发生了交通事故,导致了交通拥堵,这样的话时刻t+1的交通流受时刻t-γ的影响就较大,且不同道路相同时间间隔的历史交通流对未来交通流的影响也是不同.为了解决这一问题,本文设计了一种时间注意力机制来自适应的捕获数据流不同时间间隔之间的动态依赖关系,挖掘出交通流变化的时间模式,具体的来说,在解码器部分自适应的学习编码器不同时刻的隐藏层状态对于预测目标的重要性,计算公式为
![]()
(13)
(14)
其中,Wen∈
hidden,Wde∈
hidden×p是模型学习参数,p是模型要预测的步数,![]()
N×T是编码器各个时刻的隐藏层状态,T是编码器隐藏层状态数,
是解码器在时刻t-1的隐藏层状态,σ是激活函数tanh,θt是时刻t编码器隐藏层状态的重要分数.
时间注意力模块的输出为
![]()
(15)
其中,WT∈
2×hidden,f是将张量在时间维度相加的函数,xt是解码器在时刻t的输入.
交通流数据存在着线性和非线性2种特性,目前的方法一般都只考虑其中一种,要么只考虑线性特征,要么只考虑非线性特征,而交通流的线性和非线性特征对于预测都是很重要的,本文提出一种线性与非线性融合的机制,同时考虑交通数据的线性与非线性特点,并将两者有效地融合起来.具体来说,分别利用线性层和卷积层对编码器-解码器架构的输出进行处理,提取经过多层模型处理后的数据的线性与非线性特征,同时,利用线性层提取原始交通流数据的线性特征,然后通过一个0~1之间的可学习变量将提取出来的线性与非线性特征融合,进行预测.计算公式为
Linear=WX+b,
(16)
Cl1=Linear1(out),
(17)
Cnon=Conv2d(out),
(18)
Cl2=Linear2(X),
(19)
Y=λ Cnon+(1-λ)(Cl1+Cl2),
(20)
其中,Cl1∈
N×p,Cnon∈
N×p,Cl2∈
N×p分别为编码器-解码器架构结果的线性特征和非线性特征以及原始交通流数据的线性特征,Linear为线性层,W和b是线性层的学习参数,Linear1和Linear2分别为Cl1和Cl2的线性层,Conv2d是二维卷积层,Y∈
N×p是模型的预测结果,p是预测的步数,out是编码器-解码器架构的输出结果,X是原始的交通流输入数据,λ∈(0,1)是融合参数,也是模型学习参数.
本文提出的融合机制简单有效,没有过多的参数,没有使用门控机制进行融合是因为门控机制参数太多,实验结果也表明门控机制效果不如本文提出的融合机制好.
本文实验所使用的数据集来源于美国加利福尼亚州2个真实的高速公路交通数据,数据由加州高速路网(Caltrans performance measurement system, PeMS)收集,数据每30 s采集一次,然后聚合成时间间隔为5 min的数据,包含的数据特征有交通流、交通速度、交通时间占有率,数据集详情如表1所示:
Table 1 The Details for the Datasets
表1 数据集详情
数据集节点数边数数据长度时间范围时间间隔∕minPeMSD4307340169922018-01-01—2018-02-285PeMSD8170295178562016-07-01—2016-08-315
PeMSD4为旧金山湾区(San Francisco Bay Area)的交通数据,包含29条道路上的307个传感器,包含340条边,时间跨度为2018-01-01—2018-02-28,共59天,数据的格式为(16 992,307,3),代表数据长度为16 992,节点数为307,数据特征数量为3个,分别是交通流、交通速度、交通时间占有率.
PeMSD8为圣贝纳迪诺地区(San Bernardino Area)的交通数据,包含8条道路上的170个传感器,包含295条边,时间跨度为2016-07-01—2016-08-31,共62天,数据的格式为(17 856,170,3),代表数据长度为17 856,节点数为170,数据特征数量为3个,分别是交通流、交通速度、交通时间占有率.
本文按照6∶2∶2的比例将数据集切分成训练集、验证集和测试集.
本文的实验环境为:2颗至强金牌6226R处理器,频率为2.9 GHz;运行内存为256 GB;显卡为3块Titan RTX,每块显卡的显存为24 GB;操作系统为Ubuntu 18.04.5.
本文利用历史时间步window=12(1小时)的交通流数据去预测未来时间步p=12(1小时)的交通流.本文选择L1 loss作为损失函数,优化器为Adam,初始学习率为0.003,门控循环单元(GRU)的单元数为64,层数为2,批处理大小为64,自适应图结构的嵌入维度为10,信息增强传输模块的跳数为3.
本文采用均方根误差(RMSE)、平均绝对误差(MAE)、平均绝对百分比误差(MAPE)这3种评价指标来评测模型的精度.3种评价指标的计算公式如下:
![]()
(21)
![]()
(22)
(23)
其中,
表示预测值,yi表示真实值,n表示样本数量.
本文将提出模型与以下12个基线进行比较:
1) historical average(HA).该模型将交通状况建模为一个季节性过程,并使用历史平均值作为预测结果.
2) auto-regressive integrated moving average(ARIMA).该模型是在自回归移动平均模型的基础上加上差分项.
3) vector auto-regressive(VAR).该模型考虑时空关系,能够捕获各交通流序列之间的成对相关性.
4) long short-term memory network(LSTM).LSTM是一种特殊的RNN,它解决了RNN的长期依赖问题,LSTM的单元数设置和本文的模型一样.
5) dual self-attention network(DSANeT)[28].采用2个不同卷积核对输入进行处理,然后分别使用自注意力,最后结合得到结果.
6) diffusion convolutional recurrent neural network(DCRNN)[16].提出扩散卷积去捕获时空特征,其扩散过程基于图上的随机游走.
7) spatial-temporal graph convolution network(STGCN)[19].使用时间卷积块和空间卷积块分别提取时间和空间特征.
8) Graph WaveNet[22].采用门控时间卷积结合多个图卷积的结构.
9) attention based spatial-temporal graph con-volutional networks(ASTGCN)[20].采用多种注意力机制,结合卷积网络去提取动态的时空特征.
10) spatial-temporal synchronous graph con-volutional network(STSGCN)[25].提出一种时空同步机制,将不同时间的节点间的信息结合起来.
11) adaptive graph convolutional recurrent network(AGCRN)[17].提出一种基于RNN的自适应的图卷积网络,图卷积作为RNN的门控.
12) long short-term traffic prediction with graph convolutional networks(LSGCN)[26].提出余弦图注意力机制,采用新的注意力机制去捕获空间特征.
表2展示了本文提出模型与基线在PeMSD4和PeMSD8两个真实数据集上的性能对比.
Table 2 Average Performance of Different Models in
Predicting the Next 12 Steps on PeMSD4 and PeMSD8
表2 不同模型在PeMSD4和PeMSD8数据集上预测 未来12步的平均性能 %
模型PeMSD4PeMSD8MAERMSEMAPEMAERMSEMAPEHA36.7654.1421.8329.5244.0316.59ARIMA35.1958.0520.6824.0243.2315.89VAR33.6351.6219.7319.1929.8113.10LSTM29.3245.7218.5923.1036.8913.15DSANet22.7935.7716.0317.1426.9611.32DCRNN21.2237.2314.1716.8226.3610.92STGCN21.1635.6913.8317.5027.0911.29GraphWavaNet28.1539.8818.5220.3030.8213.84ASTGCN21.4833.7014.8818.7028.4112.37STSGCN21.5234.1414.4617.8827.3611.71AGCRN19.8332.3012.9715.9525.2210.09LSGCN21.5333.8613.1817.7326.7611.20STEGN(ours)18.9431.1312.4712.9622.198.34
从表2可以看出,本文提出的模型在2个数据集上的所有评价指标都要优于对比的基线.传统的预测方法HA和ARIMA的预测结果不好,因为它们没有考虑到交通数据的空间特征,且都是线性的模型,而VAR则考虑了空间特征,因此其预测结果要好于HA和ARIMA.相对于传统的方法,深度学习的方法在交通流预测方面存在着优势,LSTM在PeMSD4数据集上的3个评价指标都要好于3种传统的方法,但其在PeMSD8数据集上的预测效果不如VAR,因此LSTM也仅仅考虑交通流时间上的特征,并没有考虑到空间特征,因此其模型的适应性上表现不佳.DSANet在循环神经网络的基础上引入了双向的注意力机制,这使它的预测性能得到了明显的提升,这说明了注意力机制能够提升模型的学习能力.以上的方法都只考虑时间特征,而交通网络是存在很明显的空间特征的,因此,基于图结构的时空模型能够更好的预测交通流.DCRNN利用循环神经网络提取时间特征,与其不同的STGCN则使用一维卷积去提取时间特征,两者都引入了图结构去提取空间特征,从预测结果来看,STGCN在PeMSD4数据集上表现较好,DCRNN在PeMSD8数据集上表现较好,这说明了图结构的优势,同时也表明这2个模型的适应性仍然不佳,但两者的预测性能都要好于只考虑交通数据时间关系的模型.Graph WaveNet是基于图结构的模型中预测效果最差的,这是因为它的模型结构过于复杂,模型参数过多,导致模型很难训练,与Graph WaveNet模型相比,AGCRN的模型结构就简单的多,模型参数少很多,预测结果也好很多,这表明过于复杂的模型预测效果反而可能会更差.同样基于注意力机制的ASTGCN的预测效果要比LSGCN差不少,这说明了不同的注意力机制的效果是不同的,注意力机制的设计好坏对模型的性能影响很大.STSGCN的预测效果不错,但其只考虑局部的信息的特点也是导致了其预测性能不高的原因.
与基线模型相比,本文提出的模型在2个数据集上的性能都要明显好于基线,这也表明了本文提出的模型的对数据的适应性强.本文针对不同场景设计了多种适应性的注意力机制,本文的模型的结构也比较简单,在实现方面没有一味地堆积网络层数,增加模型参数,而是采用多种策略去减少模型的参数,例如在编码器部分对隐藏层状态的处理方面使用了共享的参数,在将线性与非线性融合的时候没有使用参数繁多的门控机制,这是本文模型效果要好于基线的原因之一.此外,本文提出的多特征注意力模块和信息增强传输模块,极大地利用了数据的信息,不仅考虑了局部的数据信息,同时考虑全局的以及其他交通特征信息,引入了交通流的周期性特点,这是本文模型性能好的原因之二.传统方法侧重数据线性挖掘能力,深度学习方法侧重非线性挖掘能力,而本文则将两者都考虑了进来,这是本文模型性能好的原因之三.
Fig. 7 Prediction results of different time steps of models on PeMSD4
图7 各个模型在PeMSD4上不同时间步的预测结果
Fig. 8 Prediction results of different time steps of models on PeMSD8
图8 各个模型在PeMSD8上不同时间步的预测结果
为了进一步对比本文提出的模型与基线之间的预测性能,将表2中ASTGCN,STSGCN,AGCRN这3个模型预测的每一步的结果与本文提出的模型进行比较,如图7和图8所示,横坐标代表时间步,纵坐标代表指标的值.图7展示了各个模型在PeMSD4数据集上的3个评价指标的结果,图8展示了各个模型在PeMSD8数据集上的3个评价指标的结果.可以看出,本文的模型每一步的预测结果在3个评价指标上都明显好于对比模型.ASTGCN与STSGCN的预测结果差不多,在不同的指标上各有优势,AGCRN在一步预测上的表现要弱于另外2个,但随着预测步数的增加,其结果都要好于另外2个.
为了评估本文提出模型的各个模块的作用,本文对模型进行了消融分析实验.以本文模型(STEGN)为基础,移除多特征注意力模块的模型命名为STEGN-M,移除信息增强传输模块的模型命名为STEGN-S,移除时间注意力机制模块的模型命名为STEGN-T,移除线性和非线性模块的模型命名为STEGN-L.
基于PeMSD4数据集,本文将各个变种模型进行了实验,表3展示了各个模型的实验结果:
Table 3 Performance Comparison of Various Variant Models on PeMSD4
表3 各个变种模型在PeMSD4上的性能比较 %
模型MAERMSEMAPESTEGN-M19.2731.6212.88STEGN-S20.3333.3413.31STEGN-T19.0331.3212.56STEGN-L19.8332.8813.11STEGN18.9431.1312.47
从表3可以看出,本文提出模型的4个组成部分都能提高模型的预测性能,其中信息增强传输模块对模型的影响最大,提高的预测精度最高,这说明信息增强传输模块的确能扩大和增强交通网路的信息传输,提高模型捕获空间依赖关系的能力.线性与非线性融合模块是对模型影响第二大的模块,这表明该模块能够弥补单一线性或非线性的不足之处,提高模型挖掘数据特征的能力.多特征注意力模块和时间注意力模块对模型的影响分别为第三和第四,这2个模块同样能很好提升模型的预测精度.综上所述,本文提出模型的各个模块都很有效果,能够帮助模型更好地挖掘交通流的变化规律.
本文提出一种基于信息增强传输的时空图神经网络模型(STEGN)用于交通流预测.针对交通流数据的动态性、时空性、周期性、线性与非线性等特点,采用多特征注意力机制去捕获多种交通特征之间的内在关系;提出信息增强传输机制,增强信息传输的范围,用于捕获动态的空间关系;同时,充分考虑了交通流线性与非线性的特点,提出线性与非线性融合机制用于挖掘数据的线性与非线性特征.本文在真实交通数据集上进行了实验,实验结果表明本文提出的模型在2个数据集上的表现都要好于现有的先进的模型,这表明本文提出的模型可以很好地捕获复杂动态的交通网络的变化规律,从而更好预测交通流.同时,消融实验的结果表明本文提出的模型的每个模块都能有效的提高模型的预测精度.
在未来的工作中,将开展进一步的研究,提高模型多步、长时间的预测精度,并引入天气等外部因素以实现更精准的预测,同时,还将扩展模型的应用范围,将本文提出的模型应用于交通速度、交通时间占有率等其他交通数据.
作者贡献声明:倪庆剑负责实验思路构思、实验方法设计、实验指导、数据整理与分析、论文的写作与修改;彭文强进行实验设计与探究、代码实现、实验、论文写作和修改;张志政进行实验指导、初稿的审阅和修改;翟玉庆进行实验指导、初稿的审阅和修改.
[1]Kumar S Vasantha, Vanajakshi L. Short-term traffic flow prediction using seasonal ARIMA model with limited input data[J]. European Transport Research Review, 2015, 7(3): 1-9
[2]Luo Xianglong, Niu Liyao, Zhang Shengrui. An algorithm for traffic flow prediction based on improved SARIMA and GA[J]. KSCE Journal of Civil Engineering, 2018, 22(10): 4107-4115
[3]Fu Gui, Han Guoqiang, Lu Feng, et al. Short-term traffic flow forecasting model based on support vector machine regression[J]. Journal of South China University of Technology: Natural Science Edition, 2013, 41(9): 71-76
[4]Knol D, de Leeuw F, Meirink J F, et al. Deep learning for solar irradiance nowcasting: A comparison of a recurrent neural network and two traditional methods[C] //Proc of the Int Conf on Computational Science. Berlin: Springer, 2021: 309-322
[5]Zhao Zheng, Chen Weihai, Wu Xingming, et al. LSTM network: A deep learning approach for short-term traffic forecast[J]. IET Intelligent Transport Systems, 2017, 11(2): 68-75
[6]Guo Shengnan, Lin Youfang, Li Shijie, et al. Deep spatial-temporal 3D convolutional neural networks for traffic data forecasting[J]. IEEE Transactions on Intelligent Transportation Systems, 2019, 20(10): 3913-3926
[7]Zhang Junbo, Zheng Yu, Qi Dekang. Deep spatio-temporal residual networks for citywide crowd flows prediction[C] //Proc of the 31st AAAI Conf on Artificial Intelligence, 2017, 31: 1655-1661
[8]Yao Huaxiu, Tang Xianfeng, Wei Hua, et al. Revisiting spatial-temporal similarity: A deep learning framework for traffic prediction[C] //Proc of the AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI Press, 2019: 5668-5675
[9]Zhang Jianjin, Wang Yunbo, Long Mingsheng, et al. Predictive recurrent network for seasonal spatial-temporal data and its application in urban computing[J]. Chinese Journal of Computers, 2020, 43(2): 286-302 (in Chinese)(张建晋, 王韫博, 龙明盛, 等. 面向季节性时空数据的预测式循环网络及其在城市计算中的应用[J]. 计算机学报, 2020, 43(2): 286-302)
[10]Chiang Weilin, Liu Xuanqing, Si Si, et al. Cluster-gcn: An efficient algorithm for training deep and large graph convolutional networks[C] //Proc of the 25th ACM SIGKDD Int Conf on Knowledge Discovery & Data Mining. 2019: 257-266
[11]Zhou Jie, Gui Ganqu, Hu Shengding, et al. Graph neural networks: A review of methods and applications[J]. AI Open, 2020, 1: 57-81
[12]Jiang Weiwei, Luo Jiayun. Graph neural network for traffic forecasting: A survey[J]. arXiv preprint, arXiv:2101.11174, 2021
[13]Lee K, Eo M, Jung E, et al. Short-term traffic prediction with deep neural networks: A survey[J]. IEEE Access, 2021, 9: 54739-54756
[14]Xu Bingbing, Cen Keting, Huang Junjie, et al. A review of graph convolutional neural networks[J]. Chinese Journal of Computers, 2020, 43(5): 755-780 (in Chinese)(徐冰冰, 岑科廷, 黄俊杰, 等.
图卷积神经网络综述[J]. 计算机学报, 2020, 43(5): 755-780)
[15]Zhao Ling, Song Yujiao, Zhang Chao, et al. T-gcn: A temporal graph convolutional network for traffic prediction[J]. IEEE Transactions on Intelligent Transportation Systems, 2019, 21(9): 3848-3858
[16]Li Yaguang, Yu R, Shahabi C, et al. Diffusion convolutional recurrent neural network: Data-driven traffic forecasting[C/OL] //Proc of the 6th Int Conf on Learning Representations. Vancouver: ICLR, 2018 [2021-09-01]. https://openreview.net/forum?id=SJiHXGWAZ
[17]Bai Lei, Yao Lina, Li Can, et al. Adaptive graph convolutional recurrent network for traffic forecasting[C] //Advances in Neural Information Processing Systems, 2020: 17804-17815
[18]Lü Mingqi, Hong Zhaoxiong, Chen Ling, et al. Temporal multi-graph convolutional network for traffic flow prediction[J]. IEEE Transactions on Intelligent Transportation Systems, 2020, 22(6): 3337-48
[19]Yu Bing, Yin Haoteng, Zhu Zhanxing. Spatio-temporal graph convolutional networks: A deep learning framework for traffic forecasting[C] //Proc of Int Joint Conf on Artificial Intelligence. 2018: 3634-3640
[20]Guo Shengnan, Lin Youfang, Feng Ning, et al. Attention based spatial-temporal graph convolutional networks for traffic flow forecasting[C] //Proc of the AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI Press, 2019: 922-929
[21]Wang Xiao, Zhu Meiqi, Bo Deyu, et al. Am-gcn: Adaptive multi-channel graph convolutional networks[C] //Proc of the 26th ACM SIGKDD Int Conf on Knowledge Discovery & Data Mining, 2020: 1243-1253
[22]Wu Zonghan, Pan Shirui, Long Guodong, et al. Graph wavenet for deep spatial-temporal graph modeling[C] //Proc of the 28th Int Joint Conf on Artificial Intelligence, 2019: 1907-1913
[23]Wu Zonghan, Pan Shirui, Long Guodong, et al. Connecting the dots: Multivariate time series forecasting with graph neural networks[C] //Proc of the 26th ACM SIGKDD Int Conf on Knowledge Discovery & Data Mining. New York: ACM, 2020: 753-763
[24]Zheng Chuanpan, Fan Xiaoliang, Wang Cheng, et al. Gman: A graph multi-attention network for traffic prediction[C] //Proc of the AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI Press, 2020: 1234-1241
[25]Song Chao, Lin Youfang, Guo Shengnan, et al. Spatial-temporal synchronous graph convolutional networks: A new framework for spatial-temporal network data forecasting[C] //Proc of the AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI Press, 2020: 914-921
[26]Huang Rongzhou, Huang Chuyin, Liu Yubao, et al. LSGCN: Long short-term traffic prediction with graph convolutional networks[C] //Proc of Int Joint Conf on Artificial Intelligence. San Francisco, CA: Morgan Kaufmann, 2020: 2355-2361
[27]Li Mengzhang, Zhu Zhanxing. Spatial-temporal fusion graph neural networks for traffic flow forecasting[C] //Proc of the AAAI Conf on Artificial Intelligence. Palo Alto, CA: AAAI Press, 2021: 4189-4196
[28]Hu Jilin, Guo Chenjuan, Yang Bin, et al. Stochastic origin-destination matrix forecasting using dual-stage graph convolutional, recurrent neural networks[C] //Proc of the 36th Int Conf on Data Engineering (ICDE). Piscataway, NJ: IEEE, 2020: 1417-1428
[29]Huang Siteng, Wang Donglin, Wu Xuehan, et al. Dsanet: Dual self-attention network for multivariate time series forecasting[C] //Proc of the 28th ACM Int Conf on Information and Knowledge Management. New York: ACM, 2019: 2129-2132
[30]Du Shengjie, Li Tianrui, Yang Yan, et al. A traffic flow prediction model based on sequence-to-sequence spatial-temporal attention learning[J]. Journal of Computer Research and Development, 2020, 57(8): 1715-1728 (in Chinese)(杜圣东, 李天瑞, 杨燕, 等. 一种基于序列到序列时空注意力学习的交通流预测模型[J]. 计算机研究与发展, 2020, 57(8): 1715-1728)