曹 阳,朱镕琦,沈琴琴,施 佺
(1.南通大学 信息科学技术学院,江苏 南通 226019; 2.南通大学 交通与土木工程学院,江苏 南通 226019)
随着智能交通系统(intelligent transportation system,ITS)[1]的快速普及,越来越多的交通问题得到改善,然而交通路网的快速发展仍为ITS带来了巨大的挑战。交通流预测问题是ITS的重要实施基础之一,旨在对指定高速公路或城市路网中的车流量、车辆速度、车辆密度等进行分析,建立相应的模型,以预测未来某时刻或某时段内的交通状况。交通流量的精准预测,可以使交管部门从被动接受式转化为主动响应式,及时做出精确管制措施,提高道路通行速度,缓解交通拥堵。
现有的交通流预测方法主要分为两大类,即模型驱动方法和数据驱动方法[2]。模型驱动方法通常利用统计学方法对交通流数据序列或交通状态进行建模,主要有ARIMA模型[3]、灰色预测模型[4]、小波分析模型[5]等。该类方法一般适用于交通模式基本固定的短期预测问题中,难以挖掘交通流数据中较强的非线性特征。同时,由于交通系统的不确定性,模型驱动方法无法捕获突发事件对交通状态的影响。数据驱动方法主要包括机器学习模型与深度学习模型。经典的机器学习模型包括支持向量机回归模型[6]、随机森林模型[7]、K近邻模型[8]等。深度学习模型主要为人工神经网络及其各类变种,拥有非常强的非线性特征挖掘能力,对数据的包容度比模型驱动方法高,适用于分析拥有复杂系统与突变事件的交通流状态。
近年来,基于人工神经网络的深度学习模型在短时交通流预测中的研究层出不穷,为了提高神经网络对于交通流的适应能力,通常针对不同的特征堆叠出不同的网络结构[9],在发展的过程中衍化出了各类变种模型。交通流预测模型存在时间维度信息和空间维度信息,分别需要不同的网络提取不同维度的特征。在提取时间序列信息方面,循环神经网络(recurrent neural network,RNN)[10]表现出良好的效果,但容易产生梯度消失或者梯度爆炸的问题。RNN的变种模型长短时神经网络(long short-term me-mory,LSTM)和门控循环单元(gated recurrent unit,GRU)[11,12]针对传统神经网络信息无法长期存在等问题进行改进,提高了时间序列数据的拟合处理效果。Bai等[13]为了缓解LSTM与GRU的梯度传播和记忆长度出现的问题,提出了时域卷积网络(temporal convolutional network,TCN),该模型能够进一步有效挖掘时间相关性。
目前主要通过改进网络内部结构的方式对时间序列网络进行优化[14]。虽然这类改进方法取得了一定的预测成果,但是交通流存在时空相互影响的作用效果,预测模型中需要同时考虑交通流在空间维度上的相互影响。路网节点的空间拓扑结构对交通流系统的影响极大,上游交通流量会导致下游的交通流量产生增减。因此在交通流的预测问题中,路网的空间拓扑结构也是建模过程的重要一环,融合时间信息和空间信息的网络结构会拥有更高的预测精度。
路网中道路节点通常具有非欧几里得结构,全局网络结构下节点间表现为有向连接或无连接的状态,因此无法简单运用卷积神经网络的卷积层进行空间计算。图卷积网络(graph convolutional network,GCN)能够从图数据中提取特征,通过邻接矩阵定义局部接受域,显著提高了模型空间挖掘能力。但由于GCN模型基于频谱域,利用拉普拉斯矩阵转换,其存在一定的缺陷,对此,已有相关学者对GCN模型进行了改进,如Zhao等[15]将二维数据拓展到三维空间,利用GCN和GRU分别来提取交通数据的空间特征和时间特征,提出(temporal-graph convolutional network,T-GCN)模型,实验验证预测性能更优;Guo等[16]为解决交通流的动态时空关系,对时空图卷积引入注意力机制,深度挖掘空间维度的相关性,提出了ASTGCN模型,有效深层次挖掘时空信息;冯等[17]考虑了全局路网下的空间影响程度,利用相关性分析方法加深对空间相关性的挖掘,有效提高了模型的预测精度;戴等[18]对交通流量进行分析,构建切比雪夫卷积和GRU组件,结合编码器-解码器提出多时空图卷积网络(multi spatial temporal-graph convolutional network,MST-GCN)对时空特征进行提取,有效提高了预测的准确性和稳定性。现有对时空特征进行融合的预测模型通常采用提取交通流数据的时间信息和空间信息后进行特征融合的方式,但是对于时空维度的提取依然存在梯度爆炸、空间特征挖掘缺失等问题。
为了进一步挖掘交通流的时空依赖性,提高模型预测精度,同时缓解时间序列模型存在的内存消耗和梯度问题,本文通过优化GCN网络结构并分析交通流间的动态时空关系,提出了基于时域图卷积神经网络的交通流预测模型(time domain graph convolutional network,TDGCN),通过定义路网节点的权重关系区分相邻节点对目标节点的影响程度,利用多阶近邻连接扩大GCN模型的感知野范围加深对空间信息的挖掘程度,采用时域卷积网络获取时间依赖关系同时缓解梯度爆炸的问题,以期能够提高交通流预测模型性能。
路网的空间结构类似图的拓扑结构,将路网中传感器节点拓扑结构抽象为拓扑图G(V,E,A), 其中V表示路网传感器节点集合且不区分传感器连接方向,E表示图G中节点间无向边的集合,A∈RN×N表示拓扑图的邻接矩阵,N表示传感器节点数量。
设当前时刻t的数据特征为
[Xt+1]=f(G|(Xt-T,Xt-T+1,…,Xt-1,Xt))
(1)
为了加深网络对交通流数据时空信息的挖掘程度,本文提出了一种时域图卷积神经网络(TDGCN)模型,其网络结构如图1所示。本文模型由3个组件构成,包括:输入组件、时空组件和全连接输出组件,其中时空组件由空间特征挖掘和时间特征挖掘组成。首先模型将选取的交通特征与其空间邻接关系作为模型的输入;利用GCN挖掘空间依赖,通过各传感器节点的欧氏距离构建带有阈值限制的邻接矩阵,引入多层近邻连接方法,通过设置阶值调整GCN模块的空间感知野;其次将GCN输出的节点信息,输入TCN中,通过膨胀卷积提取交通流的时间信息;最后利用Dense网络对TCN的输出进行一次非线性变化并输出模型预测结果。
图1 模型结构
模型可以通过邻接矩阵阈值限制的方式提高模型对传感器节点关系的分析,同时利用多阶近邻的方式加深模型的空间提取能力,采用TCN提取模型可有效捕获更长的有效历史信息。
交通流预测问题中传感器的空间节点呈现出非欧几里得结构性。GCN模型是对非欧式数据进行处理的深度学习方法,能够同时学习图中节点结构信息与特征信息,其卷积操作的计算规则为
(2)
在复杂的交通流环境中,邻接矩阵由路网中各传感器的拓扑关系确定。然而传统的邻接矩阵A是由0或1组成的对称稀疏矩阵,并不能反映出不同传感器之间存在的空间依赖性差异,仅仅利用0或1表征连通情况无法体现出节点间的空间相关性,因此本文利用带有阈值限制[19]的权重计算方法对邻接矩阵进行重新构造,其计算公式如下
(3)
式中:Aij表示为节点vi与节点vj的权重值,distance(vi,vj)表示节点vi与节点vj的欧式距离,δ2用来控制邻接矩阵权重的分布情况,通常取值为10。
同时,实验研究发现多层的GCN网络虽然能够聚合多阶节点间的空间相关性,但会容易出现过平滑现象,节点区分能力较差。因此,为了解决过平滑问题,本文模型采用多层近邻连接[19]的方法,利用不同维度的感受野增强模型对节点的表征能力,即式(2)可改写为
(4)
式中:k∈Z+。 当k=1时多阶近邻连接退化为传统GCN模型。
为解决传统RNN的梯度爆炸和梯度消失等问题,Hochreiter等提出了第一类变种模型LSTM,其对长序列模型拥有很好的预测效果,但是参数较多,导致训练时间较长,内存消耗巨大。TCN模型由CNN发展而来,采用残差块的结构结合膨胀卷积增加感知野长度的同时跨层传递信息,被用于改善RNN中常见的梯度爆炸和梯度消失问题且能够捕捉更长的时间依赖,其基本结构如图2所示。
图2 TCN残差单元
时域卷积网络在拟合非线性函数的过程中,为了避免训练过程中产生过拟合现象,在每次的膨胀卷积操作之后会分别叠加一层Dropout层和非线性层,以此提高模型拟合能力。
2.3.1 膨胀因果卷积
TCN为了解决时间序列的长期依赖问题,引入因果卷积方法。针对输出时刻t的结果,其依赖时刻t及t之前时刻的信息,每一层的输出都由前一层未知个数的输入计算得到,通过叠加隐藏层的深度可以挖掘越早时刻的信息。
设原始序列X=(x1,x2,…,xn), 预测未来时刻Y=(y1,y2,…,yn), 过滤器F=(f1,f2,…,fK), 在第k层过滤器定义为fk,则在xt时刻k层的因果卷积为
(5)
单纯的因果卷积会导致多层堆叠的问题,为了抓取更长时间的依赖而简单叠加层的深度并不可取,因此提出膨胀因果卷积来增大层的感知野以挖掘更长的时间依赖。膨胀卷积与普通卷积不同之处在于膨胀卷积会往卷积层中注入空洞,详情对比如图3所示。
图3 膨胀卷积与普通卷积对比
设原始序列X=(x1,x2,…,xn), 预测未来时刻Y=(y1,y2,…,yn), 过滤器F=(f1,f2,…,fK), 第k层过滤器定义为fk,在xt时刻的膨胀率为d,则在xt时刻的膨胀卷积为
(6)
由此得膨胀卷积d的感知野大小为 (K-1)d+1, 此时调节感知野的大小可以通过增大K或者d来实现。
2.3.2 残差链接
残差模块的引入可使信息进行跨层传播。网络越深则网络提取到的特征越多,然而简单的增加深度会导致梯度消失或梯度爆炸问题,从而在训练集上会出现过拟合的情况。因此为了解决上述问题,改善网络冗余的结构,TCN将网络中需要学习的映射转化为学习残差网络。该模型利用残差块的思想,将膨胀因果卷积结合非线性映射作为残差块的输入,继而产生下一个TCN块的输入,并且其一维卷积操作能够保证模型在计算过程中的残差连接是有效的,其详细结构如图4所示
o=Activation(x+F(x))
(7)
式中:o表示为残差块的输出,Activation()表示为激活函数,x和F(x)为网络的输入。
图4 残差网络结构
本文模型的详细步骤如下:
步骤1 利用式(3)带阈值限制的权重计算方式构造邻接矩阵,将数据集和邻接矩阵输入模型。
步骤2 利用式(4)分析交通流的空间依赖性。同时,将GCN输出结果输入TCN分析交通流的时间依赖性。针对TCN中每个时刻的输入首先利用式(6)进行一次膨胀因果卷积,并利用Relu函数进行一次非线性变化。为了防止预测结果过拟合,在每次膨胀卷积之后引入Dropout实现正则化。最后对每层之间构建残差结构,将上一层TCN的输出作为下一层输入。
步骤3 将时空组件输出值输入Dense网络中输出预测结果。
步骤4 根据预测值与真实值之间的误差对模型参数进行调整,直至达到设置的训练次数。将训练得到的模型利用测试集进行验证。
为了验证TDGCN模型的合理性与准确度,本文利用加州高速路网PeMS04和PeMS08数据集进行验证。这两个数据集包含高速道路上各传感器的连接状态与交通流量。其中PeMS04来自旧金山地区,共包含总计307个传感器数据,时间跨度从2018年1月1日到3月1日,共计约60天。PeMS08来自圣贝纳迪诺,共计170个传感器的数据,时间跨度从2016年7月1日到9月1日,共计约60天。
本文实验中将数据以每5分钟间隔进行聚合,基于传感器所在的距离位置生成网络拓扑结构,以此预测未来时刻的交通量。同时,将本文模型与经典神经网络模型GRU、TCN和最近提出的T-GCN、MST-GCN共4类模型进行对比分析。
(8)
为了评估模型的预测效果,本文采用3种评价指标,即平均绝对误差(mean absolute error,MAE)、均方根误差(root mean square error,RMSE)、平均绝对百分比误差(mean absolute percentage error,MAPE)。MAE表示为真实值与预测值之间误差的平均值。RMSE表示为误差的平方与观测次数n比值的平方根,用来衡量观测值同真值之间的偏差。MAPE表示为真实值和预测值的在模型表现的误差百分率平均值。
各自的计算公式如下所示
(9)
(10)
(11)
本实验所选用的硬件设置与软件版本分为(CPU:AMD Ryzen 5 3600 3.6 GH,GPU 2060 6G,Python3.8,Pytorch1.10)。通过实验确定选用最优的参数,不同的参数取值见表1。
表1 模型超参数设置
3.4.1 连接阶数k分析
TDGCN模型考虑了多层近邻连接,不同的k值具有不同的空间依赖聚合效果,因此多层连接阶数k是影响模型效果的重要指标。本节研究了TDGCN模型在不同数据集上的取不同阶数时,模型的实验结果,两份数据集上k值与MAE的关系如图5所示。
图5 k值影响分析
分析图5可以发现,不同的数据集上MAE随k值的变化表现出不同的趋势。PeMS04数据集上,MAE随着k值的增大呈现出先减小后增大的趋势,在k值为2时,模型误差最小。PeMS08数据集上,MAE随着k值的增大呈现出先增大后减小再增大的波动性趋势且当k值为1时,模型误差最小,即原始GCN就能使得PeMS08数据集上的预测效果达到最优。PeMS04数据集中传感器节点多,数据量大,在分析空间依赖性时,有效的节点空间信息较多,因此在本文模型中表现在阶数值较大,能够利用2阶范围内有效的空间信息进一步提高模型预测能力。PeMS08数据集中节点量少,可用的空间信息较少,因此一阶相邻的传感器间的空间信息即能够使得模型预测能力达到最优。
3.4.2 参数影响分析
TDGCN模型中存在较多可调节的超参数,为了确定超参数对模型的影响结果分析,选取隐藏层节点单元个数以及预测的序列长度两个影响模型精度较大的超参数,实验分析结果如图6和图7所示。
图6 单元个数影响分析
图7 预测长度影响分析
从图6的实验结果可知隐层节点单元个数对模型的精度具有一定的影响程度,在本实验中,当节点个数为64时模型的精度最佳。
根据实验结果图7可以发现,在数据集PeMS04和PeMS08中,随着预测序列长度的不断增加,模型的效果会逐渐变差,结果表明,该方法更适合于短期预测。
3.4.3 实验结果分析
对比结果见表2。分析表2可以发现,在PeMS04数据集中,本文提出的模型在所有对比模型中表现最佳,相较于基准模型TCN,MAPE提高了接近10%,相比T-GCN提高了3.55%,与MST-GCN模型相比也提高了0.66%。在PeMS08数据集中,本文提出的模型拥有最小的MAE值与RMSE值,以MAPE值为指标而言,TDGCN模型除去比MST-GCN模型低1.03%,比TCN模型提高了4.07%,相较于T-GCN模型提高了5.92%。
各模型在PeMS04和PeMS08数据集上预测拟合曲线分别如图8和图9所示。分析时间序列预测方法可以发现,GRU模型和TCN模型仅考虑了时间相关性,并没有考虑路网节点的空间相关性,因此并没有优越的性能表现。T-GCN模型和MST-GCN虽然结合了GCN模型与GRU模型,从一定程度上弥补了由于缺少空间相关性从而产生的模型误差,但仍然存在由于GCN感知野而导致模型空间依赖能力降低的情况。
表2 不同模型的性能比较
因此本文所提出的TDGCN模型,结合了TCN模型与GCN模型,并对GCN模型的计算规则进行改进,相比而言拥有更好的感知野,同时TCN模型比GRU模型拥有更高的信息控制度,可以对交通流数据进行更好的时空依赖捕获。因此,从模型结构以及实验结果来看,本文提出的TDGCN 模型拥有更高的精度,取得了较好的预测效果。
图8 PeMS04模型预测效果
图9 PeMS08模型预测效果
本文针对当前大多数短时交通流预测模型对数据的空间信息挖掘不充分、无法捕获长序列单元间的信息等问题,提出一种基于时域图卷积神经网络的交通流预测模型(TDGCN)。该模型通过在改进GCN的权重分配以及感知野进一步提高对交通流的空间捕获能力,使用TCN模型挖掘交通流的时间特征的同时解决长时间序列训练过程中的梯度问题,通过PeMS04和PeMS08两个公开数据集进行验证,引入相关的对比实验模型。结果表明,本文提出的TDGCN模型具有更高的预测精度。