刘 志,陈 洋,周涵林,卞纪新
(浙江工业大学 计算机科学与技术学院,浙江 杭州 310023)
随着城市化进程的发展,城市交通的健康运行面临着巨大挑战[1]。准确的交通流预测不仅能帮助智能交通系统(ITS)更好运行,而且可以对交通拥堵和交通事故做出及时的响应,从而提高城市交通运行效率。交通流预测是一个典型的时空数据预测问题。交通流数据在时间上呈现趋势性和周期性,上一个时间片的交通流会影响下个时间片的交通流状态,并且工作日的交通流基本呈现同一趋势,这是由于人们工作上下班而导致的。交通流数据的空间性体现在一个道路内的车辆会随着路网流到相连的路网,也称为路网传播性。此外交通流还存在动态相关性,交通流特征亲和度高的道路通常会表现出相似的交通演变规律[2]。高速公路交通流数据在时间上和空间上都表现出强的相关性和动态性。准确的交通流量预测在缓解道路拥堵[3]、预警交通事故[2]和交通控制管理[4]等领域发挥着越来越重要的作用。交通数据的主要特征是复杂的空间和时间相关性,以往的交通流预测模型通常基于统计的方法建模时间关联,如历史平均值、向量自回归[5]和自回归综合移动平均[6]等方法,然而这类方法通常依赖专家知识,且由于模型限制无法建模时空关联。因此,笔者回顾了交通流预测的相关工作。在交通流预测中,空间信息起着非常重要的作用,道路的拓扑结构以及车道间的联系等都在一定程度上影响着交通流预测的准确性。传统的交通流预测使用网格处理空间信息,即用数学方法把道路网划分为大小相同的网格区域,再使用卷积神经网络(CNN)提取空间特征[7],然而基于CNN的方法难以处理交通中的非欧几里得数据,因此图形神经网络(GNN)被提出来,GNN可以很好地处理关系依赖,随着GCN的出现,经典的卷积随之被推广到了图域,更多学者们把目光转移到了GCN的研究上,GCN可以对不规则的道路拓扑结构建立其空间相关性[8-11],然而以往的研究侧重于建模其路网相连的空间相关性,忽略了节点之间的动态空间相关性。
传统的处理时间相关性的方法采用的是时间序列预测方法,如自回归移动综合平均和向量自回归模型等,以捕捉多个时间序列中的线性相关性。然而他们难以捕捉交通流中的高度非线性。递归神经网络由于能够捕获时间相关性,被广泛地用作交通预测模型中的一个组成部分[12]。李朝阳等[8]将交通流数据分解为具有不同空间相关性的稳定分量和动态分量,通过双流图卷积提取稳定和动态的空间相关性,并通过参数化跳过连接方法来融合时空相关性预测交通流数据。Bai等[13]提出用节点自适应参数学习和数据自适应图生成模块来增强传统的图卷积网络,但是他们训练的耗时较长,且难以处理长输入序列。CNN训练速度相对较快,结构更为简单[11,14]。然而CNN不仅难以处理长时间序列,而且在模型中要堆叠很多层。基于自注意力机制的Transformer得益于具有全局并行的特点,在自然语言处理领域取得非常好的效果[15]。Zhang等[16]认为样本卷积和交互网络(SCINet),以多分辨率执行样本卷积和交互,实现良好的时间序列预测效果。以往建模时间相关性的方法,没有考虑到交通中局部和全局的时间相关性。为应对上述挑战,笔者提出一种动态图循环网络(DRGCN),首先,在每个循环神经网络模块中,使用亲和度建模节点空间相似性;然后,结合预定义邻接矩阵,有效地建模路网中的时空动态性;最后,在此基础上对样本卷积交互网络进行一次全局时间依赖建模,有效地捕获交通中的时间相关性,提升模型效果。通过在真实数据集下的实验结果证明,笔者模型在短期交流预测上的效果优于其他基线模型。
笔者提出的动态图循环网络如图1所示。框架使用时空交通数据去生成未来的交通流。该模型分为两个模块,基于RNN结构的动态时空图卷积模块建模局部时空依赖和基于样本卷积交互网络模块建模全局时间依赖。前者通过生态动态邻接矩阵结合预定义的邻接矩阵实现动态交通特征提取;后者输入提取后的交通特征建模全局的时间依赖。
图1 基于动态图神经网络的交通流预测流程框架
将传感器视为图上的节点,传感器所在道路的连接视为图上节点对之间的边权重。根据传感器之间的道路网络聚集进行邻接矩阵构建[17],预定义邻接矩阵权重的计算式为
(1)
式中:A(i,j)为邻接矩阵中节点i和节点j连接的权重;d(i,j)为节点i和节点j之间的距离,指路网拓扑连接的距离;δ为距离的标准差;k为控制矩阵的稀疏度阈值。
从Caltrans performance measurement system(PeMS)收集了历史的交通数据。正如Chen等[18]的研究,PeMS是加利福尼亚州实时交通数据集中存储数据库,通过布置传感器,每30 s收集一次交通数据,每5 min聚合一次,得到完整周期的交通数据集。交通态势体现当前道路运行情况,可以用于指导交通信号控制[19]。因此,引入拥堵系数CI来表示当前路网的拥堵情况,CI表达式为
(2)
式中:当前区域的限速统一使用70 km/h;当前速度为当前道路的平均速度。当CI系数小于0时,即存在超速现象,这里将CI置为0,否则为公式计算值。高峰期是交通周期性的重要体现,将高峰期定义为
(3)
式中:P为早晚高峰期,将08:00—09:00和17:00—19:00作为高峰期。在每个时间片进行输入到样本卷积交互网络建模全局时间依赖前,将这两个指标结合天气作为辅助因素输入到模型中。
为了建模交通中动态的时空依赖,受Li等[12]启发,提出一个基于RNN结构的动态图卷积结构去处理图序列信息,具体情况如图2(a)所示。
图2 子模块结构图
(4)
(5)
(6)
通过上面的公式,将当前的交通数据,隐藏状态和辅助交通信息进行聚合,目的是通过节点特征相似性构建出当前的邻接矩阵。具体来讲,对于每个节点vi,通过图神经网络得到节点的隐藏变量ai,进而将道路中的节点对亲和度关系建模为
(7)
(8)
基于预定义的图邻接矩阵进行聚合无法捕获的动态的交通变化,然而仅基于动态图邻接矩阵的进行聚合会丢失一些交通路网的信息。结合预定义邻接矩阵和动态邻接矩阵进行聚合,如图2(b)所示。具体而言,在每一个图卷积层,将两种图卷积的结果进行权重求和。第l层图卷积表示为
(9)
H(0)=Hin
(10)
式中:α,β均为超参数,定义两个图卷积神经网络权重;σ(·)为ReLU激活函数;度矩阵D=∑jAij为对角矩阵;W为可学习参数。第t时刻的隐藏状态表示为
Ht=σ(X×W(1)×W(2)+b)
(11)
式中:σ(·)为softmax激活函数;W(1),W(2)均为可学习参数;b为偏置项。
循环神经网络、自注意力机制和传统的时域卷积网络忽略了时间序列预测的一些特性,尤其是趋势、季节性和不确定性。样本交互卷积模块如图2(c)所示,首先通过将输入的数据或特征下采样成两个子序列;然后用一组不同的卷积滤波器从每个序列中提供同质和异构的信息,并引入交互学习来补偿采样过程中的信息损失;最后将所有低分辨率向量连接成一个新的向量,并添加到原始序列中进行预测。
(12)
(13)
多个样本卷积交互模块以树形排列组成样本卷积交互网络。第l层有2l个模块组成(l=1,2,…,L)。输入的时间序列数据通过样本卷积交互模块逐步下采样成不同的粒度进行处理,在经过l层的处理后,通过逆转奇偶分裂操作,重新排列子特征中的元素,将它们重新连接成一个新的序列,并通过残差连接添加到原始序列中进行预测。
通过多层前馈神经网络得到最终预测结果。定义为
(14)
(15)
在真实数据集上进行实验。交通数据集包括:1)MERT-LA指的是洛杉矶高速公路环路检测器收集的公共交通速度数据集,包括207个道路上的传感器收集的2012年3月1日至2012年6月30日的数据;2)PEMS-BAY包含加州交通局收集的2017年1月1日至2017年5月31日湾区公共交通速度,共有325个传感器。为了避免缺失数据对实验结果造成影响,受周晓等[21]的启发,对时间序列进行简单修复。
2.2.1 实验细节
首先,将数据集按照60%,20%,20%的比例进行切分,分别代表训练集、验证集和测试集;然后,将模型通过反向传播进行优化,对于框架中的所有模型,将学习率设置为0.01并应用Adam优化器进行优化;最后,将预定义图邻接矩阵的阈值k设置为0.1,对于图生成器,将其中的图卷积模块设置为3层,动态图卷积隐藏状态输出维度为64,辅助信息为4维,设置输入时间片长度T为12,预测时间片长度P为1,6,12,样本卷积交互网络l为2,并使用MAE作为训练的损失函数。
2.2.2 评估指标
为了对比不同模型的实验效果,采用均方根误差(RMSE)、平均绝对误差(MAE)和平均绝对误差百分比(MAPE)作为评价指标。
2.2.3 基线模型
将DRGCN与传统的基于统计的方法(HA,VAR[5],ARIMA[6])和最新提出的图神经网络的方法(FNN,STGCN[9],Graph WaveNet[14],DGCRN[12],AGCRN[13],GMAN[10],MTGNN34])进行比较。传统的方法和一些神经网络方法(HA,VAR,ARIMA等)无法处理图的数据,因此不保留图拓扑结构,将图转变为序列作为模型的输入。
为了取得最好的实验效果,对动态时空卷积网络的输入层长度进行了对比实验,隐藏层长度对比情况如图3所示。由图3可知:在预测15,30,60 min的时间片长度上,隐藏层越长,模型取得的效果越好,这是因为隐藏层越长,保存的交通特征信息越多。但一味地增加隐藏层长度会导致模型效率下降,考虑到模型效果和模型效率,选择64作为隐藏层长度输入到全局信息建模中进行实验。
图3 隐藏层长度对比
笔者模型和基线模型在两个数据集上的实验效果分别如表1,2所示。由表1,2可知:1)深度学习模型的效果普遍好于机器学习的方法,这是因为机器学习的方法往往依赖于先验知识并且难以建模交通中复杂的时空关系;2)基线模型中,GMAN由于采用了相对简单的时空自注意力机制建模时空相关性,导致模型在短期预测效果变差,Graph WaveNet,MTGNN使用的自适应的邻接矩阵无法在每个时间片上建模动态的时空依赖,因此模型效果不如使用RNN生成动态邻接矩阵的DGCRN,而DGCRN使用RNN单元建模时空关系,会损失一些全局时间信息,降低了短期预测的性能;3)可以看到PEMS-BAY的模型效果均好于MERT-LA,这是因为PEMS-BAY的数据集相对简单,这也说明了不同的数据集对交通流预测的效果会造成比较大的影响,越复杂的数据集,模型效果越差;4)笔者模型虽然在预测15 min的评价指标均优于其他方法,但在其他时间片长度上模型效果差于一些基线模型,主要原因有两个:第一,设计的DRGCN通过动态图卷积网络进行时空特征建模,这使得短期的交通流预测有更好的性能,但随着时间片变长,交通的不确定性增加,导致模型效果变差;第二,通过样本交互卷积网络进行全局时间依赖建模,弥补了RNN结构的缺陷,因此在短期预测时取得更好的效果。
表1 MERT-LA实验结果对比
表2 PEMS-BAY实验结果对比
为了比较模型中各个组件的作用,进行了消融实验:1)w/o pre-define DRGCN去掉预定义的图邻接矩阵,仅用动态邻接矩阵;2)w/o dynamic DRGCN去掉动态邻接矩阵,仅用预定义图邻接矩阵;3)w/o SCINetDRGCN去掉样本卷积交互网络。
实验结果如图4所示。由图4可知:每个模块的减少都会导致模型效果下降。动态图邻接矩阵和预定义邻接矩阵对模型的造成影响接近,这说明两个邻接矩阵都能建模交通中的信息。样本卷积交互网络对模型性能的影响最大,因为RNN结构往往会丢失一些全局的信息,所以导致模型效果下降。
图4 消融试验对比
近年来,城市汽车保有量不断提高,给城市道路交通的健康运行带来严峻的挑战。作为智能交通系统的关键部分之一,准确的交通流预测能帮助城市管理者制定科学有效的交通控制方案。除了时间相关性和空间相关性,交通数据还具有明显的动态时空相关性,建模交通数据的动态时空相关性可以有效地提高交通流预测的精度。笔者提出一个新的基于RNN和图神经网络的框架(DRGCN)。首先在每个RNN模块通过图生成器建模交通中的动态空间关联;然后结合预定义的邻接矩阵建模交通中动态时空关联;最后通过样本卷积交互网络层进行全局时间依赖建模以增加时间序列学习能力。实验结果表明所提出的DRGCN模型在真实数据集上结果优于基线模型。