APP下载

基于图注意力网络的交通流量时空预测模型

2022-08-03王博文王景升

公路交通科技 2022年6期
关键词:交通流量神经元注意力

王博文,王景升

(中国人民公安大学 交通管理学院,北京 100038)

0 引言

机动车是人们生活中的重要出行方式之一。近年来,机动车数量的急剧增加导致交通拥堵、噪音及尾气排放问题日益严重,给相关部门的管理工作造成了极大压力。为实现准确的交通控制与交通诱导,构建科学理性的管控机制,智能交通系统(Intelligent Traffic System,ITS)应运而生。ITS是解决缓解交通拥堵、提升道路通行能力的有效途径,而对交通流量参数进行较为准确的预测工作是辅助ITS进行长、短期决策任务的关键。

短时交通流量预测是近年来的热点话题,早期的研究学者多使用统计学模型、机器学习模型及基准深度学习模型进行建模。统计学模型如季节性自回归积分滑动平均(Autoregressive Integrated Moving Average,ARIMA) 、卡尔曼滤波模型、指数平滑模型等[1]。Williams等[2],开发了一种适用于季节性时间序列的ARIMA模型,并使用交通数据集对其进行测试,结果显示ARIMA的效果优于K邻近、历史平均等模型。Kumar等[3]设计实现了一种基于卡尔曼滤波技术的预测方案,并证实了这种技术在小样本量的交通流量预测任务中的表现优于ARIMA。机器学习模型如支持向量机(Support Vector Regression,SVR)[4]、K邻近[5]、贝叶斯网络等。Smola等[6],概述了SVR用于时间序列预测的过程以及对大型数据集的处理方案。基准深度学习模型如长短时记忆网络(Long Short-Term Memory,LSTM)、门控循环单元(Gated Recurrent Unit,GRU)等[7-12]。Ma等[13]将LSTM用于交通微波参测器采集的车辆行驶速度的预测上,并将其与流行的参数与非参数模型进行对比,得到LSTM在长时间序列的预测上表现出卓越的效果。Vinayakumar等[14]验证了循环神经网络及其变体模型在交通流量预测中的效果,试验证明,LSTM等模型表现良好。但是统计学及机器学习模型大多都基于时间序列的变化趋势平稳性假设,基准深度学习模型忽略了交通流量序列的时空特性。

为了同时考虑交通流量序列的时空特性,一些能够捕捉空间特征的模型被用于交通流量预测任务。Ma等[15]将交通网络构建为网格形式,并使用卷积神经网络(Convolutional Neural Networks,CNN)抽象地对网络范围内的交通速度进行预测。随着研究的深入,图神经网络(Graph Neural Network,GNN)与图卷积神经网络(Graph Convolutional Network,GCN)被用来弥补CNN模型空间处理能力的不足,GNN,GCN可以处理图结构的数据,更适合道路网络的建模。Lu等[16]首次将图神经网络(Graph Neural Network,GNN)与LSTM进行结合并应用于交通速度预测任务,使用GNN捕捉时空相关性。LÜ等[17]GCN使用将路网构成图结构,并使用循环神经网络同时对时空特征进行学习,模型效果相对于对照组提升了3%到6%,证明了空间特征对于交通流量预测任务的有用性。Zhao[18]使用GCN对路网的空间特征进行捕捉并将其与现有基准模型进行试验对比,验证了使用GCN的有效性。但是GNN,GCN均不允许为邻居中的不同节点指定不同的权重,限制了模型对于空间信息相关性的捕捉能力。

图注意力网络(Graph Attention Networks,GAT)能够根据邻居节点特征的不同,使其得到不同的权重,以改变信息的聚合方式,提升模型对于空间的表达能力。同时,GNN,GCN均只适用于处理无向图,GAT所处理的图无需是无向的。GAT处理下的目标节点只与其共享边的节点有关,在进行训练时无需得到整张图的信息,训练时间得以缩短。使用GAT获取邻居信息后将数据输入标准卷积结构用于在时间维度上进一步合并时间步信息。

除此之外,交通流序列包括交通流量、速度、占有率等多个因素,各个因素之间相互影响,准确进行交通流量预测要充分挖掘交通流量序列之间的非线性关系。

基于此,本研究提出一种基于图注意力网络的交通流量时空预测模型,命名为ST-GATC。主要的贡献点如下:

(1)同时考虑了时空维度。将交通网络建模为有向图的形式,提高了拓扑结构的可解释性。使用图注意力网络及标准卷积分别对空间、时间维度进行特征提取,在使用图注意力网络时采用多头注意力机制,提高了模型的预测效果。

(2)在输入层,同时将多个交通流量变量作为输入,挖掘交通流量序列中的非线性关系,以提高模型的拟合效果。

(3)在模型评价方面,将多个模型作为对照组,试验结果表明,ST-GATC模型对于交通流量序列的拟合效果优于对照组模型。

1 图结构的建模

对于道路网络中的节点进行信息聚合时,应当考虑到相邻接点的可达性及上下游关系的影响。因此本研究将道路网络建模为有向图结构,定义边集为E,顶点集为V,得到路网的拓扑结构为G=(V,E)。定义图的邻接矩阵为A,则Gt=(Vt,E,A)为第t个时间步时的图,Vt为其点集。节点为n的图的邻接矩阵A表示为:

(1)

式中,aij为节点i与j的可达性及上下游关系;若节点i为j的上游节点,则aij=1,aji=0。

2 ST-GATC模型

ST-GATC模型的结构如图1所示。ST-GATC模型的输入层为多个交通流量因素的输入,数据顺序通过时间模块、空间模块及输出层后计算预测值与真实值的距离不断更新网络中的参数。

图1 ST-GATC模型的结构Fig.1 Structure of ST-GATC model

2.1 多因素输入

交通流量序列包括交通流量、占有率、平均速度等多个因素,各个因素之间相互影响,准确进行交通流量预测要充分挖掘交通流量序列之间的非线性关系。本研究将交通流量、平均速度、时间占有率同时纳入模型,以挖掘交通流量多个特征之间的非线性关系,对交通流量进行准确预测。

2.2 时间模块

在时间维度采用标准的一维卷积对时间步的特征进行聚合。相比于LSTM,GRU模型,一维卷积在训练时不依赖于之前的输出,不需要迭代,计算量较小,时间复杂度低。一维卷积操作原理如图2所示。

图2 一维卷积操作Fig.2 One-dimensional convolution operation

设输入数据为X,每个顶点的特征长度为Ci,时间步长为M。沿着时间维度在无padding的情况下进行大小为一维的卷积操作,将输入的X映射为矩阵Y,时间维度的输出为:

Y=Conv(X)。

(2)

2.3 空间模块

GNN,GCN均不允许为邻居中的不同节点指定不同的权重,限制了模型对于空间信息相关性的捕捉能力。GAT可以采用注意力机制使邻接节点根据自身特征的不同得到不同的权重。

因此在空间维度使用GAT对有向图进行处理,并使用多头自注意力机制使每个注意力机制分别处理一个子空间,为目标节点的不同邻接节点分配不同的注意力权重,降低模型的过拟合风险,提高模型对于空间维度的表达能力。GAT模型的结构如图3所示。

图3 GAT模型的结构Fig.3 Structure of GAT model

将时间模块的输出Y作为空间模块的输入:

Y={y1,y2,…,yN},

(3)

式中yN为节点N经时间模块输出后的特征向量。

空间模块的输出为:

(4)

设将输入特征转化为输出特征的权重矩阵W,则节点j在节点i上的注意力值为:

eij=a(Wyi,Wj),

(5)

式中a(·)为计算节点相关性的函数。

使用LeakyReLU函数对其进行激活:

eij=LeakyReLU(aT[Wyi‖Wyj])

,(6)

式中LeakyReLU(·)为激活函数。

求出节点i所有邻接节点的注意力值,使用softmax函数对注意力权重进行归一化操作:

αij=softmax(eij)=

(7)

式中,LeakyReLU(·)为激活函数;a为待学习的向量;aT为向量a的转置;‖为拼接操作。

通过图注意力层,使用加权求和的方法进行特征提取,模型的输出结果为:

(8)

式中,σ(·)为激活函数;αij为节点i在节点j上的注意力值。

若使用多头注意力网络,则独立计算k组注意力系数后进行平均。模型的输出结果为:

(9)

式中αkij为节点i在节点j上第k组注意力值。

输出层是一个全连接层,最终预测结果为:

(10)

式中,Y′为空间模块的输出;w为全连接层的参数矩阵;b为偏置。

损失函数是预测值和真实值的距离度量:

(11)

3 实例验证

3.1 数据来源

数据来源于美国加利福尼亚州,取洛杉矶市第4区高速公路中307个检测点的数据作为本研究的样本,简称PEMS-04,交通流量因素包括交通流量、速度、时间占有率,采样时间间隔为5 min。

3.2 数据分析与预处理

数据规约。以5 min为样本时间间隔对数据进行汇集,处理后每天包含288个时间切片。数据输入模型前使用min-max归一化将交通流量数据映射到[0,1],在经过训练及测试后将预测结果反归一化后进行输出。设x为交通流量原始数据,xmin为某个交通流量字段的最小值,xmax为上述同一个交通流量字段的最大值,则标准化后的数据为:

(12)

建立道路网络时空有向图。通过分析道路网络中各节点之间的可达性及上下游关系,通过使用邻接矩阵,将道路网络中307个节点相关联构建时空有向图。

划分训练集和测试集。使用前45 d的数据作为训练集,后14 d的数据作为测试集。

3.3 模型建立

3.3.1 模型的参数设置

文中深度学习模型的建立均使用Python语言、Pytorch框架。本研究提出的模型ST-GATC使用反向传播机制,数据经过预处理模块后进入输入层,输入层维度为2;对于时间模块,数据经过一个卷积核为(1,3),输出通道数为64的标准卷积,在无padding的情况下进行卷积操作;对于空间模块,输入通道数为6×64,隐藏层通道数为6,输出层通道数为2,注意力头数为3。

对照组模型的隐藏层个数均为1。深度学习模型的Beach size均为64,损失函数为MSE,学习率为0.001,Epoch为1 000,其他参数均为默认值。

3.3.2 模型的评价指标

(14)

(15)

3.3.3 试验结果

使用PEMS-04数据集对各个模型的效果进行实例验证。分别使用试验组与对照组模型对数据进行训练、测试后,模型在测试集上的RMSE与MAE详见表1。对照组模型的输入因素均为交通流量,试验组ST-GATC模型的输入维度为2,分别为交通流量、平均速度。

表1 试验组与对照组模型在测试集上的RMSE与MAE值Tab.1 RMSE and MAE values of experimental and control models on test set

在PEMS-04数据集上,与对照组模型相比,ST-GATC模型的RMSE降低了约0.571~9.288,MAE降低约0.314~7.678,证明了ST-GATC模型在交通流量预测任务上具有较为优秀的性能。除此之外,相较于仅考虑空间维度建模的GCN,GAT,ST-GATC模型拥有更小的RMSE与MAE,说明时间维度建模的有效性。包含注意力机制的图结构网络GAT在预测效果上要优于不包含注意力机制的图结构网络GCN,说明了使用注意力机制后模型的预测效果有所提升。相较于仅考虑时间维度相关性的RNN,LSTM,GRU,ST-GATC模型的拟合效果更好,证明了空间维度建模的有效性。

各个模型的拟合曲线分别如图4所示。由图4得,不论在交通流量序列的波峰还是波谷,相较于对照组模型,ST-GATC模型的预测曲线都能够更好地与交通流量的真实值曲线相拟合。

图4 各个模型在一个节点上的测试集上的拟合曲线Fig.4 Fitting curves of each model on test set at one node

3.3.3.1 注意力头数试验

在PEMS-04数据集上,通过注意力头数试验验证ST-GATC模型注意力头数选取的合理性。设置ST-GATC模型的输入维度为2;卷积核大小为3,时间维度输入为2,分别是交通流量、平均速度,隐藏层神经元个数(时间维度输出个数)为64;空间维度输入层通道数为6×64,隐藏层通道数为6,输出层通道数为2,注意力头数分别设置为1,2,3,5,16。ST-GATC模型的RMSE,MAE值详见表2。

表2 注意力头数分别设置为特定值时,ST-GATC模型的评价结果Tab.2 Evaluation result of ST-GATC model when numbers of attention heads are set to specific values

对注意力头数分别设置为1,2,3,5,16时ST-GATC模型的评价结果进行可视化分析,RMSE及MAE值的趋势分别如图5、图6所示。

图5 注意力头数分别设置为特定值时,ST-GATC模型的评价结果(RMSE) Fig.5 Evaluation result (RMSE) of ST-GATC model when numbers of attention heads are set to specific values

图6 注意力头数分别设置为特定值时,ST-GATC模型的评价结果(MAE)Fig.6 Evaluation result (MAE) of ST-GATC model when numbers of attention heads are set to specific values

图5、图6得,模型的RMSE,MAE值随着注意力头数的增加呈现出先下降后上升的趋势,当注意力头数为3时模型的RMSE与MAE值均为最低,模型的预测效果优秀,因此注意力头数选取3。

3.3.3.2 神经元数量试验

在PEMS-04数据集上,通过神经元数量试验验证ST-GATC模型神经元数量选取的合理性。设置模型的输入维度为2;卷积核大小为3,时间维度输入为2,隐藏层神经元个数(时间维度输出个数)分别为8,64,128,256;空间维度输入层通道数对应分别为6×8,6×64,6×128,6×256,隐藏层通道数为6,输出层通道数为2,注意力头数分别设置为3。神经元数量试验结果详见表3。

表3 神经元数量分别设置为特定值时,ST-GATC模型的评价结果Tab.3 Evaluation result of ST-GATC model when numbers of neurons are set to specific values

神经元数量分别设置为8,64,128,256时,ST-GATC模型的评价结果进行可视化分析,RMSE及MAE值的趋势分别如图7~8所示。由图7~8得,模型的预测效果随着神经元数量的增加呈现出先下降后上升再下降的趋势,当神经元数量为64时模型的RMSE与MAE值均为最低,因此神经元数量选取64。

图7 神经元数量分别设置为特定值时,ST-GATC模型的评价结果(RMSE)Fig.7 Evaluation result (RMSE) of ST-GATC model when numbers of neurons are set to specific values

图8 神经元数量分别设置为特定值时,ST-GATC模型的评价结果(MAE)Fig.8 Evaluation result (MAE) of ST-GATC model when numbers of neurons are set to specific values

3.3.3.3 因素数量试验

在PEMS-04数据集上,通过因素数量试验验证ST-GATC模型因素数量试验选取的合理性。模型的输入维度分别为1,2,3,输入维度为2时,分为输入因素为交通流量和时间占有率,记为2_VO,输入因素为交通流量和平均速度,记为2_VS;卷积核大小为3,时间维度输入对应分别为1,2,3,隐藏层神经元个数(时间维度输出个数)为64;空间维度输入层通道数为6×64,隐藏层通道数为6,输出层通道数分别为1,2,3,注意力头数设置为3,因素数量试验结果详见表4。

表4 模型的输入维度分别设置为特定值时,ST-GATC模型的评价结果Tab.4 Evaluation result of ST-GATC model when input dimensions of e model are set to a specific values

模型的输入维度分别为1,2,3时,ST-GATC模型的评价结果进行可视化分析,RMSE及MAE值的变化趋势分别如图9~10所示。

图9 模型的输入维度为特定值时,ST-GATC模型的评价结果(RMSE)Fig.9 Evaluation result (RMSE) of ST-GATC model when input dimensions of model are set to specific values

图10 模型的输入维度为特定值时,ST-GATC模型的评价结果(MAE)Fig.10 Evaluation result (MAE) of ST-GATC model when input dimensions of model are set to specific values

由图9~10得,模型的拟合效果随着输入维度的不同而变化,在输入维度为2,即交通流量、平均速度时模型具备较低的RMSE及MAE,因此模型的输入维度选取2,即将交通流量、平均速度纳入模型。

综上所述,ST-GATC模型在输入维度为2,即交通流量、平均速度,注意力头数为3,隐藏层神经元个数为64时具备较为优秀的预测效果,所以依照该方法选定模型参数。

4 结论

本研究构建了一种有效的交通流量时空预测模型,命名为ST-GATC,并将多个模型作为对照组进行试验验证。

(1)同时考虑了时空维度。将交通网络建模为有向图的形式,提高了拓扑结构的可解释性。使用图注意力网络及标准卷积分别对空间、时间维度进行特征提取,在使用图注意力网络时采用多头注意力机制,提高了模型的预测效果。

(2)在输入层,同时将多个交通流量变量作为输入,挖掘交通流量序列中的非线性关系,以提高模型的拟合效果。

(3)在模型评价方面,将多个模型作为对照组,试验结果表明,ST-GATC模型对于交通流量序列的拟合效果优于对照组模型。

猜你喜欢

交通流量神经元注意力
基于简单递归单元网络的高速公路交通流量预测
让注意力“飞”回来
AI讲座:神经网络的空间对应
如何培养一年级学生的注意力
基于XGBOOST算法的拥堵路段短时交通流量预测
人工免疫聚类算法在城市交通流量分析中应用
激活皮层生长抑素中间神经元抑制神经病理性疼痛的发展
研究人员精确定位控制饮酒的神经元
A Beautiful Way Of Looking At Things
空中交通流量的管理现状分析及改善建议