一种基于双向GRU超图卷积模型的交通流量预测方法

    专利2026-08-23  7


    本发明属于交通预测,具体涉及一种基于双向gru超图卷积模型的交通流量预测方法。


    背景技术:

    1、随着社会生产力的迅速发展,人们经济水平的快速提高,我国个人汽车的数量也在最近几年持续增长。汽车保有量的增长反映了我国经济的快速发展。但大量的汽车对城市交通造成了巨大压力,产生了诸如道路拥堵、交通事故频繁发生、环境污染等一系列交通问题。为了解决这些城市交通问题,提高城市管理的整体水平,智能交通系统应运而生。对交通状态预测的研究由来已久,然而受限于早期预测技术和交通数据量的贫乏导致研究进展缓慢。最近几年,人工智能技术迅速发展,并在许多应用领域取得了成绩,将人工智能技术合理应用到交通状态预测问题上,是当前解决预测问题的重要技术手段。

    2、虽然关于交通状态预测的研究已经取得了一定进展,但目前在预测的准确性上仍有待提升。交通状态预测的研究思路是对数据进行合理的建模,建模的目的是将交通状态复杂的特征数据通过建模的方式转化为一种已知的数据结构。然后对建模得到的数据进行时空特征学习,利用时空特征学习的结果作出预测。

    3、交通预测作为时空预测中的一个重要研究方向,相较于其他时间序列预测问题更具挑战性,因为它涉及大量的高维数据。一般来说,交通路网中某一位置的交通状况会受到附近地区的影响,这被称为空间相关性。此外,该地点的交通状况还受到历史交通状况的影响,这被称为时间相关性。由于交通预测具有复杂的时空相关性,因此交通预测任务的实现具有一定的挑战性,准确及时的交通流预测不仅可以缓解交通堵塞等问题,也能节约各种资源。

    4、由于交通网络具有非欧式拓扑结构,可能出现两条在欧式空间中很近的道路却实际上相关度很小,因而衡量两个道路之间的相关度不能简单通过距离来测量,需要有效的空间建模方法捕获路网的空间依赖性。此外,交通时间序列具有很强的时间依赖性,这种时间依赖性除了具有自相关性和周期性以外,还因为工作日节假日变换、天气、以及不可预知的突发事件等而具有非平稳的变化特性,这些特性使得预测精度较低。


    技术实现思路

    1、为了解决现有技术存在的缺陷,本发明提供了一种基于双向gru超图卷积模型的交通流量预测方法。该方法使用基于协方差的动态邻接矩阵替代实际情况下的节点之间的邻接矩阵,并且分别从路网动态邻接矩阵和其对应的超图这两个角度提取道路历史数据中节点的空间相关性和异构性,利用交通预测网络模型通过历史交通数据及其路网动态邻接矩阵和其对应的超图对目标路段的适配的网络参数进行训练,获取目标路段待预测时刻之前一定时长的交通数据,结合训练好的交通预测网络模型,得到目标路段目标时段的交通预测数据。本发明方法从全局角度捕捉功能空间相关性和从局部角度捕捉时变空间相关性,提高交通预测精度。

    2、本发明解决所述技术问题采用技术方案是:一种基于双向gru超图卷积模型的交通流量预测方法,其特征在于,该方法包括下述步骤:

    3、步骤1:模型训练数据的获取

    4、步骤1.1通过目标路段中的实际道路网络中的n个探测点获取该路段的一定时长的历史交通数据,该历史交通数据包括道路上车辆的速度、道路车流量和车道占有率三种特征数据;将该路段中的每一个探测点看成路段中的一个节点,按各节点进行标记,对每个节点对应的车辆的速度、道路车流量和车道占有率进行清洗、归一化的预处理,之后分别按固定时间间隔选取数据值,得到各节点三种特征数据的历史时序数据;该路段的所有节点三种特征数据的历史时序数据,即为该路段的路网车辆信息的历史数据;

    5、步骤1.2对步骤1.1中得到的该路段的路网车辆信息的历史数据按时刻点的数量按顺序进行划分,将前面的不少于60%的划分为训练数据,余下的划分为验证数据;采用时间步长为t的滑动窗口,对训练数据、验证数据分别进行切分,每种数据得到若干条t个时刻点的n个节点三种特征数据的历史时序数据;将其中一条从第t个到第t+t-1个时刻点的n个节点三种特征数据的历史时序数据x,作为模型的输入数据,同种数据的另一条从第t+t到第t+2t-1个时刻点的n个节点三种特征数据的历史时序数据作为模型根据历史时序数据x得到的输出数据的实际值,得到一种数据的一条数据样本;由每种数据的若干条t个时刻点的n个节点三种特征数据的历史时序数据,分别得到每种数据的若干条数据样本,训练集为训练数据的数据样本集合,验证集为验证数据的数据样本集合;

    6、步骤1.3将步骤1.2中的训练数据进行预处理,获取历史数据的路网动态邻接矩阵a及其拉普拉斯矩阵;

    7、n个节点历史的三种特征数据的时序数据表示为p,p={p1,p2,…,pi,…,pn},pi表示该路段中第i个探测点的三种特征数据的历史时序数据,其中n表示该路段中的探测点的个数;n表示每个探测点在每个时刻点所记录的特征数量,包括交通量特征、车辆平均速度特征和车道占用率特征,即特征数量为3;

    8、对于第i个探测点的三种特征数据的历史时序数据pi,pi={pi1,pi2,…,pit,…,piq},q表示时序数据pi中总的时刻点个数,pit表示第i个探测点在第t个时刻点时获得的三种特征数据的数据值序列;

    9、通过对路网中车辆信息的历史数据进行分析,将道路之间的相似度转化为矩阵,作为拟合历史数据的路网动态邻接矩阵,路网动态邻接矩阵的具体生成方法如下:

    10、首先通过路网中车辆信息的历史数据,采用皮尔逊相关系数计算任意两探测点之间历史数据信息的相似度,计算公式为:

    11、

    12、式中:为该路段中的所有探测点的集合;i,j为其中两个探测点,xi,xj为这两个探测点所对应的三种特征数据的历史时序数据,xitf为探测点i在第t个时刻点的第f种特征的数据值;cov(xi,xj)为两个探测点所对应的三种特征数据的历史时序数据的协方差值,var(xi)为探测点所对应的三种特征数据的历史时序数据的方差值,通过公式(2)得到的aij表示两个探测点i和j之间的历史信息相似度,且aij∈[-1,1],若为正值,则这两个探测点之间存在正相关,若为负值,则为负相关;

    13、根据公式(2),得到该路段中任意两个探测点之间的历史信息相似度,将所有历史信息相似度按探测点序号进行合并排列,得到该路段历史数据的路网动态邻接矩阵a,aij为历史数据的路网动态邻接矩阵a中第i行第j列对应位置的元素值;然后将历史数据的路网动态邻接矩阵a转化成拉普拉斯矩阵,转化过程具体为:

    14、

    15、式中:dii为第i个探测点与其他所有探测点的相关性之和,并作为拉普拉斯矩阵的对角元素,aij为历史数据的路网动态邻接矩阵a中第i行第j列对应位置的元素值,l为由a生成的拉普拉斯矩阵,lij为拉普拉斯矩阵l中第i行第j列对应位置的元素值;

    16、步骤1.4使用域转换器,将步骤1.3中得到的历史数据的路网动态邻接矩阵a转换为与其对应的超图h,并获取超图h的拉普拉斯矩阵;

    17、步骤2:构建交通流量预测网络模型

    18、交通流量预测网络模型包括数据预处理模块、提取时间特征的分块双向gru模块、提取空间特征的动态图卷积模块、动态超图卷积模块、提供注意力信息的图卷积模块、超图卷积模块和数据后处理模块;

    19、所述数据预处理模块包括一个线性层,对于模型输入的历史时序数据χ(1):(t)=(x1,x2,…,xt,…,xt),xt为一个时间步长的n个节点三种特征数据的历史数据序列,该线性层对其进行特征提取和维度转化,得到的初级信息x'一方面输入到分块双向gru模块中;所述分块双向gru模块包括第一bi-gru模块和第二bi-gru模块,该两个模块基本构架相同,但权重参数不共享;初级信息x'分别输入到第一bi-gru模块和第二bi-gru模块中,该两个模块分别输出包含交通流信息中时间特征的第一隐藏数据和第二隐藏数据;

    20、初级信息x'另一方面经过池化和抽取操作之后,得到的特征信息z一条路径和历史数据的路网动态邻接矩阵a及其拉普拉斯矩阵作为输入,通过图卷积模块的处理,得到包含交通流信息中的路网动态邻接矩阵相关的注意力信息;特征信息z另一条路径和历史数据的路网动态邻接矩阵a的超图以及该超图的拉普拉斯矩阵作为输入,通过超图卷积模块的处理,得到包含交通流信息中的超图相关的注意力信息;

    21、将第一隐藏数据、包含交通流信息中的路网动态邻接矩阵相关的注意力信息的数据,作为动态超图卷积模块的输入;将第二隐藏数据、包含交通流信息中的超图相关的注意力信息的数据,作为动态图卷积模块的输入;将动态超图卷积模块和动态图卷积模块的输出合并,得到的结果作为数据后处理模块的输入,记为中间特征信息;

    22、数据后处理模块包括第一线性层、残差连接路径、relu激活层、dropout层、第二线性层,将中间特征信息经过第一线性层处理得到的结果与数据预处理模块输出的初级信息x'经残差连接路径处理后的结果进行求和,得到的结果再依次经过relu激活层、dropout层、第二线性层处理,得到模型对后t个时刻点的n个节点三种特征数据的时序数据的预测值;所述残差连接路径设置有一个线性层;

    23、所述第一bi-gru模块,给定输入数据x'=(x'1,x'2,…,x't,…,x't),x'为模型输入的历史时序数据χ(1):(t)经过数据预处理模块处理后得到的结果,分别创建t个gru单元,从正向和反向对各个子数据进行特征学习,gru单元的正向特征学习具体算法如下:

    24、rt=σ(wr1x't+ur1ht-1+br1)  (5)

    25、zt=σ(wz1x't+uz1ht-1+bz1)  (6)

    26、

    27、

    28、式中:rt为正向重置门的输出,zt为正向更新门的输出,由t时刻数据xt与上一时刻t-1的输出ht-1计算得出的隐藏层输出,ht为t时刻该模块的正向隐藏层输出,σ(·)和tanh(·)为两种激活函数,wr1,wz1,wc1,br1,bz1为该模块在正向训练过程中的学习参数,ur1,uz1,u1为模型预先设定的正向超参数;

    29、gru单元的反向特征学习具体算法如下:

    30、r't=σ(wr2x't+ur2h't+1+br2)  (9)

    31、z't=σ(wz2x't+uz2h't+1+bz2)  (10)

    32、

    33、

    34、式中:r't为反向重置门的输出,z't为反向更新门的输出,由t时刻数据xt与后一时刻t+1的输出h't+1计算得出的隐藏层输出,h't为t时刻该模块的反向隐藏层输出,σ(·)和tanh(·)为两种激活函数,wr2,wz2,wc2,br2,bz2为该模块在反向训练过程中的学习参数,ur2,uz2,u2为模型预先设定的反向超参数;

    35、对t个不同的gru单元按线性进行排序,分别记为gru1,gru2,…,grut,同时在网络结构中分别进行正向及反向的两个过程,将每个gru单元产生的两个隐藏层状态参数合并,作为该网络单元的输出ot,t∈[1,t];具体算法如下:

    36、st=f(utx't+wtst-1)  (13)

    37、s't=f(u'tx't+w'ts't+1)  (14)

    38、ot=g(st,s't)  (15)

    39、式中:ot为第t个gru单元的最终输出,g(·)为多维度张量在指定维度进行拼接的操作,f(·)为gru单元,ut,wt为第t个正向gru单元内的网络参数,u't,w't为第t个反向gru单元内的网络参数;st为第t个gru单元在正向上的隐藏层状态输出(即ht),s't为第t个gru单元在反向上的隐藏层状态输出(即h't);

    40、然后将t个gru单元的的输出o1,o2,…ot,…ot通过维度连接操作g(·)合并为一个张量o,作为后续模块的输入;第一bi-gru模块和第二bi-gru模块分别输出包含交通流信息中时间特征的第一隐藏数据和第二隐藏数据;

    41、所述图卷积模块,对于输入的特征信息z,z=(z1,z2,…,zn),该模块的作用是向动态超图卷积模块提供注意力信息,gcn模块的工作原理为:

    42、

    43、式中:σ(·)为激活函数,l为历史数据的路网动态邻接矩阵a所对应的拉普拉斯矩阵,d为a的度矩阵,θ是模型的学习参数;

    44、所述超图卷积模块,对于输入的特征信息z,z=(z1,z2,…,zn),该模块的作用是向动态图卷积模块提供注意力信息,hgcn模块的工作原理为:

    45、

    46、式中:σ(·)为激活函数,h为历史数据的路网动态邻接矩阵a所生成的超图,l'为超图所对应的拉普拉斯矩阵,d'为矩阵l'的度矩阵,θ'是模型的学习参数;

    47、所述动态图卷积模块,利用路网动态邻接矩阵构建dgcn模型,模型的工作原理如下:

    48、

    49、

    50、

    51、式中:hgcnθ(z)是超图卷积模块的输出,reshape是将矩阵转化为对应的稀疏矩阵的操作,wf和wb分别为用于向前注意力和向后注意力两部分的路网动态邻接矩阵对应的权重系数,a为历史数据的路网动态邻接矩阵,θ'n,f,θ'n,b,θ'n,adp为模型中的学习参数,χ为该模块的输入,即第一隐藏数据,dgcn(χ)为该模块的输出;

    52、所述动态超图卷积模块,使用历史数据的路网动态邻接矩阵a对应的超图构建dhgcn模型,模型的工作原理如下:

    53、

    54、

    55、

    56、式中:diag为取对角线元素的操作,θ'n为模型中的学习参数,gcnθ(z)为图卷积模块的输出,dw包含相关的注意力特征;dhe,dhv分别表示超图h中超边的度和超节点的度所构成的对角矩阵,h为历史数据的路网动态邻接矩阵a对应的超图,为动态超图卷积的权重系数,χh为该模块的输入,即第二隐藏数据,dhgcn(χh)为该模块的输出;

    57、步骤3:训练交通流量预测网络模型

    58、使用正态分布随机函数初始化模型中的训练参数,设置批训练的大小、模型的学习率、模型训练的轮次和提前停止的等待轮次;

    59、将训练集中一条数据样本的t个时刻点的n个节点的三种特征数据的历史时序数据χ(1):(t)、历史数据的路网动态邻接矩阵a及其拉普拉斯矩阵、历史数据的路网动态邻接矩阵a的超图h及超图的拉普拉斯矩阵输入到初始化后的交通流量预测网络模型中,得到网络模型对后续t个时刻点的n个节点的三种特征数据的时序数据输出的预测值;利用网络模型输出的预测值和该条训练数据中的后续t个时刻点的n个节点的三种特征数据的历史时序数据的实际值,计算训练损失值;

    60、使用平均绝对误差作为训练过程中的损失函数,对于得到的预测值和实际值χ(t+1):(t+t)=(xt+1,xt+2,…,xt+t),损失函数的定义如下:

    61、

    62、式中:为模型对第j个时刻点i探测点第k个特征的预测结果,n为探测点的数量,t为时刻点的总数,f为特征数量,χ(t+1):(t+t)为后续t个时刻点的n个节点的三种特征数据的历史时序数据的实际值,为对后续t个时刻点的n个节点的三种特征数据的时序数据的预测值;由公式(28),得到该条数据样本的训练损失值;

    63、然后根据该训练损失值,利用adma优化器,进行前馈更新一次模型中的训练参数,完成一条训练数据的训练;将上一条数据样本训练完成时模型的训练参数,作为下一条数据样本训练时的初始参数,重复一条数据样本的训练过程,不断迭代,直至训练完一个批次中的最后一条数据样本;将上一个批次训练完成时模型的训练参数,作为下一个批次训练时的初始参数,重复一个批次的训练过程,不断迭代,直至完成训练集中最后一个批次的训练,完成训练集的一个轮次的训练;每训练完一个轮次,将验证集中的数据样本依次输入到模型中,计算验证集的每条数据样本的训练损失的均值,将其作为该轮次的验证损失参考指标;

    64、将上一个轮次训练完成时模型的训练参数,作为下一个轮次训练时的初始参数,重复一个轮次的训练过程,不断迭代,直至训练轮次达到预设值,或者验证损失参考指标连续不下降的轮次数达到提前停止的等待轮次,保存此时模型的训练参数值,模型的训练完成;

    65、步骤4:交通流量预测

    66、采用步骤1.1中的方法,获取待预测时刻点之前的相同目标路段的t个时刻点的n个节点历史的道路上车辆的速度、道路车流量和车道占有率三种特征数据的历史时序数据,将该历史时序数据、步骤1.3中的历史数据的路网动态邻接矩阵a及其拉普拉斯矩阵、步骤1.4中的历史数据的路网动态邻接矩阵a对应的超图h及超图的拉普拉斯矩阵输入到步骤3中的最优网络模型中,最优网络模型输出该待预测时刻点及其之后的t-1个时刻点的n个节点的三种特征数据的时序数据的预测值。

    67、与现有技术相比,本发明有益效果在于:本发明基于双向gru超图卷积模型的交通流量预测方法,该方法使用基于协方差的动态邻接矩阵替代实际情况下的节点之间的邻接矩阵,并且分别从路网动态邻接矩阵和其对应的超图这两个角度提取道路历史数据中节点的空间相关性和异构性,通过对超图的特征进行学习,可以更好的提取道路网络中的空间信息,学习路网节点的动态交通数据与路网静态信息的相关性,可以有效的提升模型的预测准确率。采用的交通预测网络模型包括数据预处理模块、提取时间特征的分块双向gru模块、提取空间特征的动态图卷积(dgcn)模块、动态超图卷积(dhgcn)模块、提供注意力信息的图卷积(gcn)模块、超图卷积(hgcn)模块和数据后处理模块。该交通预测网络模型通过历史交通数据及其路网动态邻接矩阵和其对应的超图对目标路段的适配的网络参数进行训练,获取目标路段待预测时刻之前一定时长的交通数据,结合训练好的交通预测网络模型,得到目标路段目标时段的交通预测数据。本发明方法从全局角度捕捉功能空间相关性和从局部角度捕捉时变空间相关性,提高交通预测精度。


    技术特征:

    1.一种基于双向gru超图卷积模型的交通流量预测方法,其特征在于,该方法包括下述步骤:

    2.根据权利要求1所述的一种基于双向gru超图卷积模型的交通流量预测方法,其特征在于,步骤1.1中,归一化的方式为标准归一化:

    3.根据权利要求1所述的一种基于双向gru超图卷积模型的交通流量预测方法,其特征在于,步骤1.4中,域转换器使用对偶变换实现将历史数据的路网动态邻接矩阵a转换为超图h。

    4.根据权利要求3所述的一种基于双向gru超图卷积模型的交通流量预测方法,其特征在于,步骤1.4中,使用域转换器将步骤1.3中得到的历史数据的路网动态邻接矩阵a转换为与其对应的超图h并获取超图h的拉普拉斯矩阵具体实现过程如下:

    5.根据权利要求1所述的一种基于双向gru超图卷积模型的交通流量预测方法,其特征在于,数据后处理模块中的relu激活层,其具体计算方法为:

    6.根据权利要求1所述的一种基于双向gru超图卷积模型的交通流量预测方法,其特征在于,线性层对于输入数据其中f1为输入数据中特征的数量,线性层的输出为:

    7.根据权利要求1所述的一种基于双向gru超图卷积模型的交通流量预测方法,其特征在于,使用python的pytorch进行搭建步骤2中的交通流量预测网络模型。


    技术总结
    本发明公开一种基于双向GRU超图卷积模型的交通流量预测方法,该方法使用基于协方差的动态邻接矩阵替代实际情况下的节点之间的邻接矩阵,并且分别从路网动态邻接矩阵和其对应的超图这两个角度提取道路历史数据中节点的空间相关性和异构性,有效的提升模型的预测准确率。采用交通预测网络模型通过历史交通数据及其路网动态邻接矩阵和其对应的超图对目标路段的适配的网络参数进行训练,获取目标路段待预测时刻之前一定时长的交通数据,结合训练好的交通预测网络模型,得到目标路段目标时段的交通预测数据。本发明方法从全局角度捕捉功能空间相关性和从局部角度捕捉时变空间相关性,提高交通预测精度。

    技术研发人员:王志忠,张平,郑海飞,张锡洋,吴金广,黄天博,顾军华
    受保护的技术使用者:河北工业大学
    技术研发日:
    技术公布日:2024/4/29
    转载请注明原文地址:https://wp.8miu.com/read-101021.html

    最新回复(0)