面向高速公路服务区流量预测的动态时空图神经网络

2024-01-05 07:21滕志伟段洪琳王振华蔡灿金尚泰
关键词:交通流量服务区注意力

滕志伟,段洪琳,王振华,蔡灿,金尚泰

(1. 招商新智科技有限公司,北京 100073;2. 北京交通大学 电子信息工程学院,北京 100044)

高速公路服务区保障了人们的安全出行和舒适出行,并且可以给出行者提供诸多便捷服务。服务区的服务能力高低不仅影响高速公路的通行效率,还影响着人们的出行体验。因此,提升高速公路服务区的管理水平和服务质量,可以满足出行者的多种需求,提升出行感受。

交通流量是描述高速公路服务区交通状态的重要参数。 通过对服务区驶入车流量的预测,可以让服务区管理部门提前预知需要多大的服务能力来应对将要到达的车辆,在低峰期减少人员和资源浪费,高峰期对高速公路上的车辆进行合理的疏导。交通流量预测是智能交通领域的一个研究热点,已经有很多方法被用于交通流量预测。最初的研究者利用传统的时间序列分析模型预测交通流量,Williams 等人[1]充分考虑了交通流量的周期性特点,基于ARIMA(Auto-Regressive Integrated Moving Average)预测交通流量。Lu 等人[2]基于交通流量序列中的格兰杰因果关系,利用VAR(Vector Auto-Regression)预测交通流量。由于交通流量序列的复杂性和非线性特征,对交通流量序列的动态性做出线性相关性假设的模型无法取得理想的效果。为此,一些研究学者基于非线性模型描述交通流序列,以实现对未来交通流的预测。 王科伟等人[3]利用相空间重构的方法对多维交通流量时间序列数据进行了重构,基于混沌理论预测交通流量。张培林等人[4]针对路网中相邻断面(如收费系统中的门架)间的关联性,构建了高维混沌时间序列模型预测交通流量。这些基于非线性理论的预测模型通常比线性模型的效果更好,但是他们的表现很大程度上依赖于大量的特征构造,而特征构造通常是比较耗时的。 为此,很多研究基于深度神经网络预测交通流量[5-7]。 Zhang 等人[8]利用长短期记忆循环神经网络预测交通流量。王体迎等人[9]利用门控循环神经网络对交通流量进行预测。虽然已有很多工作研究了交通流量预测,但是对于高速公路服务区的流量预测还存在一些挑战。

首先,尽管基于循环神经网络或者卷积神经网络的方法可以捕获交通流量数据中存在的动态性,但其建模的动态性相对于输入数据在时间维度上的变化是不变的,这将限制模型的预测能力[10]。注意力机制[11]可以建模流量数据在时间维度的动态相关性,但是难以捕获流量序列中的局部趋势性,为此,本文构造了感知趋势性变化的多头注意力模块,以动态地捕获流量序列中的动态性。

另外,高速公路服务区属于高速公路网中的一部分,驶入服务区的车流量与路网中其他断面的流量具有空间相关性,比如高速公路服务区上游断面的流量增大,驶入服务区的车流量也可能增大。为捕获路网系统中不同位置交通流量的空间相关性,一些基于图神经网络[12-16]的方法被用于交通流量预测,但是,由于不同位置的流量序列具有其独特的属性,比如在相同时间段的变化范围,变化幅度可能是不同的,因此高速公路网中的交通流量具有空间异质性[17]。基于图卷积的方法利用静态的图结构建模不同位置流量的空间相关性,难以建模空间异质性,为此,本文利用动态图神经网络捕获路网中的空间异质性,实现更准确的流量预测。

为实现准确地预测驶入高速公路服务区的车流量,本文提出一种动态时空图神经网络(Dynamic Spatial-Temporal Graph Neural Network,DSTGNN),通过动态图神经网络建模驶入服务区车流量与其他断面流量的动态空间相关性和异质性。 在时间维,构造感知趋势性变化的多头注意力模块,对流量序列在时间维度上的动态性进行建模。 最后,本文通过实验说明了提出方法的有效性。

1 相关理论

1.1 问题定义

本小节给出高速公路流量预测问题的形式化定义。

(1)高速公路路网。将高速公路路网定义为一个有向图G= (V,E),其中V是|V|=N个节点的集合,每个节点代表高速公路上的一个断面处的检测点(如收费系统中的门架)或者服务区。E是|E|=M条边的集合,表示节点间的连接关系。

(2)图信号矩阵。 在第t个时间间隔内,观测到高速公路路网G上的信号用矩阵Xt=(xt,1,xt,2,…,xt,N)T∈RN×C表示,其中xt,v∈RC表示第t个时间间隔内节点v的C个观测量的取值。ft=表示第t个时间间隔内,高速公路路网G上N个节点处观测到的流量序列。

(3)驶入服务区车流量。根据服务区(节点i)所在路段的邻接上下游断面检测点得到通行车辆的轨迹数据,在各个时间间隔t计算经过服务区所在路段的车辆通行时间,若车辆通行时间大于最长通行时间,则将该车辆计入驶入服务区的流量。其中,最长通行时间由服务区所在路段长度和路段最低限速计算得到。

(4)交通流量预测。 给定历史Th个时间片的时空图信号矩阵χ= (Xt-Th+1,Xt-Th+2,…,Xt) ∈RN×C×Th,测未来Tp时间片内的流量矩阵F=(ft+1,ft+2,…,ft+Tp) ∈RN×Tp。 本文在训练和验证中预测所有节点的交通流量,在测试中只预测服务区的驶入车流量。

1.2 注意力机制

注意力机制的优势在于可以根据不同的模型输入动态地从输入中抽取出更为关键的信息,从而学习到更准确有用的信息应用于下游模型。交通流量数据在空间维度的相邻的节点之间或者在时间维度的相邻时间片之间的相关性是动态变化的,可以通过注意力模块去学习流量数据在时间维度的动态相关性。

注意力机制的核心思想是使用查询向量和键值向量,将值向量映射成一个输出向量。 注意力机制使用查询向量和键值向量为每一个值向量计算出一个重要性权重,然后将值向量加权求和得到最终的输出向量,形式化的表示如下:

其中,Q是查询向量;K是键值向量;V是值向量;dmodel为向量的维度。

1.3 图卷积神经网络

服务区所在高速公路网的结构是非欧式的,即路网的局部输入维度可变,并且局部输入的排列具有无序性,此时常规的卷积网络已无法适用路网对应的图结构,可以基于图卷积神经网络建模服务区所在路网的交通流量数据。

由于二维卷积在欧式空间中使用卷积核去捕获空间维度的局部特征,因此其无法处理非欧氏空间图结构类型的数据。为了能有效学习图结构数据的空间维度特征,将图信号矩阵通过傅里叶变换转化到谱域中,在谱域中定义与卷积核算子等价的对角化线性算子,对经过傅里叶变换后的图信号矩阵在谱域中实现卷积运算。傅里叶变换需要对通过邻接矩阵和度矩阵计算得到的拉普拉斯矩阵分解,一般采用切比雪夫多项式去近似替换该操作。ChebNet 图卷积运算[18]使用切比雪夫多项式近似将图卷积的操作限制在了K阶邻域内,定义如下:

其中,θk∈RK是待学习的参数;x∈RN是N个节点某一特征的图信号矩阵;是归一化的拉普拉斯矩阵,是矩阵L的最大特征值。矩阵,A为图的邻接矩阵,D∈RN×N是一个对角矩阵,其对角线上元素的取值为。 切比雪夫多项式以递归的形式定义为Tk(x) = 2fTk-1(x) -Tk-2(x),其中T0(x) =1,T1(x) =x。 Welling 等人[19]仅使用一阶邻居简化了ChebNet 中的卷积操作,提出了GCN 模型:

其中,σ是非线性激活函数;W∈RC×F是卷积核的参数矩阵;对于本文研究的有向图,A=表示图节点间的交互关系;为图邻接矩阵,。

2 基于动态时空图神经网络的服务区流量预测模型

本文提出了一种动态时空图神经网络模型应用于高速公路服务区车流量预测,如图1(a)所示。 该模型基于编码器-解码器结构,其中,编码器和解码器都由具有相同结构的动态时空相关性建模模块(图1(b))堆叠而成。

图1 DSTGNN 模型架构

2.1 动态时空相关性建模模块

2.1.1 感知趋势性的多头自注意力

多头自注意力机制是一种常用的注意力机制的实现方式,它可以从不同的子嵌入空间中提取有用的信息,与单头注意力机制相比,多头自注意力机制可以学习到更丰富的信息,其形式化表示如下:

其中,h为注意力头数;为作用于Q、K、V的映射矩阵;WO为输出映射矩阵。多头自注意力机制可以用于建模交通流量数据中复杂的动态相关性。然而,多头自注意力机制最初被提出时是用于处理离散的数据,比如单词,其并不能很好地建模连续数据中的局部趋势性信息,因此,在应用其建模交通流量数据时,难以捕获到序列中局部的趋势性变化。为更好地学习到交通流量在时间维度上的动态相关性,本文使用感知趋势性变化的多头自注意力机制在时间维度建模流量数据的局部上下文信息。利用一维卷积运算替换公式(4)中对查询向量和键值向量执行的映射运算。由于卷积运算可以将局部上下文信息用于计算嵌入表示的输入,因此模型可以感知到交通流量序列中局部的趋势性变化模型。感知趋势性的多头自注意力机制(Trend-Aware Multi-Head Self-Attention,TAMHSA)具体定义为:

2.1.2 空间动态图卷积

DSTGNN 模型使用动态图神经网络捕获驶入服务区的交通流量与路网中断面交通流量在空间维度的动态性和异质性。图卷积网络通过聚合节点间的信息学习各个节点的嵌入表示。在第l个动态时空相关性建模模块中,基于感知趋势性的多头自注意力的输出,图卷积运算表示为:

动态图卷积网络通过自注意力机制动态地计算节点间的空间相关性。给定感知趋势性的多头自注意力输出的节点嵌入表示,空间相关性权值矩阵St∈RN×N的计算定义为:

其中,St中的元素Sij表示节点i和节点j的相关性强度。得到空间相关性权值矩阵St后,可通过哈达玛乘积运算将其用于调整静态的权值矩阵A,具体计算为:

2.2 时空位置嵌入表示

2.2.1 时间维位置嵌入表示

在时间维度的感知趋势性的多头自注意力模块中,输入序列的动态性完全由自注意力机制建模。由于自注意力机制的运算中利用加权求和函数建立输入和目标值之间的相关性,其无法感知序列中的顺序性。 然而,时间序列的顺序性信息对于准确的服务区驶入车流量预测是非常重要的,比如,在预测中午11 点至12 点驶入服务区的车流量时,10 点至11 点的交通流量信息通常会比9 点至10 点的交通流量信息更具有指导性。 因此,本文使用位置嵌入表示[20]建模输入序列在时间维度的顺序信息。在输入序列的第p个位置,时间维位置嵌入表示的每一维取值d,1 ≤d≤dmodel表示为:

2.2.2 空间维位置嵌入表示

在2.1.2 中,DSTGNN 模型使用动态图神经网络建模高速公路网中不同位置交通流量序列的动态相关性。 然而,高速路网中的服务区或其他断面节点拥有一些静态的空间属性,比如服务区与上下游断面节点的邻接关系,服务区与上下游断面节点的距离等。这种静态的空间属性不随时间变化,在一定程度上解释了不同位置交通流量序列的空间异质性。融合服务区和断面节点的静态空间属性有助于准确的交通流量预测。 为此,本文在谱域中执行对图信号矩阵的卷积,学习图结构数据的空间维度特征。具体的,对每个节点维护一个空间嵌入表示矩阵。然后对其执行图卷积计算得到空间维度的位置嵌入表示矩阵ESP。

时间维度和空间维度的位置嵌入表示矩阵ETP和ESP与输入图信号矩阵χ(0)相加,使得模型感知到输入序列在时间维度的顺序性和空间维度的静态属性,以实现更准确的交通流量预测。

2.3 编码器-解码器

DSTGNN 模型基于编码器-解码器结构,其中,编码器和解码器都由具有相同结构的动态时空相关性建模模块堆叠而成。在动态时空相关性建模模块中通过残差连接和层标准化保障深度网络模型的有效性。首先,基于全连接层和时空位置嵌入表示将原始输入χ∈RN×C×Th转化为高维嵌入表示χ(0)∈RN×dmodel×Th,其中dmodel>C。然后通过由L个动态时空相关性建模模块堆叠而成的编码器将输入序列映射为,基于编码器的输出χ(L),解码器利用另外L′个堆叠的动态时空相关性建模模块生成输出序列Y(L′)=,最后通过一个全连接层将Y(L′)映射到输出F。DSTGNN 可以通过反向传播实现端到端的训练,以最小化预测值和真实值之间的平均绝对误差。

3 实验结果及分析

实验使用桂林市路网区域基于收费系统数据处理得到的交通流量数据,所选区域共包含36 个断面和5 个服务区,时间范围从2022 年1 月1 日到1 月29 日共计29 天。观测量为交通流量,因此C= 1。以一小时为单位聚合驶入服务区和断面的交通流量。按6∶2∶2 的比例划分训练集、验证集和测试集,使用训练集的均值和标准差对所有数据进行归一化,输入Th= 12 个时间步的数据,使用前文所述模型预测Tp= 1 个时间步驶入服务区的交通流量。

3.1 评价指标

为验证本文提出的模型的预测性能,本文选取了回归任务常使用的平均绝对误差(Mean Absolute Error,MAE)、均 方 根 误 差(Root Mean Squared Error,RMSE)和平均绝对百分比误差(Mean Absolute Percentage Error,MAPE),其公式如下所示:

3.2 基准线模型

选取了以下的基准线模型与本文提出的模型进行对比:(1)ARIMA[1],一种建模时间序列中相关性和趋势性的预测模型;(2)SVR[21],一种使用支持向量机对时间序列进行拟合并实现回归分析的机器学习模型;(3)LSTM[8],循环神经网络,能很好地挖掘数据中的时序信息与语义信息。

3.3 参数设置

本文使用Pytorch 框架训练模型,节点嵌入表示维度dmodel= 64,感知趋势性的注意力模块的头数h= 8,编码器的层数L和解码器的层数L′都设置为3,卷积核的大小设置为3,训练时批量大小设置为64,初始学习率设置为0.003,每10步衰减30%,早停步数设置为15。

3.4 实验结果分析

按上述使用不同的方法在相同场景下进行预测,结果如表1 所示。

表1 不同方法在数据集上实验结果比较

如表1 所示,DSTGNN 模型在各项评价指标中均能得到比其他模型更加优异的预测结果。ARIMA、SVR、LSTM 只捕获了交通流量序列在时间维度的信息,建模能力有限,并没能取得较好的预测效果。 而DSTGNN 模型在高速公路服务区车流量预测中获得了比传统方法更好的预测结果,这是因为DSTGNN 模型不仅建模了流量数据在时间维度的动态相关性,还建模了驶入服务区车流量与其他断面车流量在空间维度的动态相关性和异质性。

为了更全面地分析本文模型(DSTGNN)的优势,本文对各模型在桂林路网中一个服务区从1月24 日23:00 到1 月25 日23:00 时间区段的流量预测值进行了可视化,如图2 所示。图2 横坐标表示时间,范围为0~24 h。纵坐标为流量值。从图2 中可以看出DSTGNN 模型的预测值与真实值更接近,取得了更好的预测效果。

图2 各模型的预测值和真实值对比

3.5 消融实验分析

为进一步分析模型各个组件的作用,本文设计了原模型DSTGNN 的四个变体模型进行消融实验,下面将这四个变体与DSTGNN 进行比较,变体模型的描述如下:

(1)DSTGNN_wo_TE:在DSTGNN 基础上,不使用时间维位置嵌入表示。

(2)DSTGNN_wo_SE:在DSTGNN 基础上,不使用空间维位置嵌入表示。

(3)DSTGNN_wo_TA:在DSTGNN 基础上,使用多头自注意力机制替换感知趋势性的多头自注意力机制。

(4)DSTGNN_wo_DG:在DSTGNN 基础上,使用公式(3)中的GCN 代替空间动态图卷积。

消融实验的结果如表2 所示,首先,在不使用时间维位置嵌入表示(DSTGNN_wo_TE)或空间维位置嵌入表示(DSTGNN_wo_SE)的情况下,实验效果都有明显下降,这表明模型通过感知输入序列在时间维度的顺序性和空间维度的静态属性,可以实现更准确的交通流量预测。 其次,在不能感知时间维度的局部趋势性变化时(DSTGNN_wo_TA),模型的效果也有所下降,这说明仅用多头自注意力机制建模动态相关性具有一定的局限性。 最后,用GCN 替换动态图卷积计算后,模型效果下降,说明通过动态图卷积建模高速公路网中驶入服务区的交通流量和其他断面交通流量的动态相关性和异质性有助于提升预测准确度。

表2 消融实验结果

4 结论

本文提出了一种动态时空图神经网络模型应用于高速公路服务区流量预测,该模型在建模服务区和断面交通流量在时空维度的动态相关性的同时,融合了输入数据在时间维度的顺序性和空间维度的静态属性。将本模型同其他常用的预测方法在相同数据集相同预测场景下进行了实验,实验结果表明本模型在预测效果上达到了最优。但该方法依然存在一些优化空间,比如还可以考虑其他外部因素,如节假日等特殊时期对服务区车流量的影响,合理地量化这些因素,实现更准确的流量预测可以作为优化模型的方向。

猜你喜欢
交通流量服务区注意力
基于AIoT+GIS的智慧服务区构建
让注意力“飞”回来
高速公路服务区信息技术的应用
基于XGBOOST算法的拥堵路段短时交通流量预测
基于GA-BP神经网络的衡大高速公路日交通流量预测
“扬眼”APP:让注意力“变现”
建言高速公路服务区实现“双提升”
A Beautiful Way Of Looking At Things
基于复合卡和ETC的交通流量采集研究
MLFF系统在交通流量控制中的应用