基于连续动态常微分方程的交通流量预测系统及方法
未命名
07-17
阅读:141
评论:0
1.本发明涉及交通流量预测技术领域,尤其涉及到一种基于连续动态常微分方程的交通流量预测系统及方法。
背景技术:
2.交通流量预测旨在使用历史交通观测数据来预测未来的交通流量。交通流量是智能交通控制、城市规划、路径规划等的基础,因此该研究已经成为当前的热点。然而交通数据中的非线性、不稳定性导致交通流量预测成为一个具有挑战性研究课题。
3.经典的统计模型受到机器学习方法对交通流量预测任务的强烈挑战,相较于统计分析模型这些模型可以实现更高的预测精度和更复杂的数据建模。深度学习凭借其强大的特征工程能力和函数拟合能力,在自然语言处理、计算机视觉等领域取得了巨大的成功。受以上研究成果的启迪,各国学者基于lstm、gru、cnn、seq2seq等深度学习算法构建了交通流量预测。然而交通数据天然具有非欧几里得性,难以使用卷积等操作捕获数据中蕴含的空间依赖。为了解决该问题,现有模型基于经纬度等将交通网络切割成为大小相等的若干网格,并基于此实现卷积操作在交通数据上的应用。网格化操作有可能将具有一个社区划分为两个网格,破坏了交通数据间的空间依赖。
4.近年来,基于图神经网络的交通流量预测引起了产业界和学界的广泛关注。相较于基于深度学习的预测模型,图模型将交通网络抽象为图,规避了网格化操作对网络结构一致性的破坏,能更好地利用交通网络的拓扑结构抽取交通数据中蕴含的时空特征。然而现有研究大多将交通路网视为一个静态结构,忽略了交通路网天然具有的动态属性。同时由于图卷积层堆叠将产生过平滑问题,限制了图神经网络捕获节点间的长程时空依赖的能力。针对以上问题,cstode将交通事件对邻接矩阵的影响抽象为基于transformer的hawkes过程。同时将图神经网络抽象为一个常微分方程,给出了时空依赖关于图神经网络层数的解析解,从而进行交通流量预测。
5.现有图模型大多视交通网络为一个静态结构,忽略了交通网的动态属性。交通网络的动态性可以分为两个部分:网络动态性和节点动态性。网络动态性体现为节点间依赖随时间的变化,而节点动态性体现为节点特征随时间的变化。交通路网的动态性天然具有两个重要属性:(1)连续性,即交通网络的动态性随着时间的推移而呈现出连贯甚至连续变化的趋势;(2)长程依赖,即较早时间步的交通流量或相距较远的节点对目标节点交通流量间存在的依赖关系。针对交通网络的连续动态性现有模型定义固定的时间间隔,利用静态图神经网络分析方法建模每一个时间片上各节点的特征,将各个时间片上的节点特征作为时间序列分析算法,例如rnn、lstm等的输入,实现对节点间的连续动态性进行建模。针对长程依赖问题,图神经网络通过堆叠方式以期达到扩大网络感受野,实现节点间长程依赖的建模。但会导致以下问题:(1)两时间间隔间发生的交通事件对交通流量产生的影响无法捕获,导致模型对交通流量变化的敏感性较弱;
(2)图神经网络堆叠将导致过平滑问题,导致预测性能较低。因此已有模型的堆叠层数大多小于2,导致难以建模交通数据中节点间的长程依赖;(3)现有模型大多是“transductive”的,即假设交通网络拓扑结构不发生变化(网络的拓扑结构以及节点间的关联强度都不发生变化)。该假设与实际情况具有较大差异。
技术实现要素:
6.本发明的主要目的在于提供一种基于连续动态常微分方程的交通流量预测系统及方法,旨在将交通网络的动态性抽象为由随机交通事件导致交通网络拓扑结构的连续变化,并使用基于transformer的神经hawkes过程对路网的连续动态性进行建模。同时将图神经网络抽象为一个常微分方程(ode)给出了时空依赖关于图神经网络层数的解析解,解决了由于图卷积层堆叠导致的过平滑问题,从而进行交通流量预测。
7.为实现上述目的,本发明提供一种基于连续动态常微分方程的交通流量预测系统,所述系统,具有:数据输入模块;时间依赖提取模块;时空依赖捕获模块;动态节点嵌入模块;交通流量预测模块;其中,所述数据输入模块用于对输入的历史交通时间数据序列进行预处理,拆分为l个子序列;其中,时间依赖提取模块用于提取l个子序列中的时间相关性,生成交通流的时间依赖序列;其中,所述时空依赖捕获模块用于为时间依赖序列生成对应的邻接矩阵序列,依据所述邻接矩阵序列,将交通事件进行分类,得到事件的初始矩阵,将其输入到自注意力机制的模块中,将注意力输出输入到前反馈神经网络,生成事件序列的隐藏表示,得到每一个事件类型的条件强度函数,以此预测下一时刻的邻接矩阵;其中,所述动态节点嵌入模块用于将预测出的邻接矩阵与动态时空图结合,获取时空数据张量,并采用基于张量的常微分方程框架对路网交通流的时空动态进行建模与求解,获得隐含层的解析解;其中,所述交通流量预测模块用于进行最大池化操作,并采用多层感知器生成交通流量预测结果。
8.可选的,所述数据输入模块,具体采用滑动窗口对输入的历史交通时间数据序列进行预处理。
9.可选的,所述时间依赖提取模块,具体采用一维深度卷积神经网络提取l个子序列中的时间相关性,生成交通流的时间依赖序列。
10.可选的,所述时间依赖序列的表达式,具体为:
;其中,为时间依赖序列,为子序列,为卷积核。
11.可选的,所述时空依赖捕获模块,用于根据时间依赖序列,生成若干个动态连通性集合,并将每个时间依赖张量与一个动态连通性集合相对应,以此获得在时间步上的邻接矩阵,生成邻接矩阵序列。
12.可选的,所述时空依赖捕获模块,用于将交通事件分为关联增强、关联减弱和关联强度不变。
13.可选的,所述时空依赖捕获模块,用于采用自注意力机制生成事件序列的隐藏表示,得到每个交通事件的条件强度函数。
14.可选的,所述时空依赖捕获模块,用于在预测下一时刻的邻接矩阵后,使用均方误差来衡量预测值与真实值之间的差值。
15.可选的,所述交通流量预测模块,用于在生成交通流量预测结果后,使用平滑平均绝对误差来衡量预测结果和真实值之间的差距。
16.此外,为了实现上述目的,本发明还提供了一种基于连续动态常微分方程的交通流量预测方法,所述方法包括:s1:利用数据输入模块对输入的历史交通时间数据序列进行预处理,拆分为l个子序列;s2:利用时间依赖提取模块提取l个子序列中的时间相关性,生成交通流的时间依赖序列;s3:利用时空依赖捕获模块为时间依赖序列生成对应的邻接矩阵序列,依据所述邻接矩阵序列,将交通事件进行分类,得到时间的初始矩阵,将注意力输入前反馈神经网络,生成事件序列的隐藏表示,得到每一个事件类型的条件强度函数,以此预测下一时刻的邻接矩阵;s4:利用动态节点嵌入模块将预测出的邻接矩阵与动态时空图结合,获取时空数据张量,并采用基于张量的常微分方程框架对路网交通流的时空动态进行建模与求解,获得隐含层的解析解;s5:利用交通流量预测模块进行最大池化操作,并采用多层感知器生成交通流量预测结果。
17.本发明实施例提出的一种基于连续动态常微分方程的交通流量预测系统及方法,所述系统具有:数据输入模块;时间依赖提取模块;时空依赖捕获模块;动态节点嵌入模块;交通流量预测模块。本发明将交通网络的动态性抽象为由随机交通事件导致交通网络拓扑结构的连续变化,并使用基于transformer的神经hawkes过程对路网的连续动态性进行建模。同时将图神经网络抽象为一个常微分方程(ode)给出了时空依赖关于图神经网络层数的解析解,解决了由于图卷积层堆叠导致的过平滑问题。
附图说明
18.图1为本发明基于连续动态常微分方程的交通流量预测系统的结构示意图;图2为本发明动态ode层的结构示意图;图3为本发明基于连续动态常微分方程的交通流量预测方法的流程示意图。
19.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
20.附图标记说明:10-数据输入模块;20-时间依赖提取模块;30-时空依赖捕获模块;40-动态节点嵌入模块;50-交通流量预测模块。
具体实施方式
21.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
22.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
23.本发明实施例提供了一种基于连续动态常微分方程的交通流量预测系统,参照图1,图1为本发明基于连续动态常微分方程的交通流量预测系统的实施例的示意图。
24.具体而言,基于连续动态常微分方程的交通流量预测系统,包括数据输入模块10;时间依赖提取模块20;时空依赖捕获模块30;动态节点嵌入模块40;交通流量预测模块50。
25.其中,所述数据输入模块用于对输入的历史交通时间数据序列进行预处理,拆分为l个子序列;时间依赖提取模块用于提取l个子序列中的时间相关性,生成交通流的时间依赖序列;所述时空依赖捕获模块用于为时间依赖序列生成对应的邻接矩阵序列,依据所述邻接矩阵序列,将交通事件进行分类,得到事件的初始矩阵,将注意力输出输入到前反馈神经网络,生成事件序列的隐藏表示,得到每一个事件类型的条件强度函数,以此预测下一时刻的邻接矩阵;所述动态节点嵌入模块用于将预测出的邻接矩阵与动态时空图结合,获取时空数据张量,并采用基于张量的常微分方程框架对路网交通流的时空动态进行建模与求解,获得隐含层的解析解;所述交通流量预测模块用于进行最大池化操作,并采用多层感知器生成交通流量预测结果。
26.本实施例中,将交通路网抽象为图,其中,v是交通网络中顶点的集合,,是交通网络中的顶点位置。e是交通网络中的边集,表示交通网络中顶点之间的连接。,表示路网图的邻接矩阵,包含路网的交通信息。时刻交通路网的交通信息用,其中f为交通路网特征的数量。此时将交通流量预测问题转换为输入一个历史交通时间数据序列和一个交通路网图g到模型中,输出一个t时间的交通流,这个过程形式化如下:;式中,为图神经网络,为时刻的交通流量。
27.cstode包括四个部分:数据输入、时间依赖建模、网络空间依赖和动态节点嵌入模型。
28.需要说明的是,该cstode通过执行如下步骤,以实现基于连续动态常微分方程的交通流量预测。
29.一、数据预处理将对交通数据预处理过程进行详细描述。输入一个历史交通时间数据序列,为了减少交通数据维度,对输入的历史序列数据进行预处理,利用滑动窗口将输入数据x拆分为l个子序列,其中窗口大小为w,步长为超参数d,。
30.二、时间依赖提取使用1-dcnn提取输入数据中的时间相关性,并生成交通流时间依赖序列,;;其中为卷积核。
31.三、时空依赖捕获给定,顶点i和j的交通流序列分别定义为,,定义时间步长为t时的(i,j)顶点对之间的依赖关系用动态连接dc评估,表示如下:;表示顶点对之间的历史交通流相似性,可以反映节点之间的空间依赖性。使用kl散度来评估交通流的相似性,即刻画了节点之间的语义相似性。刻画了节点之间的空间相似性。为节点i和节点j之间的距离,为控制矩阵稀疏度的阈值。给定,具体交通流序列的动态相关定义如下:;;其中,可以用来评估方向性对交通流相似度的影响。因此,每个时间依赖张量对应一个动态连通性集合。则在时间步上
对应的邻接矩阵定义如下:;其中为归一化函数。
32.将网络拓扑结构的变化抽象为连续交通事件对邻接矩阵施加的调整,该过程使用hawkes过程进行拟合。给定时间依赖序列可生成邻接矩阵序列。针对邻接矩阵,认为交通事件可以分为三类:关联增强、关联减弱和关联强度不变。相关定义如下:;其中1表示关联增强,-1表示关联减弱,0表示关联强度不变。在t时刻之前发生在a(i,j)上的事件流可定义为:;根据霍克斯过程,t时刻类型k事件在的条件强度函数可以定为:;其中≥0为k型事件的基强度,≥0为j型事件初始激发k型事件的程度,》 0为该激发的衰减率。t表示为当前时刻,表示历史时间发生的时间。传统的hawkes认为历史事件对未来事件仅具有激励作用,和只能取正实数,且认为历史事件对未来事件的影响通过衰减函数线性拟合。该假设显然与复杂的交通事件不相符,因此本技术对其公式进行了调整,使用transformer模拟历史事件对未来事件的影响,同时允许和取值为实数,承认历史事件对未来事件可能存在激励作用、抑制作用以及延迟作用。具体来说,当一个事件随机发生在任意区间时,强度被重新定义为:;其中是transformer结果,是可学习参数。h(t)与transformer结构的隐含状态类似,通过self-attention模块传递x并计算注意力输出s;;其中q、k、v是通过x进行不同变换得到的查询矩阵、键矩阵和值矩阵。事件序列的注意力输出为,为聚合矩阵。之后,将注意力输出s通过前反馈神经网络,生成事件序列的隐藏表示为:
;;其中,,为神经网络的参数。
33.基于此,将未来邻接矩阵定义为:;其中,是可学习参数。将上述公式转化为对应的向量表达:;其中,是强度矩阵的可学习矩阵,为哈德曼积。
34.在得到预测出的下一时刻邻接矩阵之后,使用均方误差来衡量预测值与真实值之间的差值。定义如下:;其中,为真实值,为预测值。
35.此外,为了有效提高计算效率,将邻接矩阵稀疏化处理。
36.;其中为激活函数,为超参数。如果,则。
37.四、节点动态性将预测出的邻接矩阵与动态时空图ode相结合,实现连续时间下的动态图ode网络,将时空数据表示为张量,采用基于张量的时空ode(常微分方程)框架对路网交通流的时空动态进行建模。模型选用ode求解器作为欧拉求解器,获得关于隐含层的解析解。
38.在动态ode层中,使用两个tcn块和一个动态ode求解器组成,如图2所示,进一步扩展模型发现复杂相关性的能力,采用的全卷积其具有快速训练和并行化的优势。在模型的构建中,将不同时刻的混合时空邻接矩阵依次部署到stode块中,极大提高了表示能力。并将多个块并行部署,用以捕获更复杂和多层次的关联。
39.五、损失函数在动态ode层之后,进行max-pooling操作,有选择的聚合来自不同块的信息。最后,用一个两层mlp作为输出层,将最大池化层的输出转变为预测结果。选用huber损失函数(平滑平均绝对误差)来衡量预测结果和真实值之间的差距:
;其中,和分别为真实值和预测值,为超参数。
40.本领域人员可以知道:(1)两时间间隔间发生的交通事件对交通流量产生的影响无法捕获,导致模型对交通流量变化的敏感性较弱。为了提高模型的敏感性,本发明将两个时间间隔之间的事件也考虑在内,预测任意连续时间内的交通流量情况。
41.(2)如果将图神经网络堆叠起来,就会导致所谓的“过平滑”问题,这可能会导致预测性能较低。因此,现有的图神经网络模型中,堆叠的层数通常比较少,大多数模型的堆叠层数小于2。为了提高模型的预测性能,需要堆叠多层图神经网络,但同时需要解决过平滑问题,以充分利用交通数据中的长程相关性。
42.(3)现有模型大多是“transductive”的,即假设交通网络拓扑结构不发生变化(网络的拓扑结构以及节点间的关联强度都不发生变化)。该假设与实际情况具有较大差异,需要使用一些“inductive”的模型。
43.本实施例通过将交通网络拓扑结构的动态性抽象为由随机交通事件导致交通网络拓扑结构的连续变化,并使用基于transformer的神经hawkes过程对路网的连续动态性进行建模。将节点的动态性抽象为节点嵌入关于堆叠层数的偏微分方程,并基于欧拉解析器给出了该偏微分方程的解析解。提高了计算效率,为支持大规模路网的交通流量预测问题奠定了基础。cstode模型在增加堆叠层数的同时依然具有较好的准确率,解决了传统方法捕获长程时空依赖以及节点过平滑之间的矛盾。
44.参照图3,图3为本发明基于连续动态常微分方程的交通流量预测方法实施例的流程示意图。
45.如图3所示,本发明实施例提出的基于连续动态常微分方程的交通流量预测方法,用于前述实施例记载的基于连续动态常微分方程的交通流量预测系统,该方法包括:s1:利用数据输入模块对输入的历史交通时间数据序列进行预处理,拆分为l个子序列;s2:利用时间依赖提取模块提取l个子序列中的时间相关性,生成交通流的时间依赖序列;s3:利用时空依赖捕获模块为时间依赖序列生成对应的邻接矩阵序列,依据所述邻接矩阵序列,将交通事件进行分类,得到事件的初始矩阵,将其输入到自注意力机制的模块中,将注意力输出输入到前反馈神经网络,生成事件序列的隐藏表示,得到每一个事件类型的条件强度函数,以此预测下一时刻的邻接矩阵;s4:利用动态节点嵌入模块将预测出的邻接矩阵与动态时空图结合,获取时空数据张量,并采用基于张量的常微分方程框架对路网交通流的时空动态进行建模与求解,获得隐含层的解析解;s5:利用交通流量预测模块进行最大池化操作,并采用多层感知器生成交通流量
预测结果。
46.本发明基于连续动态常微分方程的交通流量预测方法的其他实施例或具体实现方式可参照上述各系统实施例,此处不再赘述。
47.可以理解的是,在本说明书的描述中,参考术语“一实施例”、“另一实施例”、“其他实施例”、或“第一实施例~第n实施例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
48.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
49.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
50.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
51.以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
技术特征:
1.基于连续动态常微分方程的交通流量预测系统,其特征在于,所述系统,具有:数据输入模块;时间依赖提取模块;时空依赖捕获模块;动态节点嵌入模块;交通流量预测模块;其中,所述数据输入模块用于对输入的历史交通时间数据序列进行预处理,拆分为l个子序列;其中,时间依赖提取模块用于提取l个子序列中的时间相关性,生成交通流的时间依赖序列;其中,所述时空依赖捕获模块用于为时间依赖序列生成对应的邻接矩阵序列,依据所述邻接矩阵序列,将交通事件进行分类,得到事件的初始矩阵,将其输入到自注意力机制的模块中,将注意力输出输入到前反馈神经网络,生成事件序列的隐藏表示,得到每一个事件类型的条件强度函数,以此预测下一时刻的邻接矩阵;其中,所述动态节点嵌入模块用于将预测出的邻接矩阵与动态时空图结合,获取时空数据张量,并采用基于张量的常微分方程框架对路网交通流的时空动态进行建模与求解,获得隐含层的解析解;其中,所述交通流量预测模块用于进行最大池化操作,并采用多层感知器生成交通流量预测结果。2.如权利要求1所述的基于连续动态常微分方程的交通流量预测系统,其特征在于,所述数据输入模块,具体采用滑动窗口对输入的历史交通时间数据序列进行预处理。3.如权利要求2所述的基于连续动态常微分方程的交通流量预测系统,其特征在于,所述时间依赖提取模块,具体采用一维深度卷积神经网络提取l个子序列中的时间相关性,生成交通流的时间依赖序列。4.如权利要求3所述的基于连续动态常微分方程的交通流量预测系统,其特征在于,所述时间依赖序列的表达式,具体为:;其中,为时间依赖序列,为子序列,为卷积核。5.如权利要求4所述的基于连续动态常微分方程的交通流量预测系统,其特征在于,所述时空依赖捕获模块,用于根据时间依赖序列,生成若干个动态连通性集合,并将每个时间依赖张量与一个动态连通性集合相对应,以此获得在时间步上的邻接矩阵,生成邻接矩阵序列。6.如权利要求5所述的基于连续动态常微分方程的交通流量预测系统,其特征在于,所述时空依赖捕获模块,用于将交通事件分为关联增强、关联减弱和关联强度不变。7.如权利要求6所述的基于连续动态常微分方程的交通流量预测系统,其特征在于,所
述时空依赖捕获模块,用于采用自注意力机制,通过前反馈神经网络生成事件序列的隐藏表示,得到每个事件类型的条件强度函数。8.如权利要求7所述的基于连续动态常微分方程的交通流量预测系统,其特征在于,所述时空依赖捕获模块,用于在预测下一时刻的邻接矩阵后,使用均方误差来衡量预测值与真实值之间的差值。9.如权利要求8所述的基于连续动态常微分方程的交通流量预测系统,其特征在于,所述交通流量预测模块,用于在生成交通流量预测结果后,使用平滑平均绝对误差来衡量预测结果和真实值之间的差距。10.一种基于连续动态常微分方程的交通流量预测方法,其特征在于,所述方法包括:s1:利用数据输入模块对输入的历史交通时间数据序列进行预处理,拆分为l个子序列;s2:利用时间依赖提取模块提取l个子序列中的时间相关性,生成交通流的时间依赖序列;s3:利用时空依赖捕获模块为时间依赖序列生成对应的邻接矩阵序列,依据所述邻接矩阵序列,将交通事件进行分类,得到事件的初始矩阵,将其输入到自注意力机制的模块中,将注意力输出输入到前反馈神经网络,生成事件序列的隐藏表示,得到每一个事件类型的条件强度函数,以此预测下一时刻的邻接矩阵;s4:利用动态节点嵌入模块将预测出的邻接矩阵与动态时空图结合,获取时空数据张量,并采用基于张量的常微分方程框架对路网交通流的时空动态进行建模与求解,获得隐含层的解析解;s5:利用交通流量预测模块进行最大池化操作,并采用多层感知器生成交通流量预测结果。
技术总结
本发明公开了一种基于连续动态常微分方程的交通流量预测系统及方法,所述系统具有:数据输入模块;时间依赖提取模块;时空依赖捕获模块;动态节点嵌入模块;交通流量预测模块。本发明将交通网络的动态性抽象为由随机交通事件导致交通网络拓扑结构的连续变化,并使用基于Transformer的神经Hawkes过程对路网的连续动态性进行建模。同时将图神经网络抽象为一个常微分方程给出了时空依赖关于图神经网络层数的解析解,解决了由于图卷积层堆叠导致的过平滑问题,从而进行交通流量预测。从而进行交通流量预测。从而进行交通流量预测。
技术研发人员:潘佳艺 王炜 范启强 郭元萍 蒋晓雨 刘成 赵腾 尹国强
受保护的技术使用者:云南大学
技术研发日:2023.05.26
技术公布日:2023/7/4
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
