一种交通流量预测方法及装置
未命名
07-17
阅读:207
评论:0
1.本发明涉及交通监测技术领域,尤其涉及的是一种交通流量预测方法及装置。
背景技术:
2.时空序列预测属于时间序列预测的一个方向,随着深度学习在计算机视觉和自然语言处理取得了优异的效果,该领域也得到了突飞猛进的发展。在交通领域,通过使用历史数据对模型进行训练,可以让模型学习到数据中的规律性特征,从而对未来进行准确的预测。
3.现有的技术大多是基于卷积神经网络和循环神经网络与图神经网络结合的模型。由于卷积神经网络是基于图像识别而提出的一类模型,因此,众多基于卷积神经网络的模型都不能很好的利用时空序列中时序的特点,从而难以对数据中的规律性进行建模,也就难以对未来进行准确预测。循环神经网络是基于序列建模而提出的一类模型,该类模型的结构就是为序列建模而设计的,因此能很好的契合时空序列的特点。但是,随着序列长度的增加该模型存在梯度消失或者梯度爆炸等情况使得模型难以训练。不仅如此,该类模型还存在无法并行训练的问题,导致训练的时间随着序列长度的增加而增加。
4.因此,现有的技术大多直接照搬图神经网络的基础架构融合到自己的模型中,这样,没有结合时空序列的数据特点进行预测,导致预测的结果并不准确。
5.因此,现有技术存在缺陷,有待改进与发展。
技术实现要素:
6.本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种交通流量预测方法及装置,旨在解决现有技术中使用模型对交通流量进行预测时得到的预测结果并不准确的问题。
7.本发明解决技术问题所采用的技术方案如下:
8.一种交通流量预测方法,所述方法包括:
9.获取当前时间段内的车流量信息,将所述车流量信息输入预先训练的时序预测模型中;
10.在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔;
11.根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。
12.在一种实现方式中,在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔之前,还包括:
13.在所述时序预测模型中将所述车流量信息进行归一化处理,得到归一化数据;
14.利用快速傅立叶变换获取所述归一化数据中每个节点的傅立叶特征,利用线性变
换方式将每个节点的傅立叶特征映射到高维度;
15.利用线性变换方式将所述归一化数据映射到高维度后进行时序位置编码,得到编码数据;
16.将所述编码数据和所述傅立叶特征之和作为编码器结构的输入数据。
17.在一种实现方式中,所述编码器结构包括多层编码器;在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔,包括:
18.将所述车流量信息处理为编码器结构的输入数据后,依次经多层编码器提取所述车流量信息中的有效特征,经过每层编码器后均输出对应的特征提取信息;
19.根据各个所述特征提取信息得到层次化特征金字塔;
20.其中,上一层编码器输出的特征提取信息作为下一层编码器的输入数据。
21.在一种实现方式中,每层编码器均包括:时序自注意力模块、第一时序分解模块、空间自注意力模块和图卷积模块;
22.在每层编码器中,提取所述输入数据中有效特征的步骤包括:
23.获取输入数据,将所述输入数据输入所述时序自注意力模块,提取所述输入数据中的时序特征;
24.将所述时序特征输入所述第一时序分解模块,得到第一移动平均值;
25.将所述第一移动平均值输入所述图卷积模块,得到静态图特征,以及,将所述第一移动平均值进行空间位置编码后输入所述空间自注意力模块,得到动态图特征;
26.将所述静态图特征与所述动态图特征进行拼接,将拼接后的所述静态图特征和动态图特征进行空间特征融合处理,得到空间特征融合结果;
27.将所述空间特征融合结果输入所述第一时序分解模块,得到第二移动平均值;
28.对所述第二移动平均值进行时序特征融合处理,得到特征提取信息。
29.在一种实现方式中,每层编码器还包括:图结构学习模块;
30.将所述第一移动平均值输入所述图卷积模块,得到静态图特征,包括:
31.若所述第一移动平均值中存在邻接矩阵,则将所述第一移动平均值输入所述图卷积模块;
32.若所述第一移动平均值中不存在邻接矩阵,则将所述第一移动平均值输入所述图结构学习模块中构建自适应邻接矩阵,并将构建有自适应邻接矩阵的第一移动平均值输入所述图卷积模块;
33.将具有邻接矩阵的所述第一移动平均值输入所述图卷积模块后,得到邻居信息与节点自身信息,对所述邻居信息与节点自身信息的特征变换进行分离,得到邻居特征和节点特征,同时,利用门控线性单元对所述邻居特征进行约束处理;
34.将所述邻居特征和所述节点特征进行特征融合,得到静态图特征。
35.在一种实现方式中,根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息,包括:
36.获取归一化处理后的所述车流量信息,将归一化处理后的所述车流量信息中各个车流量数据分解为观测值趋势项和观测值残差项;
37.将各个所述观测值趋势项的平均值作为待预测值的趋势项进行填充,得到待预测
趋势项,以及将待预测残差项初始化为零;
38.将所述观测值趋势项和所述待预测趋势项进行拼接处理,得到初始趋势项,以及将所述观测值残差项和所述待预测残差项进行拼接处理,得到初始残差项;
39.将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。
40.在一种实现方式中,所述解码器结构包括多层解码器,且每层解码器均对应有一层编码器;
41.将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息,包括:
42.在所述时序预测模型中,依次经多层解码器将所述初始趋势项、所述初始残差项和所述层次化特征金字塔进行趋势预测处理,经过每层解码器后均输出对应的趋势项预测值和残差项预测值;
43.将最后一层解码器输出的趋势项预测值和残差项预测值相加,并利用全连接层处理得到下一时间段内的车流量预测信息;
44.其中,第一层解码器的趋势项输入数据为所述初始趋势项,第一层解码器的残差项输入数据为所述初始残差项;上一层解码器输出的趋势项预测值作为下一层解码器的趋势项输入数据,上一层解码器输出的残差项预测值作为下一层解码器的残差项输入数据。
45.在一种实现方式中,每层解码器均包括:掩码时序自注意力模块、第二时序分解模块、时序交叉注意力模块及前向传播模块;
46.在每层解码器中,将所述初始趋势项、所述初始残差项和所述层次化特征金字塔进行趋势预测处理的步骤包括:
47.获取趋势项输入数据和残差项输入数据,将所述残差项输入数据添加时序位置编码后输入所述掩码时序自注意力模块,得到掩码时序处理结果;
48.将所述掩码时序处理结果输入所述第二时序分解模块,得到第一趋势项和第一残差项;
49.获取对应层级编码器输出的目标特征提取信息,将所述目标特征提取信息与所述第一残差项共同输入所述时序交叉注意力模块;
50.在所述时序交叉注意力模块中提取所述目标特征提取信息中的有效预测特征,将所述有效预测特征融合至所述第一残差项中,得到时序交叉融合数据;
51.将所述时序交叉融合数据输入所述第二时序分解模块,得到第二趋势项和第二残差项;
52.将所述第二残差项输入所述前向传播模块,对所述解码器结构进行非线性变化处理,得到第二趋势项处理数据;
53.将所述第二趋势项处理数据输入所述第二时序分解模块,得到残差项预测值和第三趋势项;
54.将所述第一趋势项、所述第二趋势项和所述第三趋势项相加后,得到趋势项总和,将所述趋势项总和与所述趋势项输入数据进行趋势特征融合处理,得到趋势项预测值。
55.在一种实现方式中,所述交通流量预测方法还包括:
56.使用平均绝对值误差损失函数对初始时序预测模型进行训练,以及使用交叉熵损
失函数对编码器结构的图卷积模块进行训练,得到已训练的时序预测模型;所述初始时序预测模型为transformer模型。
57.本发明还提供一种交通流量预测装置,所述装置包括:
58.输入模块,用于获取当前时间段内的车流量信息,将所述车流量信息处理为输入数据后,输入预先训练的时序预测模型中;
59.提取模块,用于在所述时序预测模型的编码器结构中提取所述输入数据中的有效特征,得到层次化特征金字塔;
60.预测模块,用于根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。
61.本发明还提供一种终端,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的交通流量预测程序,所述交通流量预测程序被所述处理器执行时实现如上所述的交通流量预测方法的步骤。
62.本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序能够被执行以用于实现如上所述的交通流量预测方法的步骤。
63.本发明提供一种交通流量预测方法及装置,所述方法包括:获取当前时间段内的车流量信息,将所述车流量信息输入预先训练的时序预测模型中;在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔;根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。本发明通过在编码器结构中提取所述车流量信息的有效特征后,构建出从局部到全局的层次化特征金字塔,并利用层次化特征金字塔来进行时序生成,使得输出的下一时间段内的车流量预测信息更加准确。
附图说明
64.图1是本发明中交通流量预测方法较佳实施例的流程图。
65.图2是本发明中编码器结构的原理框图。
66.图3是本发明中编码器结构和解码器就结构的数据流向原理图。
67.图4是本发明中解码器结构的原理框图。
68.图5是本发明在pemsd3,pemsd4,pemsd8公开数据集上的验证结果。
69.图6是本发明中交通流量预测装置较佳实施例的功能原理框图。
70.图7是本发明中终端的较佳实施例的功能原理框图。
具体实施方式
71.为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
72.请参见图1,图1是本发明中交通流量预测的流程图。如图1所示,本发明实施例所述的交通流量预测包括:
73.步骤s100、获取当前时间段内的车流量信息,将所述车流量信息输入预先训练的时序预测模型中。
74.具体地,各路口设置传感器采集到车流量数据,获取车流量信息,所述车流量信息可以为某路口当前时刻前一个小时内的车流量数据。将所述车流量信息输入预先训练的时序预测模型中,可以得到该路口下一时间段的车流量预测数据。
75.如图1所示,本实施例所述的交通流量预测还包括:
76.步骤s200、在所述时序预测模型的编码器结构中提取所述输入数据中的有效特征,得到层次化特征金字塔。
77.具体地,所述时序预测模型沿用tranformer框架中的编码器-解码器结构,利用编码器结构来抽取观测值中的有效特征,并通过解码器结构来生成预测值。本发明对车流量信息进行有效特征提取,得到层次化特征金字塔,以便于解码器结构部分的预测更加准确。
78.在一种实现方式中,所述步骤s200之前还包括:
79.步骤s110、在所述时序预测模型中将所述车流量信息进行归一化处理,得到归一化数据;
80.步骤s120、利用快速傅立叶变换获取所述归一化数据中每个节点的傅立叶特征,利用线性变换方式将每个节点的傅立叶特征映射到高维度;
81.步骤s130、利用线性变换方式将所述归一化数据映射到高维度后进行时序位置编码,得到编码数据;
82.步骤s140、将所述编码数据和所述傅立叶特征之和作为编码器结构的输入数据。
83.本发明首先对车流量信息进行归一化处理,并进行快速傅立叶变换。众所周知,采集的数据中存在许多天然噪声,扰乱了原始信号。傅立叶特征可以减轻噪声对数据特征的影响,使得模型对数据特征的建模更为鲁棒。通过利用快速傅立叶变换,我们能够获得数据中每个节点的傅立叶特征,然后利用线性变化将节点的傅立叶特征映射到高维度,并将其添加到输入数据中。本发明使用一维卷积将输入维度转换到模型输入需要的维度。
84.在一种实现方式中,所述编码器结构包括多层编码器;所述步骤s200具体包括:
85.步骤s210、将所述车流量信息处理为编码器结构的输入数据后,依次经多层编码器提取所述车流量信息中的有效特征,经过每层编码器后均输出对应的特征提取信息;
86.步骤s220、根据各个所述特征提取信息得到层次化特征金字塔。
87.其中,上一层编码器输出的特征提取信息作为下一层编码器的输入数据。
88.具体地,在多层编码器中利用层次化的建模思想,不断融合时间轴的数据特征,构建出从局部到全局的层次化特征金字塔。
89.在一种实施例中,请参阅图2,每层编码器均包括:时序自注意力模块、第一时序分解模块、空间自注意力模块和图卷积模块。在每层编码器中,提取所述输入数据中有效特征的步骤包括:
90.a1、获取输入数据,将所述输入数据输入所述时序自注意力模块,提取所述输入数据中的时序特征;
91.a2、将所述时序特征输入所述第一时序分解模块,得到第一移动平均值;
92.a3、将所述第一移动平均值输入所述图卷积模块,得到静态图特征,以及,将所述第一移动平均值进行空间位置编码后输入所述空间自注意力模块,得到动态图特征;
93.a4、将所述静态图特征与所述动态图特征进行拼接,将拼接后的所述静态图特征和动态图特征进行空间特征融合处理,得到空间特征融合结果;
94.a5、将所述空间特征融合结果输入所述第一时序分解模块,得到第二移动平均值;
95.a6、对所述第二移动平均值进行时序特征融合处理,得到特征提取信息。
96.具体地,编码器设置有多层,如三层,输入数据在第一层编码器中进行处理,输入到时序自注意力模块中提取时序特征,将时序自注意力模块得到的输出输入时序分解模块中,然后将结果分别输入空间自注意力模块和图卷积模块,其中输入空间自注意力模块的部分提前添加空间位置编码。将以上两个模块得到的输出拼接到一起,利用卷积神经网络将二者进行特征融合。然后再将融合后的结果输入到时序分解模块,最后对时序特征进行融合。第一层编码器输出第一程度特征提取信息。
97.第二层编码器输入的数据是所述第一程度特征提取信息,处理步骤与第一层编码器的处理步骤相同,在第二层编码器处理完成后,输出第二程度特征提取信息;第三层编码器输入的数据是所述第二程度特征提取信息,处理步骤与第一层编码器、第二层编码器的处理步骤相同,在第三层编码器处理完成后,输出第三程度特征提取信息。
98.这样,经过编码器结构,得到了三组不同特征提取程度、不同时序融合程度的层次化特征金字塔。
99.时序预测模型的输入格式可以为节点数量、时序长度、特征维度。若直接将其输入原始的transformer模型,那么计算复杂度为o((node*time)2),本实施例通过空间自注意力和时序自注意力分离,复杂度被降低为o(time2+node2)。其中,node是指节点数量,time是指时序长度。
100.由于transformer模型对数据的时序关系不存在区分性,因此需要对输入的特征添加相应的位置编码。本发明的位置编码方式包括两种,一种是基于正弦曲线函数的位置编码,另一种是可学习的位置编码,并且针对空间注意力模块和时序注意力模块添加了不同的位置编码。
101.本发明将空间自注意力模块在节点间进行特征相似度计算,并融合相似节点特征的过程作为隐式的空间建模。作为补充,利用固定的矩阵通过图神经网络的特征传播作为显示的空间建模,并将二者得到的结果拼接到一起通过一维卷积进行特征通道融合。
102.在一种实施例中,每层编码器还包括:图结构学习模块;所述步骤a4中“将所述第一移动平均值输入所述图卷积模块,得到静态图特征”的步骤具体包括:
103.若所述第一移动平均值中存在邻接矩阵,则将所述第一移动平均值输入所述图卷积模块;
104.若所述第一移动平均值中不存在邻接矩阵,则将所述第一移动平均值输入所述图结构学习模块中构建自适应邻接矩阵,并将构建有自适应邻接矩阵的第一移动平均值输入所述图卷积模块;
105.将具有邻接矩阵的所述第一移动平均值输入所述图卷积模块后,得到邻居信息与节点自身信息,对所述邻居信息与节点自身信息的特征变换进行分离,得到邻居特征和节点特征,同时,利用门控线性单元对所述邻居特征进行约束处理;
106.将所述邻居特征和所述节点特征进行特征融合,得到静态图特征。
107.具体地,原始图卷积模型是针对邻居节点和自身节点采用相同的特征变换参数,
这是不太合理的,本发明重新设计了图卷积模型的特征提取方式,通过对邻居信息与节点自身信息的特征变换进行分离,再对邻居信息使用门控线性单元来约束重要的邻居信息特征,最后再进行特征融合的方式,对邻居特征和节点特征进行更精确的提取和融合。公式表示如下:
108.f
node
=ih
(l)w(l)node
;
[0109][0110]h(l+1)
=σ(f
node
+f
neighbor
);
[0111]
其中,所述i表示单位矩阵,所述h表示节点特征,所述w
(l)nodew(l)neighbor
表示节点卷积的参数,所述表示自适应邻接矩阵,所述σ表示激活函数,所述w
(l)neighbor
表示邻居卷积的参数,所述glu表示门控线性单元(gatedlinearunite),用于提取邻居节点的有效特征,所述l表示当前的网络层数,所述f
node
表示当前节点的特征表示,所述f
neighbor
表示邻居节点的特征表示,所述h
(l)
表示上一层图卷积网络的特征表示,所述h
(l+1)
表示当前图卷积网络输出的特征表示。
[0112]
针对无邻接矩阵的情况,本发明提出了可学习邻接矩阵的方法用于图卷积模块。依据连接关系定义的拓扑结构不足以反映节点间的相互影响关系,因此使用数据驱动的方式来学习这种关系。在高维向量中,向量的方向才是决定节点间关系的重要特征,本发明改进了自适应矩阵的计算方式,采用余弦相似度来计算节点间的关系。但是,由于softmax操作会平滑关系邻接矩阵导致最终模型的相似邻居节点权重相差不大,这损害了利用gnn进行相似特征融合的初衷。而如果采用topk方案进行掩码又存在不可导的情况,因此,本发明采用gumbel softmax函数,利用重参数技巧可以使得结果输出较为稀疏的矩阵,预测效果更好,而且能保证整个过程是可导的。
[0113]
所述图结构学习模块的公式表达为:
[0114][0115]
其中,所述e表示节点的空间嵌入参数,随机初始化获得,在训练过程中逐渐得到正确的节点空间嵌入向量。
[0116]
如图1所示,本实施例所述的交通流量预测还包括:
[0117]
步骤s300、根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。
[0118]
具体地,本发明通过利用编码器输出中从全局到局部的层次化特征金字塔来进行时序生成,使得模型输出的下一时间段内的车流量预测信息更加准确。
[0119]
在一种实现方式中,所述步骤s300具体包括:
[0120]
步骤s310、获取归一化处理后的所述车流量信息,将归一化处理后的所述车流量信息中各个车流量数据分解为观测值趋势项和观测值残差项;
[0121]
步骤s320、将各个所述观测值趋势项的平均值作为待预测值的趋势项进行填充,得到待预测趋势项,以及将待预测残差项初始化为零;
[0122]
步骤s330、将所述观测值趋势项和所述待预测趋势项进行拼接处理,得到初始趋
势项,以及将所述观测值残差项和所述待预测残差项进行拼接处理,得到初始残差项;
[0123]
步骤s340、将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。
[0124]
具体地,利用时序分解模块将归一化后的车流量信息分解为趋势项和残差项,将趋势项的平均值作为待预测值的趋势项填充,将待预测值的残差项初始化为零。即,车流量信息包括多个数据,每个数据都被分解为趋势项和残差项,称之为观测值趋势项和观测值残差项。本发明中的解码器结构通过利用编码器的输出、初始趋势项和初始残差项来预测最终的结果,能够得到更加准确的预测结果。
[0125]
在一种实施例中,所述解码器结构包括多层解码器,且每层解码器均对应有一层编码器。所述步骤s340具体包括:
[0126]
步骤s341、在所述时序预测模型中,依次经多层解码器将所述初始趋势项、所述初始残差项和所述层次化特征金字塔进行趋势预测处理,经过每层解码器后均输出对应的趋势项预测值和残差项预测值;
[0127]
步骤s342、将最后一层解码器输出的趋势项预测值和残差项预测值相加,并利用全连接层处理得到下一时间段内的车流量预测信息。
[0128]
其中,第一层解码器的趋势项输入数据为所述初始趋势项,第一层解码器的残差项输入数据为所述初始残差项;上一层解码器输出的趋势项预测值作为下一层解码器的趋势项输入数据,上一层解码器输出的残差项预测值作为下一层解码器的残差项输入数据。
[0129]
具体地,解码器也设置有多层,如三层。请参阅图3,第一层解码器的对应层级编码器是第三层编码器,第二层解码器的对应层级编码器是第二层编码器,第三层解码器的对应层级编码器是第一层编码器。每层解码器的处理过程是相同的,但是输入数据是不同的。第一层解码器的输入数据是初始趋势项和初始残差项,并且是利用的是第三层编码器输出的第三程度特征提取信息,输出数据是第一趋势项预测值和第一残差项预测值;第二层解码器的输入数据是第一趋势项预测值和第一残差项预测值,利用第二层编码器输出的第二程度特征提取信息,输出数据是第二趋势项预测值和第二残差项预测值;第三层解码器的输入数据是第二趋势项预测值和第二残差项预测值,利用第一层编码器输出的第一程度特征提取信息,得到第三趋势项预测值和第三残差项预测值,并将趋势项预测值和残差项预测值相加,利用全连接层处理得到下一时间段内的车流量预测信息。
[0130]
在一种实施例中,请参阅图4,每层解码器均包括:掩码时序自注意力模块、第二时序分解模块、时序交叉注意力模块及前向传播模块。在每层解码器中,将所述初始趋势项、所述初始残差项和所述层次化特征金字塔进行趋势预测处理的步骤包括:
[0131]
步骤b1、获取趋势项输入数据和残差项输入数据,将所述残差项输入数据添加时序位置编码后输入所述掩码时序自注意力模块,得到掩码时序处理结果;
[0132]
步骤b2、将所述掩码时序处理结果输入所述第二时序分解模块,得到第一趋势项和第一残差项;
[0133]
步骤b3、获取对应层级编码器输出的目标特征提取信息,将所述目标特征提取信息与所述第一残差项共同输入所述时序交叉注意力模块;
[0134]
步骤b4、在所述时序交叉注意力模块中提取所述目标特征提取信息中的有效预测特征,将所述有效预测特征融合至所述第一残差项中,得到时序交叉融合数据;
[0135]
步骤b5、将所述时序交叉融合数据输入所述第二时序分解模块,得到第二趋势项和第二残差项;
[0136]
步骤b6、将所述第二残差项输入所述前向传播模块,对所述解码器结构进行非线性变化处理,得到第二趋势项处理数据;
[0137]
步骤b7、将所述第二趋势项处理数据输入所述第二时序分解模块,得到残差项预测值和第三趋势项;
[0138]
步骤b8、将所述第一趋势项、所述第二趋势项和所述第三趋势项相加后,得到趋势项总和,将所述趋势项总和与所述趋势项输入数据进行趋势特征融合处理,得到趋势项预测值。
[0139]
具体地,本发明的解码器结构利用编码器的输出、待预测特征以及初始趋势项来预测最终的结果。待预测特征的组成是观测值和待预测值的残差项,将待预测值的残差项初始化为零。初始趋势项是通过拼接观测值的趋势项以及观测值的平均值组成的。解码器结构同样使用传统的时序分解算法来对生成的时间序列进行分解,最终通过合并趋势项和残差项来做出最终的预测。通过利用编码器输出中从全局到局部的层次化特征金字塔来进行时序生成,模型能够得到更精准的预测结果。除此之外,在不同的解码器层之间添加了类似门控卷积单元中的门控机制来确保待预测项的有效特征,从而提高模型性能。
[0140]
本发明只将最后一层解码器输出的趋势项预测值和残差项预测值进行相加,利用全连接层得到对未来数据的预测值。这样,在解码器结构中能够学习到从全局到局部的时序特征,从而提升最终的预测性能。
[0141]
在一种实施例中,所述交通流量预测方法还包括:使用平均绝对值误差损失函数对初始时序预测模型进行训练,以及使用交叉熵损失函数对编码器结构的图卷积模块进行训练,得到已训练的时序预测模型;所述初始时序预测模型为transformer模型。
[0142]
具体地,本发明在对模型进行训练时选择了组合的损失函数形式,首先是利用平均绝对值误差损失函数来对模型的预测结果相较真实值的偏差进行度量,从而让模型进行准确的预测。其次,对图卷积模块的特征建模结果利用交叉熵损失函数进行分类,目的是希望尽可能的对节点之间的不同特征进行区分从而减轻模型出现过平滑的问题。
[0143]
另外,在时序分解模块中,本发明利用移动平均算法得到时序特征的趋势周期项,然后用所述时序特征减去所述趋势周期项,得到残差项。通过不断拆解趋势项和残差项,让模型能够对时序中不同程度的周期序列进行建模,最终学习到更精准的数据特征。所述时序分解模块的公式表达为:
[0144]
trend=ma(x
t:t+h
);
[0145]
residual=x
t:t+h-trend;
[0146]
其中,所述x为输入数据,所述ma表示移动平均函数。
[0147]
在编码器结构的最后,利用平均池化层来融合相邻时序的特征并逐步构建出时空序列的全局特征模式,最终汇总得到层次化的时序特征金字塔。这样,解码器结构在生成待预测的目标序列时,由全局到局部的利用观测值的输入特征,从而能进行更精准的预测。
[0148]
本发明针对卷积神经网络和循环神经网络的诸多问题,采用transformer框架来进行时序训练。transformer框架是为了解决自然语言处理问题而被提出并广泛应用的。因此,该架构能够解决序列建模问题,与时空序列预测问题能很好的契合。其次,transformer
框架可以通过并行训练来进行,由此解决了训练时长和序列长度成正相关的问题。
[0149]
除此之外,在现有技术中,大多数技术必须利用提前定义好的拓扑结构来进行特征传播,但是真实的场景中经常会出现拓扑结构不完整甚至缺失的情况,拓扑结构缺失就可能会导致模型无法使用。本发明为时空序列预测重新设计了图神经网络用于空间建模的模块,利用数据驱动的可学习邻接矩阵,训练的模型能在拓扑结构缺失的情况下正常工作。并且利用分解的时空注意力机制,使得模型不仅能进行远距离建模,还极大的减小了模型的运算量。同时,本发明还通过组合损失函数来减轻图神经网络过平滑问题,来保证有效特征的提取。
[0150]
目前,模型已在pemsd3,pemsd4,pemsd8等公开数据集上进行了验证,取得了如图5的实验结果。可以看到,本发明的模型不仅取得了优异的结果,同时相较于其他模型,预测效果也取得了大幅的提升。
[0151]
在一种实施例中,如图6所示,基于上述交通流量预测方法,本发明还相应提供了一种交通流量预测装置,包括:
[0152]
输入模块100,用于获取当前时间段内的车流量信息,将所述车流量信息输入预先训练的时序预测模型中;
[0153]
提取模块200,用于在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔;
[0154]
预测模块300,用于根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项、所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。
[0155]
在一种实施例中,本发明还相应提供了一种终端,如图7所示,包括:存储器20、处理器10及存储在所述存储器20上并可在所述处理器10上运行的交通流量预测程序30,所述交通流量预测程序30被所述处理器10执行时实现如上所述的交通流量预测方法的步骤。
[0156]
本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序能够被执行以用于实现如上所述的交通流量预测方法的步骤。
[0157]
综上所述,本发明公开的一种交通流量预测方法及装置,所述方法包括:获取当前时间段内的车流量信息,将所述车流量信息输入预先训练的时序预测模型中;在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔;根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。本发明通过在编码器结构中提取所述车流量信息的有效特征后,构建出从局部到全局的层次化特征金字塔,并利用层次化特征金字塔来进行时序生成,使得输出的下一时间段内的车流量预测信息更加准确。
[0158]
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
技术特征:
1.一种交通流量预测方法,其特征在于,所述方法包括:获取当前时间段内的车流量信息,将所述车流量信息输入预先训练的时序预测模型中;在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔;根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。2.根据权利要求1所述的交通流量预测方法,其特征在于,在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔之前,还包括:在所述时序预测模型中将所述车流量信息进行归一化处理,得到归一化数据;利用快速傅立叶变换获取所述归一化数据中每个节点的傅立叶特征,利用线性变换方式将每个节点的傅立叶特征映射到高维度;利用线性变换方式将所述归一化数据映射到高维度后进行时序位置编码,得到编码数据;将所述编码数据和所述傅立叶特征之和作为编码器结构的输入数据。3.根据权利要求2所述的交通流量预测方法,其特征在于,所述编码器结构包括多层编码器;在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔,包括:将所述车流量信息处理为编码器结构的输入数据后,依次经多层编码器提取所述车流量信息中的有效特征,经过每层编码器后均输出对应的特征提取信息;根据各个所述特征提取信息得到层次化特征金字塔;其中,上一层编码器输出的特征提取信息作为下一层编码器的输入数据。4.根据权利要求3所述的交通流量预测方法,其特征在于,每层编码器均包括:时序自注意力模块、第一时序分解模块、空间自注意力模块和图卷积模块;在每层编码器中,提取所述输入数据中有效特征的步骤包括:获取输入数据,将所述输入数据输入所述时序自注意力模块,提取所述输入数据中的时序特征;将所述时序特征输入所述第一时序分解模块,得到第一移动平均值;将所述第一移动平均值输入所述图卷积模块,得到静态图特征,以及,将所述第一移动平均值进行空间位置编码后输入所述空间自注意力模块,得到动态图特征;将所述静态图特征与所述动态图特征进行拼接,将拼接后的所述静态图特征和动态图特征进行空间特征融合处理,得到空间特征融合结果;将所述空间特征融合结果输入所述第一时序分解模块,得到第二移动平均值;对所述第二移动平均值进行时序特征融合处理,得到特征提取信息。5.根据权利要求4所述的交通流量预测方法,其特征在于,每层编码器还包括:图结构学习模块;将所述第一移动平均值输入所述图卷积模块,得到静态图特征,包括:若所述第一移动平均值中存在邻接矩阵,则将所述第一移动平均值输入所述图卷积模
块;若所述第一移动平均值中不存在邻接矩阵,则将所述第一移动平均值输入所述图结构学习模块中构建自适应邻接矩阵,并将构建有自适应邻接矩阵的第一移动平均值输入所述图卷积模块;将具有邻接矩阵的所述第一移动平均值输入所述图卷积模块后,得到邻居信息与节点自身信息,对所述邻居信息与节点自身信息的特征变换进行分离,得到邻居特征和节点特征,同时,利用门控线性单元对所述邻居特征进行约束处理;将所述邻居特征和所述节点特征进行特征融合,得到静态图特征。6.根据权利要求3所述的交通流量预测方法,其特征在于,根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息,包括:获取归一化处理后的所述车流量信息,将归一化处理后的所述车流量信息中各个车流量数据分解为观测值趋势项和观测值残差项;将各个所述观测值趋势项的平均值作为待预测值的趋势项进行填充,得到待预测趋势项,以及将待预测残差项初始化为零;将所述观测值趋势项和所述待预测趋势项进行拼接处理,得到初始趋势项,以及将所述观测值残差项和所述待预测残差项进行拼接处理,得到初始残差项;将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。7.根据权利要求6所述的交通流量预测方法,其特征在于,所述解码器结构包括多层解码器,且每层解码器均对应有一层编码器;将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息,包括:在所述时序预测模型中,依次经多层解码器将所述初始趋势项、所述初始残差项和所述层次化特征金字塔进行趋势预测处理,经过每层解码器后均输出对应的趋势项预测值和残差项预测值;将最后一层解码器输出的趋势项预测值和残差项预测值相加,并利用全连接层处理得到下一时间段内的车流量预测信息;其中,第一层解码器的趋势项输入数据为所述初始趋势项,第一层解码器的残差项输入数据为所述初始残差项;上一层解码器输出的趋势项预测值作为下一层解码器的趋势项输入数据,上一层解码器输出的残差项预测值作为下一层解码器的残差项输入数据。8.根据权利要求7所述的交通流量预测方法,其特征在于,每层解码器均包括:掩码时序自注意力模块、第二时序分解模块、时序交叉注意力模块及前向传播模块;在每层解码器中,将所述初始趋势项、所述初始残差项和所述层次化特征金字塔进行趋势预测处理的步骤包括:获取趋势项输入数据和残差项输入数据,将所述残差项输入数据添加时序位置编码后输入所述掩码时序自注意力模块,得到掩码时序处理结果;将所述掩码时序处理结果输入所述第二时序分解模块,得到第一趋势项和第一残差项;
获取对应层级编码器输出的目标特征提取信息,将所述目标特征提取信息与所述第一残差项共同输入所述时序交叉注意力模块;在所述时序交叉注意力模块中提取所述目标特征提取信息中的有效预测特征,将所述有效预测特征融合至所述第一残差项中,得到时序交叉融合数据;将所述时序交叉融合数据输入所述第二时序分解模块,得到第二趋势项和第二残差项;将所述第二残差项输入所述前向传播模块,对所述解码器结构进行非线性变化处理,得到第二趋势项处理数据;将所述第二趋势项处理数据输入所述第二时序分解模块,得到残差项预测值和第三趋势项;将所述第一趋势项、所述第二趋势项和所述第三趋势项相加后,得到趋势项总和,将所述趋势项总和与所述趋势项输入数据进行趋势特征融合处理,得到趋势项预测值。9.根据权利要求1所述的交通流量预测方法,其特征在于,所述交通流量预测方法还包括:使用平均绝对值误差损失函数对初始时序预测模型进行训练,以及使用交叉熵损失函数对编码器结构的图卷积模块进行训练,得到已训练的时序预测模型;所述初始时序预测模型为transformer模型。10.一种交通流量预测装置,其特征在于,所述装置包括:输入模块,用于获取当前时间段内的车流量信息,将所述车流量信息输入预先训练的时序预测模型中;提取模块,用于在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔;预测模块,用于根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。11.一种终端,其特征在于,包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的交通流量预测程序,所述交通流量预测程序被所述处理器执行时实现如权利要求1~9任意一项所述的交通流量预测方法的步骤。12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序能够被执行以用于实现如权利要求1~9任意一项所述的交通流量预测方法的步骤。
技术总结
本发明所提供的一种交通流量预测方法及装置,所述方法包括:获取当前时间段内的车流量信息,将所述车流量信息输入预先训练的时序预测模型中;在所述时序预测模型的编码器结构中提取所述车流量信息中的有效特征,得到层次化特征金字塔;根据所述车流量信息得到初始趋势项和初始残差项,将所述初始趋势项和所述初始残差项输入所述时序预测模型的解码器结构中,并根据所述层次化特征金字塔得到下一时间段内的车流量预测信息。本发明通过在编码器结构中提取所述车流量信息的有效特征后,构建出从局部到全局的层次化特征金字塔,并利用层次化特征金字塔来进行时序生成,使得输出的下一时间段内的车流量预测信息更加准确。时间段内的车流量预测信息更加准确。时间段内的车流量预测信息更加准确。
技术研发人员:蒋沁言
受保护的技术使用者:南方科技大学
技术研发日:2023.01.16
技术公布日:2023/6/12
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
