一种基于动态图卷积和时序卷积网络的交通流预测方法与流程

文档序号:32299319发布日期:2022-11-23 07:46阅读:83来源:国知局
一种基于动态图卷积和时序卷积网络的交通流预测方法与流程

1.本发明属于智能交通技术领域,具体涉及一种基于动态图卷积和时序卷积网络的交通流预测方法。


背景技术:

2.大数据和人工智能将智能融入交通建设,带动了智能交通系统(intelligent transportation system,its)的发展,its可以实现实时数据采集与分析、实时交通管控和动态交通管理等智能交通功能。车流量预测作为its的重要环节,能实现对交通流实时、动态地预测。its通过车流量预测技术不断地预测未来时间内城市道路的状况,能提取预判可能发生的交通拥堵事件,对车流量进行调控和引导,以保持城市路面畅通。现在的交通流预测方法要么以城市道路流在空间上相邻路段交通流作为自变量,利用历史时序数据建立预测模型,或者以时间维度变化上的变化作为自变量,采用现在最流行的智能学习算法进行预测模拟,缺乏将时间空间两个维度同步的研究分析;其次当前的交通流预测方法时空特征提取不够充分,图卷积神经网络提取空间特征,它构建的是一个静态图,使用固定的权值表示节点间的关联性,忽略了节点间的关联性是随时间动态变化的。


技术实现要素:

3.为解决以上现有技术存在的问题,本发明提出了一种基于动态图卷积和时序卷积网络的交通流预测方法,该方法包括:获取路口节点中待预测的交通流数据,并对待预测的交通流数据进行预处理;将预处理后的交通流数据输入到训练好的交通流预测模型中,得到该路口节点交通流预测结果;根据交通流预测结果对该路口进行交通管制;
4.对交通流预测模型进行训练的过程包括:
5.s1:获取交通数据,并对交通数据进行预处理,将预处理后的交通数据作为训练集;
6.s2:构建交通图,根据交通图构建静态邻接矩阵;
7.s3:将静态邻接矩阵和训练集中的数据输入到图学习模块中,得到当前交通网络中的动态邻接矩阵;
8.s4:采用图卷积神经网络对动态邻接矩阵进行空间特征提取,得到空间特征;
9.s5:采用时序卷积神经网络对训练集中的数据进行时间特征提取,得到时序特征;
10.s6:将时序特征和空间特征进行融合,得到输入数据覆盖时空特征状态的信息;
11.s7:计算模型的损失函数,当损失函数最小时完成模型的训练。
12.优选的,对交通数据进行预处理的过程包括:构建交通数据异常筛选规则,根据交通数据异常筛选规则对交通数据进行筛选,得到异常数据;对异常数据进行修复,得到预处理后的数据。
13.进一步的,交通数据异常筛选规则包括:交通数据包括车辆通行的速度、流量以及车流量的占有率;其中异常数据包括车辆通行的速度、流量以及车流量的占有率均为负值,
流量超过车道通行能力且占有率超过100%,速度、流量和占有率仅有一个不为零,仅流量、占有率不为零或仅速度、占有率不为零,以及通过指标算法计算出的交通数据指标未达到对应阈值的数据。
14.优选的,构建静态邻接矩阵的过程包括:
15.s21:获取路网结构图,获取路网结构图中所有满足空间邻居条件的道路,根据满足空间邻居条件的道路构建交通图g=(v,e
sp
);满足空间邻居条件的道路包括道路vi与道路vj共同连接在同一个道路交叉口,则道路vi与道路vj满足空间邻居条件;其中,v表示n条道路集合,e
sp
表示实际空间道路之间的连通性;
16.s22:计算的道路i和道路j地理距离,根据道路i和道路j地理距离计算道路i和道路j边缘的权值,并将边缘权值作为元素构建空间邻接矩阵。
17.优选的,采用图学习模块对静态邻接矩阵和训练集中的数据进行处理的过程包括:
18.s31:获取训练集中n条道路的前h个时间长度的交通数据x;
19.s32:构建投影矩阵p∈rh×d,其中h为选取的前h个时间长度,d为权向量参数的维数;
20.s33:将交通数据x与投影矩阵相乘,使得交通数据转换为交通矩阵数据;
21.s34:将交通矩阵数据和静态邻接矩阵输入到图学习模块中,得到当前交通网络中的动态邻接矩阵。
22.进一步的,采用图学习模块对交通矩阵数据和静态邻接矩阵进行处理的公式为:
[0023][0024]
其中,a
ij
表示动态邻接矩阵,f表示神经网络,表示道路i处的交通矩阵数据,表示道路j处的交通矩阵数据,s表示静态邻接矩阵,s
ij
表示空间邻接矩阵s中的元素,relu表示激活函数,k
t
表示权向量参数,n表示当前路网中的道路数量,s
ir
表示道路i和道路r的固定邻接矩阵。
[0025]
优选的,采用图卷积神经网络对动态邻接矩阵进行空间特征提取的公式为:
[0026][0027]
其中,i是单位矩阵,是的度矩阵,h是每一层的特征,h
(l)
是l层的输出,w
(l)
包含了l层参数,σ(
·
)表示非线性模型的非线性激活函数。
[0028]
优选的,采用时序卷积神经网络对数据进行时间特征提取的过程包括:
[0029]
s51:采用多层自注意力模型对输入的时间序列数据进行处理,得到不同子空间的特征;
[0030]
s52:将每个子空间的特征进行合并;
[0031]
s53:采用多层tcn的扩张卷积对合并后的空间特征进行卷积处理,并每层采用零
填充策略保持时间序列长度不变,得到时间高维度特征。
[0032]
优选的,采用时序卷积神经网络对训练集中的数据进行时间特征提取:
[0033]
采用多层自注意力模型对输入的时间序列数据进行处理,得到不同子空间的特征;
[0034]
将每个子空间的特征进行合并;其计算公式为:
[0035]
multihead(q,k,v)=contact(head1,

,headn)wc[0036]
headi=attention(qi,ki,vi)
[0037]
qi=xw
iq
,ki=xw
ik
,vi=xw
iv
[0038][0039]
其中q、k、v是单注意力模型根据同一个输入x得到的三个子空间,其中dq、dk、dv分别代表了q、k、v的维度。n是道路n是道路节点数量,n是注意力模型数量,c为语义表示向量,wq、wk、wv表示可学习的参数矩阵,t为t个历史交通流参数。
[0040]
采用多层tcn的扩张卷积对合并后的空间特征进行卷积处理,并每层采用零填充策略保持时间序列长度不变,得到时间高维度特征。
[0041]
tcn的扩张卷积采用零填充策略来保持时间序列长度不变,对输出序列中的全部元素使用同一个卷积核,tcn的计算公式如下:
[0042]ytcn
=θ*dx
[0043]
其中,*d指的是进行扩张卷积,d是扩张率,θ是时间卷积核。那么在t时,第p信道上的道路节点vi的tcn结果y
i,t,p
表示为:
[0044][0045]
其中,d是扩张率,θ
a,z,p
是卷积核的元素并构成了时间卷积核其中a
τ
表示内核长度,p

表示输出通道数量,z指的是维度。
[0046]
使用多层tcn叠加,扩大时间轴上的感受野,获得更多输出。为了扩大感受野,扩张率以指数速度增加,即d
l
=2
l-1
。则l-th层的多头自注意力时间卷积网络的输出为
[0047][0048]
其中,l=0为输入层时,网络的输入为多头自注意力模型的输出,x∈r
t
×n×
p
,θ
l
∈r
t
×n×
p

是tcn的扩张卷积核,σ(
·
)是非线性函数,t为历史交通流参数数量。
[0049]
优选的,融合后的高维时空特征为:
[0050]
yi=w
tcn
·yitcn
+wh·yih
[0051]
其中,w
tcn
和wh分别为时间和空间高维特征的权重,y
itcn
、y
ih
分别表示待聚合节点vi的时间和空间高维特征。
[0052]
本发明的有益效果:
[0053]
本发明在图卷积神经网络的中引入图学习模块,使其随实际路网交通情况的变化而动态变化,更加全面地描述城市交通流的空间特征,在时序卷积网络前采用多头注意力机制,对历史交通的时序状态影响进行重新加权,从而捕捉交通状态的全局变化趋势;本发明能有效提取交通流的时空特征,提高交通流预测精度。
附图说明
[0054]
图1为本发明的基于时间图卷积网络的交通流控制方法的整体流程图;
[0055]
图2为本发明的对交通数据进行预处理的流程图。
[0056]
图3为本发明的多头注意力模型结构图。
具体实施方式
[0057]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0058]
一种基于动态图卷积和时序卷积网络的交通流预测方法,该方法包括:获取路口节点中待预测的交通流数据,并对待预测的交通流数据进行预处理;将预处理后的交通流数据输入到训练好的交通流预测模型中,得到该路口节点交通流预测结果;根据交通流预测结果对该路口进行交通管制。
[0059]
一种对交通流预测模型进行训练的方法,如图1所示,该方法包括:
[0060]
s1:获取交通数据,并对交通数据进行预处理,将预处理后的交通数据作为训练集;
[0061]
s2:构建交通图,根据交通图构建静态邻接矩阵;
[0062]
s3:将静态邻接矩阵和训练集中的数据输入到图学习模块中,得到当前交通网络中的动态邻接矩阵;
[0063]
s4:采用图卷积神经网络对动态邻接矩阵进行空间特征提取,得到空间特征;
[0064]
s5:采用时序卷积神经网络对训练集中的数据进行时间特征提取,得到时序特征;
[0065]
s6:将时序特征和空间特征进行融合,得到输入数据覆盖时空特征状态的信息;
[0066]
s7:计算模型的损失函数,当损失函数最小时完成模型的训练。
[0067]
本发明采用的图学习模块既要根据数据的连通性,也要跟根据当前速度来判断当前关联性;如果车流量较大,则关联性大;反者如果道路是连通的,但是车流量很小,如果仍然将他视为关联性很大的话,会造成空间特性的不够准确,而且每个用户获取动态空间关系的具体方式也是不同的。
[0068]
如图2所示,对交通数据进行预处理的过程包括:构建交通数据异常筛选规则,根据交通数据异常筛选规则对交通数据进行筛选,得到异常数据;对异常数据进行修复,得到预处理后的数据。其中,交通数据异常筛选规则包括:交通数据包括车辆通行的速度、流量以及车流量的占有率;其中异常数据包括车辆通行的速度、流量以及车流量的占有率均为负值,流量超过车道通行能力且占有率超过100%,速度、流量和占有率仅有一个不为零,仅
流量、占有率不为零或仅速度、占有率不为零,以及通过指标算法计算出的交通数据指标未达到对应阈值的数据。
[0069]
对筛选后的异常数据根据不同缺失情况进行数据修复的过程包括:
[0070]
(1)基于历史数据修复:因为交通流具有一定的周期性,因此可以用不同日期、相同时间点的交通数据进行修复。
[0071][0072]
(2)基于时间序列修复:
[0073][0074]
其中,α
i-1
表示在i-1时刻的方程参数,x
i-1
表示i-1时刻的交通流数据,k表示时间长度。
[0075]
(3)基于空间相关性修复:
[0076][0077]
其中,为i时刻修复的交通数据;x
i-t
为i-t时刻检测值;为位置m和位置n对位置j进行的数据修复;k,αi,γ0,γ1,γ2为方程参数;xi(m),xi(n)为位置m和位置n的检测值;为检测器j最终修复值。
[0078]
构建静态空间邻接矩阵的具体操作包括以下步骤:
[0079]
步骤1:如果道路vi与道路vj共同连接在同一个道路交叉口,则定义这两个道路为空间邻居,路网中满足空间邻居条件的道路构成了交通图g=(v,e
sp
);
[0080]
其中v是该区域中的n条道路集合,称为道路节点;e
sp
表示实际空间道路之间的连通性。
[0081]
步骤2:空间邻接矩阵根据e
sp
边来构造,用s∈rn×n表示。s
ij
为空间邻接矩阵s中的元素,当路vi与道路vj共用同一个道路交叉口时该值为否则为0。
[0082][0083]
其中,s
ij
为道路i和道路j边缘的权值,d
ij
为道路i和道路j地理距离。σ是节点间距离的标准差,∈是控制稀疏性的阈值。
[0084]
利用图学习模块学习邻接矩阵,获取当前交通网络动态空间关系的具体操作包括以下步骤:
[0085]
步骤1:已知n条道路的前h个时间长度的交通数据x=(x1,x2,

,xn)
t
∈rn×h;
[0086]
步骤2:将输入数据x乘以投影矩阵p∈rh×d进行数据预处理;
[0087][0088]
其中,xi∈rh(i∈[1,n])为道路i的速度序列,i是道路的顺序;权向量参数k为可学
习参数,k=(k1,k2,

,kd)
t
∈rd×1;t表示转置。
[0089]
步骤3:将预处理后的数据和固定邻接矩阵s输入到单个神经网络中,学习当前的邻接矩阵。图学习模块的输出动态邻接矩阵为:
[0090][0091]
其中,a
ij
表示动态邻接矩阵,f表示神经网络,表示道路i处的交通矩阵数据,表示道路j处的交通矩阵数据,s表示静态邻接矩阵,s
ij
表示空间邻接矩阵s中的元素,relu表示激活函数,k
t
表示权向量参数,n表示当前路网中的道路数量,s
ir
表示道路i和道路r的固定邻接矩阵。relu(x)=max(0,x)是一个激活函数,确保a
ij
≥0;使用softmax函数保证图学习模块的行和为1。
[0092][0093]
利用图卷积神经网络(gcn)和时序卷积网络分别提取交通流数据的空间和时间特征信息的具体操作包括以下步骤:
[0094]
步骤1:根据图中全部点的特征构建特征矩阵x∈rn×d,其中n为节点个数,d为每个节点的特征数;
[0095]
步骤2:将特征矩阵和动态空间邻接矩阵进行图卷积运算,gcn层间的传递过程为:
[0096][0097]
其中i是单位矩阵,是的度矩阵,h是每一层的特征,h
(l)
是l层的输出。如果l是输入层,则h为特征矩阵x。w
(l)
包含了l层参数,σ(
·
)表示非线性模型的非线性激活函数:sigmoid函数。
[0098]
本发明中采用时序卷积对时序特征进行获取,跟其他是有不同的,时序卷积比其他时序特征提取有优势的点在于时序卷积可以并行大规模处理整个序列,能产生稳定的梯度,耗时是比较短,处理速度是比较快。
[0099]
步骤3:采用时序卷积神经网络对数据进行时间特征提取,即使用多头自注意力模型预先处理时间序列数据,学习不同子空间的特征,获得更为丰富的潜在信息,再使用tcn提取处理后的时间序列数据的时间特征,捕获局部和远程时间依赖,如图3所示。具体过程包括:
[0100]
s51:采用多层自注意力模型对输入的时间序列数据进行处理,得到不同子空间的特征;
[0101]
s52:将每个子空间的特征进行合并;其计算公式为:
[0102]
multihead(q,k,v)=contact(head1,

,headn)wc[0103]
headi=attention(qi,ki,vi)
[0104]
qi=xw
iq
,ki=xw
ik
,vi=xw
iv
[0105][0106]
其中q、k、v是单注意力模型根据同一个输入x得到的三个子空间,其中dq、dk、dv分别代表了q、k、v的维度。n是道路n是道路节点数量,n是注意力模型数量,c为语义表示向量,wq、wk、wv表示可学习的参数矩阵,t为t个历史交通流参数。
[0107]
s53:采用多层tcn的扩张卷积对合并后的空间特征进行卷积处理,并每层采用零填充策略保持时间序列长度不变,得到时间高维度特征。
[0108]
tcn的扩张卷积采用零填充策略来保持时间序列长度不变,对输出序列中的全部元素使用同一个卷积核,tcn的计算公式如下:
[0109]ytcn
=θ*dx
[0110]
其中,*d指的是进行扩张卷积,d是扩张率,θ是时间卷积核。那么在t时,第p信道上的道路节点vi的tcn结果y
i,t,p
表示为:
[0111][0112]
其中,d是扩张率,θ
a,z,p
是卷积核的元素并构成了时间卷积核其中a
τ
表示内核长度,p

表示输出通道数量,z指的是维度。
[0113]
使用多层tcn叠加,扩大时间轴上的感受野,获得更多输出。为了扩大感受野,扩张率以指数速度增加,即d
l
=2
l-1
。则l-th层的多头自注意力时间卷积网络的输出为
[0114][0115]
其中,l=0为输入层时,网络的输入为多头自注意力模型的输出,x∈r
t
×n×
p
,θ
l
∈r
t
×n×
p

是tcn的扩张卷积核,σ(
·
)是非线性函数,t为历史交通流参数数量。
[0116]
融合后的高维时空特征为:
[0117]
yi=w
tcn
·yitcn
+wh·yih
[0118]
其中,w
tcn
和wh分别为时间和空间高维特征的权重,y
itcn
、y
ih
分别表示待聚合节点vi的时间和空间高维特征。
[0119]
获取的时间和空间高维特征的权重包括计算组合内预测模型的预测结果的方差,利用最小方差准则来确定预测模型的权值。
[0120]
本发明的模型的损失函数采用均方误差mse,即不断比较预测值与真实值,使用反向传播算法不断优化神经网络参数,当迭代次数达到设定值,或者损失函数值小于设定阈值,得到网络参数最优解,其中损失函数为:
[0121][0122]
其中,其中y∈rn×n×m是实际值,y

∈rn×n×m是预测值,n是批量训练样本数量。
[0123]
以上所举实施例,对本发明的目的、技术方案和优点进行了进一步的详细说明,所应理解的是,以上所举实施例仅为本发明的优选实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内对本发明所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1