基于注意力机制的时空同步图卷积网络交通流量预测方法转让专利

申请号 : CN202111429510.7

文献号 : CN114038200B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王斌吴超于启迪杨晓春张晓红

申请人 : 东北大学

摘要 :

本发明提供一种基于注意力机制的时空同步图卷积网络交通流量预测方法,涉及交通流量预测技术领域。本发明它直接同步捕获局部时空相关性,而不是分别使用不同类型的神经网络模块;同是还构造了一个基于注意力机制的时空同步多模块层用以捕获远程时空图中的异质性,它在每个时间段上部署多个模块,从而使每个模块都可以专注于提取每个局部时空图上的时空相关性,进而可以使模型达到精准的预测结果。

权利要求 :

1.一种基于注意力机制的时空同步图卷积网络交通流量预测方法,其特征在于,包括以下步骤:步骤1:以设定时间为一个时间片,通过在交通路口安装的车流量检测装置收集并统计每个时间片下的历史交通流量信息,形成二维交通流矩阵;

步骤2:将安装在每个交通路口的车流量检测装置看成一个节点,将单个时间片下各个节点之间的联系以及交通流数据构成一张路网拓扑图;多个时间片下的路网拓扑图构成局部时空图;

步骤3:将一个时间片下的每个节点分别与上个时间片与下个时间片中的所有节点连接,构造时空网络序列,即局部时空图的邻接矩阵;

步骤4:将路口检测装置收集得到的历史交通流量信息划分为训练集、测试集;

步骤5:构造预测交通流量的基于注意力机制的时空同步图卷积网络模型,并利用训练集对其进行训练,对于时空网络序列 创建时间嵌入矩阵 和空间嵌入矩阵 在训练过程完成后,两个嵌入矩阵将包含相邻路网拓扑图的时间和空间信息,然后将这两个嵌入矩阵添加到具有广播操作的时空网络序列中,以获得时空网络序列的新表示;

所述时空同步图卷积网络模型包括依次连接的全连接层、若干个堆叠的基于注意力机制的时空同步图卷积层、全连接层、输出层;

其中时空同步图卷积网络模型的输入为时空网络序列

所述时空同步图卷积层由若干个带注意力机制的同步图卷积模块组合构成,其中,每个同步图卷积模块是由时空注意力单元和时空卷积单元组成;输入的时空网络序列先通过全连接层转化为高维向量,然后进入同步图卷积模块,依次进行时空注意力机制计算,然后再做时空图卷积的运算,基于空间维度注意力的注意力矩阵计算公式为:其中 表示第r层同步图卷积模块的输入,Cr‑1

表示输入数据在第r层模块上特征值的数量,Tr‑1表示不同的时间片,都是学习参数,σ表示激活函数,使用公式

其中Si,j是指注意力矩阵S中两个节点i,j之间的关联强度,使用该公式来将注意力矩阵S进行归一化,归一化后的注意力矩阵S′在后面的图卷积中将和邻接矩阵A进行相乘,基于时间的注意力矩阵的计算公式为:其中, 都是学习参数,使用公式

将将注意力矩阵E进行归一化,其中Ei,j表示两个节点i,j之间的注意力权重;归一化后的注意力矩阵E′将和输入矩阵X进行相乘得到最终输入;

使用图卷积运算聚合每个节点及其邻居的特征;在顶点域中定义了图卷积运算,图卷积运算的输入是局部时空图的图信号矩阵;图卷积运算中,每个节点在相邻的时间步长处汇总其自身及其邻居的特征,聚合函数是线性组合,其权重等于节点与其邻居之间的边缘的权重;然后部署一个具有激活功能的全连接层,以将节点的特征转换为新的空间,该图卷积运算表示为:其中 表示局部时空图的邻接矩阵, 是第l个卷积层的输入,

是可学习的参数,sigmoid表示sigmoid激活函数,

即 表示逐元素乘积;门控线性单元控制将哪个节点的信息传递到下

一层;该图卷积运算在顶点域中定义,该图卷积运算不仅可以应用于无向图,而且可以应用于有向图;局部时空图的每个节点添加自环,以使图卷积操作在聚合特征时考虑其自身的特征;

将一组同步图卷积模块部署为一层时空同步图卷积层,将时空同步图卷积层的输入矩阵表示为 首先,为每个时空同步图卷积层添加时空嵌入,然后,时空同步图卷积层中的滑动窗口会将输入切出为T‑2时空网络序列;每个时空网络序列表示为将它们重塑为 将其直接与局部时空图一起输入到同步图卷积模块中,时空同步图卷积层在T‑2局部时空图上部署T‑2个同步图卷积模块,所有这些T‑2个同步图卷积模块的输出都被合并为一个矩阵,作为时空同步图卷积层的输出,表示为:其中 表示第i层同步图卷积模块的输出;

所述输出层是将最后一个时空同步图卷积层的输出转换为未来T′个时间步的交通信息序列,该输出层的输入表示为 将该输入进行转置并将其重塑为使用T个两层连接层来生成预测,如下所示:

其中 表示第i个时间步下的预测结果,

表示可学习的参数,其中C表示第一完全

连接层的输出的特征数;然后,将每个时间步长的所有预测合并为一个矩阵:步骤6:用测试集对训练结束后的时空同步图卷积网络模型进行测试,评估模型误差,若误差大于设定的阈值,则返回步骤4,重新训练模型;

步骤7:将待预测路段前N个设定时间片的交通流数据输入训练好的时空同步图卷积网络模型中,预测该路段未来N个时间片的交通流量。

2.根据权利要求1所述的基于注意力机制的时空同步图卷积网络交通流量预测方法,其特征在于,步骤1中所述历史交通流数据包括路段在一个时间片下经过的机动车车牌号、过车时间、过车速度,根据历史交通流数据统计车流量信息,并对重复数据以及无效数据进行清洗,剩余数据形成二维交通流矩阵。

3.根据权利要求1所述的基于注意力机制的时空同步图卷积网络交通流量预测方法,其特征在于,步骤2中所述路网拓扑图为:将所有节点的集合记为V,|V|=N表示节点数量,节点之间的边集E,节点之间边的权重邻接矩阵A;得到路网拓扑图G=(V,E,A)。

4.根据权利要求1所述的基于注意力机制的时空同步图卷积网络交通流量预测方法,其特征在于,步骤3中所述构造时空网络序列,设一个时间片下的路网拓扑图中的统计信息为一个图信号矩阵 其中C是属性特征的数量,t表示时间步长,该图信号矩阵表示在时间步t处对空间网络G的观测;构建模型f,将长度为T的历史交通信息序列作为模型f输入,预测未来T′个时间步的交通信息序列使用 表示局部空间图的邻接矩阵, 表示在三个连续的空间图上

构建的局部时空图的邻接矩阵;对于空间图中的节点i,通过(t‑1)N+i来计算其在局部时空图中的新索引,其中t表示局部时空图中的时间步长;如果在此局部时空图中两个节点相互连接,则在邻接矩阵中的对应值设置为1;其中局部时空图的邻接矩阵表示为:其中vi表示局部时空图中的节点i。

5.根据权利要求1所述的基于注意力机制的时空同步图卷积网络交通流量预测方法,其特征在于,步骤5中所述时空网络序列的新表示:

6.根据权利要求1所述的基于注意力机制的时空同步图卷积网络交通流量预测方法,其特征在于,所述测试使用Huber损失作为损失函数,其计算方法为:Y表示由已知的交通流序列生成的矩阵,是预测得到的矩阵,δ是超参数。

说明书 :

基于注意力机制的时空同步图卷积网络交通流量预测方法

技术领域

[0001] 本发明涉及交通流量预测技术领域,尤其涉及一种基于注意力机制的时空同步图卷积网络交通流量预测方法。

背景技术

[0002] 随着社会经济持续快速发展,机动车数量不断增加,道路交通流量也随之增大,并由此带来了一系列的交通问题。在不改变当前路网的情况下,通过智能交通控制系统实现对路网交通流量的控制和诱导,是解决交通问题的有效途径之一。同时,准确的交通流预测信息不仅可以提高公众出行效率,而且还能够为交通部门制定管理方案、合理分配交通资源等提供参考依据。
[0003] 交通网络是一种典型的时空网络数据结构,其蕴含的潜在的复杂时空相关性和异质性使交通预测具有挑战性。随着深度学习的发展,诸如图卷积网络及其变体之类的强大方法已广泛应用于这些时空网络数据预测任务,并取得了不错的性能。但是,目前仍然缺乏有效的方法来对时空方面的相关性和异质性进行建模。

发明内容

[0004] 针对现有技术的不足,本发明提供一种基于注意力机制的时空同步图卷积网络交通流量预测方法,具体包括以下步骤:
[0005] 步骤1:以设定时间为一个时间片,通过在交通路口安装的车流量检测装置收集并统计每个时间片下的历史交通流量信息,形成二维交通流矩阵;
[0006] 所述历史交通流数据包括路段在一个时间片下经过的机动车车牌号、过车时间、过车速度,根据历史交通流数据统计车流量信息,并对重复数据以及无效数据进行清洗,剩余数据形成二维交通流矩阵。
[0007] 步骤2:将安装在每个交通路口的车流量检测装置看成一个节点,将单个时间片下各个节点之间的联系以及交通流数据构成一张路网拓扑图;多个时间片下的路网拓扑图构成局部时空图;
[0008] 步骤2中所述路网拓扑图为:将所有节点的集合记为V,|V|=N表示节点数量,节点之间的边集E,节点之间边的权重邻接矩阵A;得到路网拓扑图G=(V,E,A)。
[0009] 步骤3:将一个时间片下的每个节点分别与上个时间片与下个时间片中的所有节点连接,构造时空网络序列,即局部时空图的邻接矩阵;
[0010] 所述构造时空网络序列,设一个时间片下的路网拓扑图中的统计信息为一个图信号矩阵 其中C是属性特征的数量,t表示时间步长,该图信号矩阵表示在时间步t处对空间网络G的观测;构建模型f,将长度为T的历史交通信息序列作为模型f输入,预测未来T′个时间步的交通信息序列
[0011] 使用 表示局部空间图的邻接矩阵, 表示在三个连续的空间图上构建的局部时空图的邻接矩阵;对于空间图中的节点i,通过(t‑1)N+i来计算其在局部时空图中的新索引,其中t表示局部时空图中的时间步长;如果在此局部时空图中两个节点相互连接,则在邻接矩阵中的对应值设置为1;其中局部时空图的邻接矩阵表示为:
[0012]
[0013] 其中vi表示局部时空图中的节点i。
[0014] 步骤4:将路口检测装置收集得到的历史交通流量信息划分为训练集、测试集;
[0015] 步骤5:构造预测交通流量的基于注意力机制的时空同步图卷积网络模型,并利用训练集对其进行训练,对于时空网络序列 创建时间嵌入矩阵 和空间嵌入矩阵 在训练过程完成后,两个嵌入矩阵将包含相邻路网拓扑图的时间和空间信息,然后将这两个嵌入矩阵添加到具有广播操作的时空网络序列中,以获得时空网络序列的新表示;
[0016] 所述时空网络序列的新表示:
[0017]
[0018] 所述时空同步图卷积网络模型包括依次连接的全连接层、若干个堆叠的基于注意力机制的时空同步图卷积层、全连接层、输出层;
[0019] 其中时空同步图卷积网络模型的输入为时空网络序列
[0020] 所述时空同步图卷积层由若干个带注意力机制的同步图卷积模块组合构成,其中,每个同步图卷积模块是由时空注意力单元和时空卷积单元组成;输入的时空网络序列先通过全连接层转化为高维向量,然后进入同步图卷积模块,依次进行时空注意力机制计算,然后再做时空图卷积的运算,基于空间维度注意力的注意力矩阵计算公式为:
[0021]
[0022] 其中 表示第r层同步图卷积模块的输入,Cr‑1表示输入数据在第r层模块上特征值的数量,Tr‑1表示不同的时间片,
都是学习参数,σ表示激活函数,使用公式
其中Si,j是指注意力矩阵S中两个节点i,j之间的关联强度,使用该公式来将注意力矩阵S进行归一化,归一化后的注意力矩阵S′在后面的图卷积中将和邻接矩阵A进行相乘,基于时间的注意力矩阵的计算公式为:
[0023]
[0024] 其中, 都是学习参数,使用公式 将将注意力矩阵E进行归一化,其中Ei,j表示两个节点i,j之间的注意力权重;归一化后的注意力矩阵E′将和输入矩阵X进行相乘得到最终输入;
[0025] 使用图卷积运算聚合每个节点及其邻居的特征;在顶点域中定义了图卷积运算,图卷积运算的输入是局部时空图的图信号矩阵;图卷积运算中,每个节点在相邻的时间步长处汇总其自身及其邻居的特征,聚合函数是线性组合,其权重等于节点与其邻居之间的边缘的权重;然后部署一个具有激活功能的全连接层,以将节点的特征转换为新的空间,该图卷积运算表示为:
[0026]
[0027] 其中 表示局部时空图的邻接矩阵, 是第l个卷积层的输入, 是可学习的参数,sigmoid表示sigmoid激活
函数,即 表示逐元素乘积;门控线性单元控制将哪个节点的信息传
递到下一层;该图卷积运算在顶点域中定义,该图卷积运算不仅可以应用于无向图,而且可以应用于有向图;局部时空图的每个节点添加自环,以使图卷积操作在聚合特征时考虑其自身的特征;
[0028] 将一组同步图卷积模块部署为一层时空同步图卷积层,将时空同步图卷积层的输入矩阵表示为 首先,为每个时空同步图卷积层添加时空嵌入,然后,时空同步图卷积层中的滑动窗口会将输入切出为T‑2时空网络序列;每个时空网络序列表示为将它们重塑为 将其直接与局部时空图一起输入到同步图卷积模块中,时空同步图卷积层在T‑2局部时空图上部署T‑2个同步图卷积模块,所有这些T‑2个同步图卷积模块的输出都被合并为一个矩阵,作为时空同步图卷积层的输出,表示为:
[0029]
[0030] 其中 表示第i层同步图卷积模块的输出。
[0031] 所述输出层是将最后一个时空同步图卷积层的输出转换为未来T′个时间步的交通信息序列,该输出层的输入表示为 将该输入进行转置并将其重塑为使用T个两层连接层来生成预测,如下所示:
[0032]
[0033] 其中 表示第i个时间步下的预测结果,表示可学习的参数,其中C表示第一完全连接层的输出的特征数;然后,将每个时间步长的所有预测合并为一个矩阵:
[0034]
[0035] 步骤6:用测试集对训练结束后的时空同步图卷积网络模型进行测试,评估模型误差,若误差大于设定的阈值,则返回步骤4,重新训练模型;
[0036] 所述测试使用Huber损失作为损失函数,其计算方法为:
[0037]
[0038] Y表示由已知的交通流序列生成的矩阵,是预测得到的矩阵,δ是超参数。
[0039] 步骤7:将待预测路段前N个设定时间片的交通流数据输入训练好的时空同步图卷积网络模型中,预测该路段未来N个时间片的交通流量。
[0040] 采用上述技术方案所产生的有益效果在于:
[0041] 本发明提出了一种基于注意力机制的时空同步图卷积网络交通流量预测方法,本发明它直接同步捕获局部时空相关性,而不是分别使用不同类型的神经网络模块;同是还构造了一个基于注意力机制的时空同步多模块层用以捕获远程时空图中的异质性,它在每个时间段上部署多个模块,从而使每个模块都可以专注于提取每个局部时空图上的时空相关性,进而可以使模型达到精准的预测结果。

附图说明

[0042] 图1为本发明的整体交通流量预测的流程图。
[0043] 图2为本发明中时空同步图卷积网络模型图。
[0044] 图3为本发明中同步图卷积模块结构图。

具体实施方式

[0045] 下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
[0046] 一种基于注意力机制的时空同步图卷积网络交通流量预测方法,如图1所示,包括以下步骤:
[0047] 步骤1:以设定时间5分钟为一个时间片,通过在交通路口安装的车流量检测装置收集并统计每个时间片下的历史交通流量信息,形成二维交通流矩阵;
[0048] 所述历史交通流数据包括路段在一个时间片下经过的机动车车牌号、过车时间、过车速度,根据历史交通流数据统计车流量信息,并对重复数据以及无效数据进行清洗,剩余数据形成二维交通流矩阵;
[0049] 步骤2:将安装在每个交通路口的车流量检测装置看成一个节点,将单个时间片下各个节点之间的联系以及交通流数据构成一张路网拓扑图;多个时间片下的路网拓扑图构成局部时空图;
[0050] 所述路网拓扑图包括:所有节点的集合V,|V|=N表示节点数量,节点之间的边集E,节点之间边的权重邻接矩阵A;得到路网拓扑图G=(V,E,A)。
[0051] 步骤3:将一个时间片下的每个节点分别与上个时间片与下个时间片中的所有节点连接,构造时空网络序列;
[0052] 设一个时间片下的路网拓扑图中的统计信息为一个图信号矩阵 其中C是属性特征的数量,t表示时间步长,该图信号矩阵表示在时间步t处对空间网络G的观测。因此路口交通流量预测的问题就可表达为:构建模型f,将长度为T的历史交通信息序列作为输入,预测未来T′个时间步的交通信息序列
[0053] 在构造时空网络序列时,通过将前一时间步和下一时间步的所有节点连接起来,可以获得局部的时空图。根据局部时空图的拓扑结构,可以直接捕获每个节点与其时空邻居之间的相关性。所述构造时空网络序列,使用 表示空间图的邻接矩阵,表示在三个连续的空间图上构建的局部时空图的邻接矩阵;对于空间图中的节点i,通过(t‑1)N+i来计算其在局部时空图中的新索引,其中t(0<t≤3)表示局部时空图中的时间步长;如果在此局部时空图中两个节点相互连接,则在邻接矩阵中的对应值设置为1;其中局部时空图的邻接矩阵表示为:
[0054]
[0055] 其中vi表示局部时空图中的节点i。
[0056] 但是,将不同时间步长的节点连接到一个图形中会掩盖每个节点的时间属性。换句话说,该局部时空图将处于不同时间步长的节点置于相同的环境中,而不会对其进行区分。因此本发明将将位置嵌入到时空网络系列中,以便模型可以考虑时空信息,从而可以增强对时空相关性进行建模的能力。
[0057] 步骤4:将路口检测装置收集得到的历史交通流量信息划分为训练集、测试集;
[0058] 步骤5:设计预测交通流量的基于注意力机制的时空同步图卷积ASTSGCN网络,并利用训练集对其进行训练,对于时空网络序列 创建了一个可学习的时间嵌入矩阵 和一个可学习的空间嵌入矩阵 在训练过程完成后,两个嵌入矩阵将包含相邻路网拓扑图的时间和空间信息,以帮助模型捕获时空相关性,然后将这两个嵌入矩阵添加到具有广播操作的时空网络序列中,以获得时空网络序列的新表示形式:
[0059]
[0060] 所述时空同步图卷积ASTSGCN网络包括依次连接的全连接层、若干个堆叠的基于注意力机制的时空同步图卷积层ASTSGCL、全连接层,用于捕获局部时空相关性;
[0061] 所述ASTSGCN模型的输入为时空网络序列
[0062] 所述时空同步图卷积层由若干个带注意力机制的同步图卷积模块ASTSGCM组合构成,其中,每个ATSTSGCM模块是由时空注意力单元和时空卷积单元组成。输入的时空网络序列先通过全连接层转化为高维向量,然后进入ASTSGCM模块,依次进行时空注意力机制计算,然后再做时空图卷积的运算,其中,使用空间注意力机制可以自适应地捕捉空间维度中节点之间的动态关联性。注意力矩阵的计算公式为:
[0063]
[0064] 其中 表示第r层同步图卷积模块的输入,Cr‑1表示输入数据在第r层模块上特征值的数量,Tr‑1表示不同的时间片,都是学习参数。σ表示激活函数。然后使用公式
其中Si,j是指注意力矩阵S中两个节点i,j之间的关联强度,使用该公式
来将注意力矩阵S进行归一化,归一化后的注意力矩阵S′在后面的图卷积中将和邻接矩阵A进行相乘,在时间维度上,不同时间段的交通状况之间存在相关性,不同情况下的相关性也不同。同样,使用注意机制来自适应地赋予数据不同的权重。注意力矩阵的计算公式为:
[0065]
[0066] 其中, 都是学习参数,使用公式 将将注意力矩阵E进行归一化,其中Ei,j表示两个节点i,j之间的注意力权重。归一化后的注意力矩阵E′将和输入矩阵X进行相乘得到最终输入;
[0067] 使用图卷积运算聚合每个节点及其邻居的特征。在顶点域中定义了一个图卷积运算,以聚合时空网络中的局部时空特征。图卷积运算的输入是局部时空图的图信号矩阵。图卷积运算中,每个节点在相邻的时间步长处汇总其自身及其邻居的特征。聚合函数是线性组合,其权重等于节点与其邻居之间的边缘的权重。然后,部署一个具有激活功能的全连接层,以将节点的特征转换为新的空间。该图卷积运算表示为:
[0068]
[0069] 其中 表示局部时空图的邻接矩阵, 是第l个卷积层的输入, 是可学习的参数,sigmoid表示sigmoid激活
函数,即 表示逐元素乘积。门控线性单元控制将哪个节点的信息传
递到下一层。该图卷积运算在顶点域中定义,这意味着它不需要计算图拉普拉斯算子。而且,该图卷积运算不仅可以应用于无向图,而且可以应用于有向图。局部时空图的每个节点添加自环,以使图卷积操作在聚合特征时考虑其自身的特征。
[0070] 将一组ASTSGCM部署为一层ASTSGCL,以提取远程时空特征。将ASTSGCL的输入矩阵表示为 首先,为每个AASTSGCL添加时空嵌入。然后,ASTSGCL中的滑动窗口会将输入切出为T‑2时空网络序列。每个时空网络序列可以表示为 将它们重塑为可以将其直接与局部时空图一起输入到ASTSGCM中。ASTSGCL在T‑2局部时空图上部署T‑2个ASTSGCM,以捕获这些T‑2时空网络序列中的局部时空相关性。之后,所有这些T‑2个ASTSGCM的输出都被合并为一个矩阵,作为ASTSGCL的输出。可以表示为:
[0071]
[0072] 其中 表示第i层ASTSGCM的输出。
[0073] 通过堆叠多个ASTSGCL,可以构建一个层次模型,该模型可以捕获复杂的时空相关性和时空异质性。经过几次时空同步图卷积运算后,每个节点将包含以自身为中心的局部时空相关性。
[0074] 最后设计输出层,是将最后一个ASTSGCL的输出转换为未来T′个时间步的交通信息序列,该输出层的输入表示为 首先将该输入进行转置并将其重塑为然后,使用T个两层连接层来生成预测,如下所示:
[0075]
[0076] 其中 表示第i个时间步下的预测结果,表示可学习的参数,其中C表示第一完全连接层的输出的特征数。然后,将每个时间步长的所有预测合并为一个矩阵:
[0077]
[0078] Y表示由已知的交通流序列生成的矩阵,是预测得到的矩阵,δ是一个超参数;本实施例中时空同步图卷积网络模型图与同步图卷积模块结构图如图2、图3所示。
[0079] 步骤6:用测试集对训练结束后的时空同步图卷积网络模型进行测试,评估模型误差,若误差大于设定的阈值,则返回步骤4,重新训练模型;
[0080] 损失函数选择了Huber损失作为损失函数。因为与平方误差损失相比,Huber损失对异常值的敏感度低。其计算方法为:
[0081]
[0082] 步骤7:将待预测路段前12个时间片(1小时)的交通流数据输入训练好的模型中,预测该路段未来12个时间片的交通流量。
[0083] 以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开的实施例中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开的实施例中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。