CN112508173B - 交通时空序列多步预测方法、***及存储介质 - Google Patents
交通时空序列多步预测方法、***及存储介质 Download PDFInfo
- Publication number
- CN112508173B CN112508173B CN202011391942.9A CN202011391942A CN112508173B CN 112508173 B CN112508173 B CN 112508173B CN 202011391942 A CN202011391942 A CN 202011391942A CN 112508173 B CN112508173 B CN 112508173B
- Authority
- CN
- China
- Prior art keywords
- time
- data
- historical
- sequence
- input
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000007246 mechanism Effects 0.000 claims abstract description 38
- 230000004927 fusion Effects 0.000 claims abstract description 13
- 238000013528 artificial neural network Methods 0.000 claims description 30
- 230000015654 memory Effects 0.000 claims description 30
- 238000004364 calculation method Methods 0.000 claims description 26
- 230000006870 function Effects 0.000 claims description 19
- 230000008569 process Effects 0.000 claims description 13
- 238000007781 pre-processing Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 6
- 230000002194 synthesizing effect Effects 0.000 claims description 5
- 230000006403 short-term memory Effects 0.000 claims 1
- 238000005070 sampling Methods 0.000 abstract description 9
- 238000013527 convolutional neural network Methods 0.000 description 36
- 238000004422 calculation algorithm Methods 0.000 description 19
- 230000000694 effects Effects 0.000 description 13
- 238000012549 training Methods 0.000 description 12
- 239000013598 vector Substances 0.000 description 9
- 238000013461 design Methods 0.000 description 7
- 238000002474 experimental method Methods 0.000 description 7
- 238000010606 normalization Methods 0.000 description 7
- 238000013135 deep learning Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 238000013459 approach Methods 0.000 description 5
- 238000004458 analytical method Methods 0.000 description 4
- 230000001419 dependent effect Effects 0.000 description 4
- 238000011156 evaluation Methods 0.000 description 4
- 230000006872 improvement Effects 0.000 description 4
- 230000000306 recurrent effect Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000001143 conditioned effect Effects 0.000 description 3
- 238000010801 machine learning Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000009792 diffusion process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- YHXISWVBGDMDLQ-UHFFFAOYSA-N moclobemide Chemical compound C1=CC(Cl)=CC=C1C(=O)NCCN1CCOCC1 YHXISWVBGDMDLQ-UHFFFAOYSA-N 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 1
- 238000012935 Averaging Methods 0.000 description 1
- 241000288105 Grus Species 0.000 description 1
- 206010039203 Road traffic accident Diseases 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000012417 linear regression Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005295 random walk Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000036962 time dependent Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Abstract
本发明公开了一种交通时空序列多步预测方法、***及存储介质,基于历史数据X1:T计算改进的历史均值第二步,历史数据X1:T和改进的改进历史均值通过3D‑CNN模块进行下采样;第三步,使用序列到序列模型进行多步预测得到模型的编码器和解码器均由ConvLSTM组成,并在解码器中融入了注意力机制,进而使用转置3D卷积进行上采样;第四步,与做多模型融合,得到最终的预测结果本发明预测方法的精度更高。
Description
技术领域
本发明涉及基于3D卷积神经网络和多任务学习的时空序列预测方法,特别是一种交通时空序列多步预测方法。
背景技术
时空序列预测问题可包含交通预测、气象预测、人流预测等,本质上,这些问题是相似的,都是根据历史序列预测未来一定时间范围内的相关时空状态。
时间序列方法,尤其是类ARIMA模型,最先被应用于时空序列预测。Hamed等人(M.M.Hamed,H.R.Al-Masaeid,and Z.M.B.Said,“Short-term prediction of trafficvolume in urban arterials,”J.Transp.Eng.,vol.121,no.3,pp.249-254,1995.)提出使用ARIMA模型来预测城市主干道的交通量。以此为始,研究人员将各种ARIMA的变体(B.M.Williams,“Multivariate vehicular traffic flow prediction:evaluation ofARIMAX modeling,”Transp.Res.Rec.,vol.1776,no.1,pp.194-200,2001)应用于交通方面的预测以提高预测性能。另一方面,机器学习方法也被广泛应用于该领域,Wu等人(C.-H.Wu,J.-M.Ho,and D.-T.Lee,“Travel-time prediction with support vectorregression,”IEEE Trans.Intell.Transp.Syst.,vol.5,no.4,pp.276-281,2004.)将支持向量回归应用于行车时间预测,Zheng等人(W.Zheng,D.-H.Lee,and Q.Shi,“Short-termfreeway traffic flow prediction:Bayesian combined neural network approach,”J.Transp.Eng.,vol.132,no.2,pp.114-121,2006.)提出结合贝叶斯与神经网络的模型,对高速公路短期交通流进行预测。Kuang等人(W.Zheng,D.-H.Lee,and Q.Shi,“Short-termfreeway traffic flow prediction:Bayesian combined neural network approach,”J.Transp.Eng.,vol.132,no.2,pp.114-121,2006.)提出了一个两层模型,将代价敏感的贝叶斯网络和加权k近邻模型相结合来预测交通事故的持续时间。这些方法侧重于交通数据的时间相关性,而忽略了交通数据的空间相关性。然而,当前区域的交通状况不仅受到相邻区域的影响,还可能会受到更远区域的影响。
深度学习在各领域取得的成功也推动了其在时空序列预测上的应用。CNN已经可以有效地从图像中提取特征。因此,通过将时空序列视为图像,许多研究者自然而然地开始使用CNN来进行时空序列预测。Ma等人(X.Ma,H.Yu,Y.Wang,and Y.Wang,“Large-scaletransportation network congestion evolution prediction using deep learningtheory,”PLoS One,vol.10,no.3,p.e0119044,2015.)将城市分成许多小网格,将城市交通速度转换成图像,并使用CNN预测交通速度。Zhang等人(J.Zhang,Y.Zheng,D.Qi,R.Li,andX.Yi,“DNN-based prediction model for spatio-temporal data,”in Proceedings ofthe 24th ACM SIGSPATIAL International Conference on Advances in GeographicInformation Systems,2016,p.92.)使用CNN建模时间依赖和空间依赖预测交通流、自行车租借。随后,Zhang等人(J.Zhang,Y.Zheng,and D.Qi,“Deep spatio-temporal residualnetworks for citywide crowd flows prediction,”in Thirty-First AAAI Conferenceon Artificial Intelligence,2017.)利用残差神经网络、基于参数矩阵的融合机制和外部信息来提高预测人群流动的性能。这些研究更多地关注交通数据的空间相关性。而对于时间相关性的建模,只是简单的将CNN通过神经网络提取的特征进行融合,并没有充分利用时间相关性。
另一方面,RNN及其变体,即LSTM和GRU在序列任务中的成功使得许多研究者基于它们来预测时空序列。Zhao等人(Z.Zhao,W.Chen,X.Wu,P.C.Y.Chen,and J.Liu,“LSTMnetwork:a deep learning approach for short-term traffic forecast,”IETIntell.Transp.Syst.,vol.11,no.2,pp.68-75,2017.)提出采用级联LSTM,其中横向维度表示时域的变化,纵向维度表示不同观测点的指标,结合起点-终点的相关矩阵,获取时空相关性,用于预测交通流。Xu等人(J.Xu,R.Rahmatizadeh,L.and D.Turgut,“Real-time prediction of taxi demand using recurrent neural networks,”IEEETrans.Intell.Transp.Syst.,vol.19,no.8,pp.2572-2581,2017.)利用LSTM和混合密度网络预测纽约市出租车需求。该模型首先预测出租车需求的整体概率分布,然后利用该概率分布确定每个区域的出租车需求。这些研究更侧重于时间相关性的捕获,数据的空间相关性没有被充分利用。
为了充分利用时空相关性,许多研究者将CNN和RNN相结合来预测时空序列。Wu等人(Y.Wu and H.Tan,“Short-term traffic flow forecasting with spatial-temporalcorrelation in a hybrid deep learning framework,”arXiv Prepr.arXiv1612.01022,2016.)利用将道路作为一个向量,将其输入一维CNN获取交通流的空间相关性,然后利用两个LSTM挖掘交通流的短期变异性和周期性。Yu等人(H.Yu,Z.Wu,S.Wang,Y.Wang,and X.Ma,“Spatiotemporal recurrent convolutional networks for traffic prediction intransportation networks,”Sensors,vol.17,no.7,p.1501,2017.)提出利用深度CNN提取空间特征,再将其反馈到叠加LSTM中进行大规模交通网络流量预测。Yao等人(H.Yao etal.,“Deep multi-view spatial-temporal network for taxi demand prediction,”inThirty-Second AAAI Conference on Artificial Intelligence,2018.)认为将CNN应用于整个城市的图像会影响预测的准确性,为此,他们利用局部CNN来捕捉空间相关性,并引入了结合LSTM的语义视图来预测出租车需求。虽然这两种情况都考虑了时空相关性,但这些研究将时空相关性的相互作用分离开来。
交通时空序列的多步预测指的是根据给定的历史数据,同时预测多个未来时间戳的交通时空序列。由于只需要考虑未来一个时间戳的情况,单步预测的效果通常会优于多步预测。然而,在现实生活中,数据的收集、处理、存储和发布都需要花费一定的时间,在某些场景下,单步预测模型所需要的数据可能很难及时送达,致使单步预测模型无用武之地。例如,交通流量的预测通常服务于车辆路径规划、交警执勤地点调度、交通拥堵处理等工作,其待预测数据的时间间隔可能在10分钟以内,对时效性要求较高,但是由于从收集到发布却需要花费一定的时间,数据很可能无法及时送达到模型。此时,如果可以基于历史数据做到较为精准的多步预测,以制订好规划和预案,将使得人们的工作或出行安排更为灵活。
现有的交通时空序列预测方法更侧重于单步预测,往往不经修改直接将单步预测模型用于多步预测。如图1所示,在预测时,一些模型(L.Bai,L.Yao,S.Kanhere,X.Wang,andQ.Sheng,“Stg2seq:Spatial-temporal graph to sequence model for multi-steppassenger demand forecasting,”arXivPrepr.arXiv1905.10069,2019.及X.Zhou,Y.Shen,Y.Zhu,and L.Huang,“Predicting multi-step citywide passenger demandsusing attention-based neural networks,”in Proceedings of the Eleventh ACMInternational Conference on Web Search and Data Mining,2018,pp.736-744.)将上一时间戳的结果作为当前时间戳的输入迭代地进行多步预测(Iterative Multi-stepEstimation,IMS);一些模型(Y.Li,R.Yu,C.Shahabi,and Y.Liu,“Diffusionconvolutional recurrent neural network:Data-driven traffic forecasting,”arXivPrepr.arXiv1707.01926,2017.及X.Shi and D.-Y.Yeung,“Machine learning forspatiotemporal sequence forecasting:A survey,”arXivPrepr.arXiv1808.06865,2018.)则直接同时得到多步的预测结果(Direct Multi-step Estimation,DMS)。IMS与DMS都存在不同的问题:一方面,IMS模型没有“全局观念”,其只需要对下个时间戳的精度负责,前一步的预测准确性对后一步的预测准确性将会产生极大的影响,最终影响到整体预测精度。另一方面,DMS模型的优化目标涉及到多个未来时间戳,损失函数需要平衡多个时间戳的精度,“鞭长莫及”,难以训练。
发明内容
本发明所要解决的技术问题是,针对现有技术不足,提供一种交通时空序列多步预测方法,提高预测精度。
为解决上述技术问题,本发明所采用的技术方案是:一种交通时空序列多步预测方法,包括以下步骤:
1)获取交通时空序列历史数据,经过预处理得到X1:t=[X1,X2,X3,...,Xt-1,Xt],利用X1:t计算得到交通时刻序列历史均值H1:t,进而计算待预测时间戳t+1时刻到t+T′时刻改进的历史均值 为交通时空序列的一帧;1≤t≤T;T为时间长度;T′>1;n为数据的模态;I、J为对城市进行空间划分后形成的网格的长度和宽度;
2)将预处理后的交通时空序列历史数据X1:t输入下采样单元,利用所述下采样单元进行下采样,得到X′1:t;X′1:t=[X′1,X′2,X′3,...,X′t-1,X′t];
3)将X′1:t作为编码器的输入,得到所述编码器输出的隐藏层张量和记忆单元张量;
4)将编码器输出的隐藏层张量和记忆单元张量作为解码器的输入,得到t+1时刻到t+T′时刻的预测结果
5)对与进行加权融合,得到最终的t+1时刻到t+T′时刻的交通时空序列预测结果
相较于传统方法,本发明使用改进的历史均值极大程度地利用近期更为相关的历史数据,使用卷积长短期深刻网络同时抽取时间特征和空间特征,结合注意力机制使模型自主为历史数据分配权重,提升了预测精度。
步骤1)中,对交通时空序列历史数据进行预处理的过程包括:第一步,获取原始交通时空数据,所述原始交通时空数据包含ID、事件发生时间、事件发生地点的经度和纬度;第二步,设定经度跨度λlng和纬度跨度λlat;将城市划分为I×J个大小一致的网格,其中grid(i,j)表示第i行、第j列的网格;i<I且j<J;PA(lngA,latA)为A点坐标,即城市最西南角的坐标;PB(lngB,latB)为B点坐标,即城市最东北角的坐标;设λtime为单位时间长度,tstart为原始交通时空数据的起始时间点,tend为原始数据的最后一个时间点,根据公式将所述原始交通时空数据按时间分为T个部分;第三步,生成时空序列X1:t=[X1,X2,X3,...,Xt-1,Xt]。;其中Xt代表第t个时间段内的时空序列状况,由n×I×J个网格组成,n代表数据的模态,通过统计 内事件发生的次数确定X1:T中每个网格即grid(i,j)的值。
该步骤使得时空数据可以被卷积神经网络处理,从而高效地提取空间特征。
步骤1)中,改进的历史均值的计算过程包括:
A、由预处理后的交通时空序列历史数据X1:T计算t时刻的历史均值Ht:其中,Avg(·)为求平均;t为待预测的时间戳;λtime为交通时空序列的单位时间长度;
B、获取t-l时间戳到t时间戳历史均值序列的均值Ht-l:t,得到wh:wh=avg(∑Ht-l:t);
计算由t-l时间戳到t时间戳的历史序列的均值Xt-l:t,得到ws;ws=avg(∑Xt-l:t);
C、结合t+1时间戳到t+T′时间戳的历史均值Ht+1:t+T′,计算所述改进的历史均值
本发明使得最近时间戳的数据能在模型中更被重视。
所述编码器采用卷积长短时记忆神经网络;所述卷积长短时记忆神经网络包括包含l个输入门的编码单元;所述卷积长短时记忆神经网络对X′1:t的处理过程包括:
所述编码单元的第一输入门以X′t-l为输入,另外两个输入门的输入均未用0填充的张量,输出隐藏层张量Ht-l和记忆单元的张量Ct-l;
所述编码单元的第二输入门以X′t-(l-1)、Ht-l和Ct-l为输入,输出为隐藏层张量Ht-(l-1)和记忆单元的张量Ct-(l-1);
依此类推,所述编码单元的第l输入门以X′t-1以及第l-1输入门输出的隐藏层张量、记忆单元的张量为输入。
卷积长短时记忆神经网络可以同时抽取时间特征和空间特征,并且该编码器降低了计算量。
所述解码器包括:
注意力机制模块,以所述编码器的输出、改进的历史均值为输入,用于合成所述编码器的输出、改进的历史均值;
卷积长短时记忆神经网络模块,以所述注意力机制模块的输出为输入,抽取时空特征;
转置3D空间卷积神经网络,以对所述卷积长短时记忆神经网络模块的输出进行上采样,得到t+1时刻到t+T′时刻的预测结果
解码器为最后的预测提供了数据来源。
所述注意力机制模块合成输入数据的具体实现过程包括:
A)将张量复制为
B)将H′t-1与Ct-l+1:t-1、在通道维度上拼接为的张量;
C)由3D卷积得到Ct-l+1:t-1各部分的权重wt-2,......,wt-1与并通过softmax函数将权重和压缩为1;
D)将压缩后的权重与Ct-l+1:t、加权求Hadamard积,合成t+1时间戳卷积长短时记忆神经网络模块的输入。
该部分为历史数据分配权重,提升了预测精度。
所述卷积长短时记忆神经网络模块具体执行包括以下步骤的操作:
t时刻,以t时刻注意力机制模块的输出、编码器ConvLSTM在t-1时刻的输出Ht-1和Ct-1为输入,得到输出为X″t、Ht和Ct;
t+1时刻,以t+1时刻注意力机制模块的输出、Ht和Ct为输入,得到输出为X″t+1、Ht+1和Ct+1;
t+2时刻,以t+2时刻注意力机制模块的输出、Ht+1和Ct+1为输入,经由同一个cell处理,其输出为X″t+2。
本发明还提供了一种交通时空序列多步预测***,其包括计算机设备;所述计算机设备被配置或编程为用于执行上述方法的步骤。
本发明还提供了一种计算机存储介质,其存储有程序;所述程序被配置为用于执行上述方法的步骤。
与现有技术相比,本发明所具有的有益效果为:本发明采用3D卷积神经网络在不割裂时空关联的情况下初步提取时空特征,增强了模型的灵活性;选用了ConvLSTM作为模型的解码器和编码器,并在解码器中融入了注意力机制,将改进的历史均值作为一个基准,以解决多步预测中训练与推断模型输入不同导致的精度下降问题;使用转置3D卷积神经网络在不破坏空间结构的情况下得到预测结果,并与改进历史均值进行融合,得到最终的预测结果。相比现有技术,本发明预测方法的精度更高。
附图说明
图1为t时刻的IMS及两种DMS形式;
图2为本发明方法原理图;
图3为对BikeNYC数据集6个周二的行数据的可视化结果图;
图4为本发明实施例基于序列到序列模型的多步预测原理图;
图5为本发明采用的3D-CNN模块结构图;
图6为本发明实施例训练时解码器的4种输出数据方式;
图7为对2个周二的自行车出行数据的可视化结果图;
图8为注意力机制模块的内部结构图;
图9为Transpose 3D-CNN模块结构图;
图10为输入数据不同的时间步长对结果的影响;
图11为ConvLSTM层数对结果的影响;
图12为上采样模块通道数及层数对结果的影响;
图13为模型各变体的实验结果。
具体实施方式
由于传感器或智能终端收集的原始数据不能被深度学习算法直接处理,因此本发明实施例首先需要对原始数据进行预处理,以得到深度学习算法可以处理的网格数据。而在算法中也涉及了一些数学符号,为了方便描述,首先阐述所提出算法时需要用到的定义,这些定义参考了文献(X.Shi and D.-Y.Yeung,“Machine learning for spatiotemporalsequence forecasting:A survey,”arXivPrepr.arXiv1808.06865,2018.及J.Zhang,Y.Zheng,and D.Qi,“Deep spatio-temporal residual networks for citywide crowdflows prediction,”in Thirty-First AAAI Conference on Artificial Intelligence,2017.),进一步阐述预处理的过程。
定义1-1(空间划分)grid(i,j)。如图3所示,设左下角的A点坐标为PA(lngA,latA),右上角的B点坐标为PB(lngB,latB),将城市划分为I×J个大小一致的网格,设λlat和λlng分别表示每个网格的纬度跨度和经度跨度,其中
设grid(i,j)表示第i行、第j列的网格(i<I并且j<J),其中
定义1-2(时间划分)T。设λtime为单位时间长度,tstart为数据的起始时间点,tend为数据的最后一个时间点,那么
定义1-3(时空序列)X1:T=[X1,X2,X3,...,XT-1,XT],为长度为T的时间序列,称为时空序列的一帧,其中n为数据的模态。以表示数据的第i个模态,而中每一个grid(i,j)的值则根据任务而定。
定义1-4(外部信息)εt,表示t时间段内的外部信息,根据任务而定。
问题4-1给定纬度跨度λlat,经度跨度λlng,单位时间长度λtime、历史时空序列数据X1:t,外部信息εt,预测t+T时间戳内的时空序列数据可以表示为下式,
即在给定历史数据和外部信息的条件下,求出t+T时间戳最可能出现的交通时空序列状况
数据的预处理包括以下步骤:第一步,获取原始数据,原始数据包含ID、事件发生时间、事件发生地点的经纬度,以出租车需求数据为例,每一条数据包括:行程ID、上车时间、上车经纬度、下车时间、下车经纬度。第二步,首先根据定义1-1确定网格数据的经度跨度和纬度跨度,随后根据定义1-2确定数据的时间跨度,进而根据定义1-3生成时空序列数据X1:T;第三步,进行数据标准化操作,其作用是消除量纲,加速优化过程,使算法更容易收敛得到最优值,公式如下,
其中,x为定义1-3中的网格的值,μ和σ分别是训练集中所有x的均值和方差,x’为标准化之后的值。经过标准化后,定义1-3中时空序列X1:T所有的值的均值为0,标准差为1。
融合序列到序列模型和改进历史均值的多步预测算法
为了能够对交通时空序列数据进行多步预测,本发明提出了一种融合序列到序列模型和改进历史均值的多步预测方法。序列到序列模型框架如图2所示。第一步,基于历史数据X1:t计算改进的历史均值第二步,历史数据X1:t和改进的改进历史均值通过3D-CNN模块进行下采样;第三步,使用序列到序列模型进行多步预测得到模型的编码器和解码器均由ConvLSTM组成,并在解码器中融入了注意力机制,进而使用转置3D卷积进行上采样;第四步,与做多模型融合,得到最终的预测结果
如图3所示,本发明对BikeNYC数据集grid(6,2)区域的自行车需求量进行了可视化,其横轴为时间,纵轴为需求量,包含了该区域6个周二的数据。可以观察到,19点的自行车需求量在18点的需求量的基础上有所下降,其下降程度与后者息息相关:其中3条曲线在19点的值对应在横轴80左右,1条曲线对应的值对应在横轴50左右,而剩下两条曲线对应在横轴20左右。如果18点的预测值偏差较大,那么会为19点需求值的预测带来相当大的干扰,其它时间点之间也存在这种依赖关系。此外,在实际应用中,模型的可扩展性是一个重要的考虑因素,虽然我们在实验时固定了待预测时间戳的个数,但序列到序列模型天然的具有良好的可扩展性,可以根据需求增加输出序列的长度。
序列到序列模型被广泛应用于翻译、时间序列、语音等序列任务中,这类任务的特点是其输出序列之间存在着依赖关系,且输出序列的长度不一。在交通时空序列的多步预测中,序列的各时间戳之间也存在着依赖关系,并且需要调整输出序列的长度。结合以上分析,我们选择了序列到序列模型为本发明所提出方法的主体。
历史均值算法通过计算训练集上所有同一星期、同时刻的历史数据的平均值来得到预测结果,其计算公式如下
其中,Ht为t时刻的历史均值;Avg(·)为求平均;t为待预测的时间戳;λtime为该时空序列的单位时间长度;其目的是得到历史数据中同一星期、同一时刻的数值,例如获取数据集中所有周二的15点的数据。
历史均值算法计算开销小、效率高,借助简单地计算便可得到预测结果,是一种“一劳永逸”的算法。然而,由于训练集和测试集数据量的差距,这种“一劳永逸”也带来了“一成不变”的后果,使得该算法无法有效地捕获时空序列的变化。如图3所示,在18点时,第3个及第5个周二的需求量于另外4个周二的需求量呈明显不同的数量,由于求平均的缘故,历史均值算法很难捕获到这种异变,使其预测精度降低。具体而言,在预测时,我们根据训练集由公式(8)计算出Ht,进一步将Ht纳入公式(8)的计算范围,得到那么,在预测时,最邻近的Ht所贡献的比例仅为1/n(n为t+7*24/λtime之前所有同时刻序列的个数),这使得该预测结果更多地依赖于较远时间戳的数据,忽视了邻近时间戳的影响。
为了更好地利用邻近时间戳数据,文献(A.Roitenberg and L.Wolf,“ForecastingTraffic with a Convolutional GRU Decoder Conditioned on Adapted HistoricalData.)改进了历史均值算法,其计算公式如下:
wh=avg(∑Ht-l:t) (9)
ws=avg(∑Ht-l:t) (10)
其中,为可调整的参数,表示参与权重计算的时间戳个数;为待预测时间戳的个数。t时刻,改进历史均值的步骤描述如下:第一步,根据公式8,由历史数据X1:T计算历史均值Ht;第二步,根据公式9,求t-l时间戳到t时间戳历史均值的均值,得到wh;第三步,根据公式10,由t-l时间戳到t时间戳的历史序列的均值;第四步,根据公式11,结合t+1时间戳到t+T′时间戳的历史均值Ht+1:t+T′,计算改进的历史均值这里将l固定为1,以极大化利用邻近时间戳的影响。该算法简单且高效,通过对历史均值的缩放捕获了邻近时间戳的影响。
编码器的设计:
编码器的作用是将历史时空序列及改进历史时空序列变化为上下文向量,该向量表征了历史数据的所蕴含的信息。本方法将3D-CNN模块和ConvLSTM视为广义的编码器,下面依次介绍他们的网络结构。
事实上,时空序列数据可以直接输入到ConvLSTM中,但是这样做会带来以下问题:(1)难以选择合适的卷积核尺寸,以期用不大的计算开销充分地捕获时空依赖。序列到序列模型要求输入数据与输出数据的尺寸相同,小尺寸卷积核虽然计算开销小,但是无法捕获远距离依赖;对大卷积核而言,需要在数据***补0的数量较大,使得参数量剧增,计算速度变慢。因此,可供选择的卷积核大小十分有限,难以在计算开销与预测精度间做好平衡。(2)计算速度慢。在计算时,序列到序列模型的编码器和解码器会对同一个单元(cell)进行复用,cell在每一个时间戳要接受上一时间戳的输出以及该时间戳的输入。因此,如果固定序列的长度,那么该模型的计算时间与单个cell的计算时间成正比。单个cell的计算时间则受输入数据Xt的尺寸的影响,如果Xt的尺寸较大,cell的参数量也随之增加,最终延缓了序列到序列模型的整体计算速度。(3)无法灵活地设计序列到序列模型中的通道数。在计算机视觉任务或其它使用卷积神经网络的任务中,堆叠多个卷积层会缩小特征图的尺寸。与此同时,为了减少信息的损失,通道数量随着卷积层的深入循序渐进地增加,在交通时空序列数据预测中,我们也需要增加通道数量以减少信息损失。受限于ConvLSTM的结构,通道数量仅能调整一次,如果通道数过小,则不能充分捕获时空依赖;如果通道数过大,则缺少“循序渐进”的过程,不仅影响预测精度,也会影响计算速度。
因此,如图4所示,我们在编码器ConvLSTM前设置了3D-CNN模块,该模块对输入的时空序列数据进行下采样,通过多层卷积和通道数的增加,初步捕获历史数据的时空依赖,其输出的特征图也能减小ConvLSTM的计算量。此外,相对于2D卷积而言,3D卷积兼顾了时空序列之间的相互影响。
序列对序列模型的解码器和编码器均为ConvLSTM。由于序列内部之间存在依赖关系,需要传递信息,因此序列到序列模型的编码器或解码器通常是RNN类型的网络。RNN系列网络(RNN,GRU,LSTM)的输入数据只能是向量,而交通时空序列数据是张量,虽然可以通过flatten操作将张量拉平为向量,但是这样会使得原本南北相邻的区域不再相邻,即损失了时空数据的空间特性。ConvRNN系列是对RNN系列的改进,前者将后者的向量乘法修改为卷积操作,因而保留了数据的空间特性。相对于RNN、GRU而言,LSTM的结构更为复杂,输入门、遗忘门、输出门和记忆单元的机制使LSTM更多地使用于各类任务中引用。因此,我们选择ConvLSTM作为模型的编码器和解码器。
输入数据首先会经过3D-CNN模块,其输出为编码器ConvLSTM的输入。3D-CNN模块的具体结构如图5所示,包括卷积层、实例标准化(IN)层、激活函数。该模块的步骤可概括如下:
第一步,卷积。卷积核尺寸被设置为3×4×4,卷积的步长为1×2×2,同时在边缘补1层。卷积核大小的设计保证了计算的便捷性;卷积步长的设计增大了特征图的感受野,并对区域之间的远距离依赖进行捕获;该设计也保证了特征图的深度不变,使解码器的长度与输入数据一致,减少模型设计的复杂度。此外,第一个卷积层的输入通道数、输出通道数分别为2、64,第二个卷积层的输入通道数、输出通道数分别为64、128,以控制后续ConvLSTM的计算量。
第二步,实例标准化。相较于前人的工作,我们使用IN层替代了批量标准化(BatchNormalization,BN)层。BN层会对每个批量(batch)的所有样本做标准化,会造成某些样本的独特细节丢失,而IN更能适应对生成序列的每个网格有要求的场景引用。在交通时空序列预测中,我们希望每个网格的预测结果更精确,而IN层更能适应要求。
第三步,激活函数。本方法使用参数为0.2的LeakyReLU而非ReLU作为激活函数。
3D-CNN模块的输出为编码器ConvLSTM的输入。如图4所示,以t时刻l=3为例,此时网络的输入为Xt-2、Xt-1和Xt,三部分数据经过3D-CNN模块后的输出为X′t-3、X′t-2和X′t-1。编码器ConvLSTM的本质是对ConvLSTM单元(ConvLSTM cell)的重复使用,不论步长的数量,都只需要一个cell,这增强了模型的可扩展性。ConvLSTM cell使用2D卷积处理输入数据,卷积核尺寸为3×3并在数据***补0,保证数据尺寸不变。卷积的输入通道数为128,输出通道数为512(128*4),每128个通道的特征图分别作为cell中3个门和记忆单元的参数。该部分的步骤描述如下:
第一步,以X′t-3为输入。由于是初始状态,因此cell的另外两个输入均为用0填充的张量,以表示这是初始时间戳。这一步的输出为隐藏层张量Ht-3和记忆单元的张量Ct-3。
第二步,以X′t-2、Ht-3和Ct-3为输入,经由同一个cell处理,其输出为隐藏层张量Ht-2和记忆单元的张量Ct-2。
第三步,以X′t-1、Ht-2和Ct-2为输入,经由同一个cell处理,其输出为隐藏层张量Ht-1和记忆单元的张量Ct-1。解码器的设计
解码器包含三部分,一部分是注意力机制模块,一部分是解码器ConvLSTM,另一部分是转置3D-CNN模块。以t时刻为例,解码器的处理步骤可概括如下:第一步,注意力机制模块合成ConvLSTM的输入,即编码器ConvLSTM的输出Ht-1、Ct-2、Ct-1、Ct以及该时刻的改进历史均值该模块的输出为X′t;第二步,ConvLSTM进行预测,这一步的输入为X′t、Ct-1、Ht-1,输出为X″t、Ct和Ht;第三步,转置3D-CNN模块进行上采样得到最后预测结果,该模块的输入为X″t,输出为下面依次介绍各步骤内的详细步骤。
在网络结构上,解码器与编码器均为ConvLSTM,两者不同之处在于输入数据集。对编码器而言,每个时间戳的输入数据X′t都是已知且确定的;解码器则不然,由于是多步预测,在做推断时,t+1时刻的输入数据X′t+1恰好是需要预测的数据,因此该数据是未知且不确定的,那么作为该时间戳ConvLSTM的输入,如图6所示,有以下几种选择:(1)全0张量;(2)前一时间戳的输出;(3)Teacher Force;(4)基于注意力机制合成输入数据。
本发明使用注意力机制合成输入数据。如图7所示,我们从图3选出具有代表性的两天的数据,虚线展示的是改进的历史均值算法的预测值,紫色的虚线代表历史平均。如果ConvLSTM的输入是全0张量或前一时间戳的输出,那么下一步预测的准确性会严重依赖于上一步的准确性,鉴于模型的损失函数为绝对值误差或均方误差,模型的总是会输出更模糊(blurry)的结果,如果按照历史均值的走势,那么在18点处的预测结果将会不尽人意。相比于前两种方法,Teacher Force则是另一个极端,在训练时接收待预测数据的真实值作为输入,而在推断时接收前一时间戳的输出作为输入,训练期间与推断期间的“落差”,依然使得下一步预测的准确性会严重依赖于上一步的准确性。进一步观察图1-8,在预测A4时,前三个值(A1,A2,A3)大致呈线性关系;而在预测A5时,A3和A4与之关联程度更高,能提供更多的信息;在预测B4时,前三个值(B1,B2,B3)也呈线性关系,按照历史均值的走势,B4的值应该到达一个波峰,但真实走势却是恰恰相反的,此时,改进的历史均值B′4却提供了一个良好的参考,我们希望B′4在此时能最大程度地影响到B4的预测。因此,待预测时间戳与历史数的关系是动态的,而改进的历史均值也是一个良好的参考,我们可以使用注意力机制将历史数据与改进的历史均值来合成解码器每个时间戳的输入,最大程度的利用各部分数据。
以t时间戳为例,图8展示了l=3时注意力机制模块的具体的情况,解码器注意力机制模块的步骤可描述如下:第一步,在深度上将四维张量(批量大小、通道数,高度、宽度)复制为第二步,前述向量与Ct-l+1:t-1、在通道维度上拼接为的张量;第三步,由3D卷积得到各部分的权重wt-2,......,wt-1与并通过softmax函数将权重和压缩为1,卷积核尺寸为1×1×1,输入通道数为256,输出通道数为128;第四步,前一步得到的权重与Ct-l+1:t、加权求Hadamard积以合成t+1时间戳ConvLSTM的输入X′t。
解码器ConvLSTM的设计与编码器ConvLSTM基本相同,其本质也是对ConvLSTM单元(ConvLSTM cell)的重复使用。卷积核尺寸为3×3并在数据***补0,,卷积的输入通道数为128,输出通道数为512(128*4),每128个通道的特征图分别作为cell中3个门和记忆单元的参数。如图4所示,以l=3,T′=3为例,解码器ConvLSTM的步骤描述如下:
第一步,t时刻。以注意力机制模块的输出X′t、编码器ConvLSTM在t-1时刻的输出Ht-1和Ct-1为输入,其输出为X″t、Ht和Ct。
第二步,t+1时刻。以X′t+1、Ht和Ct为输入,经由同一个cell处理,其输出为X″t+1、Ht+1和Ct+1。
第三步,t+2时刻。以X′t+2、Ht+1和Ct+1为输入,经由同一个cell处理,其输出为X″t+2。
本发明所提出的模型的解码器时间步长为T′,即将同时对T′个时间戳地数据进行预测,而非迭代式地进行。解码器ConvLSTM的输出数据尺寸与编码器ConvLSTM输入数据尺寸一致,因此我们还需要对其进行上采样,得到最终的预测结果。为了在上采用的过程中不破坏数据的空间结构,我们在此设置了3D转置模块。结构如图9所示,卷积核尺寸为3×4×4,卷积的步长为1×2×2,同时在边缘补1层。该模块包含两个子模块,模块的输入依次为X″t,X″t+1,......,X″t+T′,每个子模块的步骤描述如下:第一步,转置卷积;第二步,实例标准化;第三步,参数为0.2的LeakyReLU激活函数。其中,第一个卷积层的输入通道数、输出通道数为128、64,第二个卷积层的输入通道数、输出通道数为64、2。该模块的输出即为预测结果利用序列到序列模型和改进历史均值进行多步预测
在统计学中,我们一般认为小于或等于0.01或0.05的概率为小概率。以BikeNYC数据集为例,自行车的需求量在0到267之间,需求量在50以上次数占比越为4.8%,需求量在90以上的次数占比约为0.92%。而这些小概率事件的发生会极大的影响评估指标均方根误差值,对这些异常值的预测是十分重要的。改进的历史均值算法虽然简洁、高效,使用邻近时刻的权重比例可以有效地预测大值,但对异常情况下的小值预测却由一定的滞后性(如图1-8的红色虚线)因而需要另一个模型来提升小值的预测效果。因此,与以往的研究不同,我们选择了平均绝对误差(Mean Absolute Error,MAE)作为序列到序列模型的损失函数。不论预测误差的大小,MAE函数的梯度处处相同,比较而言会忽视异常点,更利于小值的预测。MAE损失函数的公式如下
其中θ为参数,T′为待预测时间戳的个数,N为待预测网格的总数量,和x分别为预测值和真实值。
t时刻,序列到序列模型的输入为Xt-l:t-1,其输出为而改进的历史均值算法地输出为我们对和进行加权融合,得到最终的预测结果其计算方法如下所示。
其中×为Hadamard积;Wseq和WHA为可学习参数,其尺寸与一致,学习方法为线性回归。
实验结果和分析
本发明实验运行的本地软件环境和硬件环境如表1-1所示.
表1-1实验软件环境
评价指标
为了评价预测值与真实值之间的差异,本发明两部分实验的评价指标都是均方根误差(root mean square error,RMSE),其计算公式如下
其中,为预测值,x为真实值,Z为所有待预测值的总数量。RMSE越小则表明算法的准确性越高。
数据集介绍
由于TaxiBJ数据集的空缺率达到了4.4%,而过去的研究没有介绍对空缺值的处理,为了公平起见,我们选择了没有数据空缺的BikeNYC为本发明实施例的实验数据集。BikeNYC为公开数据集,该数据集包含了2014年4月1日至2014年9月30日纽约市自行车***的行程数据,每条数据包括:行程持续时间、起止站ID和起止时间。行程数据已通过前期处理,处理后的数据维度为4392×2×16×8的数据,时间间隔为1小时,无空缺数据。与以往的研究相同,本发明选取最后了10天的数据作为测试集,其余部分为训练集。该数据集的基本情况如表1-2所示。
表1-2BikeNYC数据集的基本情况
超参数对实验结果的影响及分析
第四章所提出的模型包含许多超参数,只有调整得到合适的参数才能达到最佳预测效果。本实验预测的时间戳数量为3,即进行3步预测。在训练时使用Adam作为优化器,学习率设置为0.001,并使用了正则化,正则化参数为0.0001,其它为默认参数。实验的batchsize为32,序列到序列模型在训练约100轮后可以在验证集上取得最佳效果,数据经过了标准化。此处主要介绍其它超参数对模型的影响。
输入数据的时间步长的影响。如图10所示,横轴为输入数据的时间步长,Seq2Seq表示序列到序列模型,Seq2Seq+AHA即为第四章所提出的融合序列对序列模型和改进历史均值的模型。输入数据的时间步长代表了输入数据量的大小,该值越大,历史信息越多,但是会减缓计算速度;该值越小,会使计算速度有所提升,但是历史信息会减少。时间步长为0时,模型退化为改进历史均值算法模型,其RMSE为5.25。我们发现时间步长并非越大越好,当步长为6时模型的效果达到最优。
ConvLSTM层数。该值代表的是堆叠的ConvLSTM的层数,每增加一层,则需要增加一个ConvLSTM cell。在前向传播时,每个cell都需要等待前一时间戳的计算结果以及上一层cell的计算结果,因此层数的增加不仅意味着参数的增加,也意味着计算时间的增加。我们将层数从1层增加到5层,随着层数的增加,Seq2Seq模型的RMSE有略微下降的趋势,但是Seq2Seq+AHA的RMSE却在节节攀升。由于我们的目标是使最终的预测结果更为精确,因此Seq2Seq模型的效果提升并不具有太大的意义,这种以时间换精度的方法在该数据集上并没有取得较好的效果。
3D-CNN上采样模块通道数及层数对结果的影响。上采样模块的输出为ConvLSTM的输入,因此调整该模块的通道数即为调整ConvLSTM卷积运算的通道数,通道数越大,进入ConvLSTM的信息越多。调整上采样模块的层数即调整3D-CNN中的卷积层数,卷积会使特征图尺寸变小。如图12所示,横轴的数字为该模块通道数量,括号内为该模块的层数。固定该模块的层数,RMSE随着通道数的增加而先增后减,不论是2层还是3层,通道数设置为128时RMSE最低。固定该模块的通道数,RMSE没有随着层数的增加而减小。该模块的作用是初步捕获数据的时空依赖,不需要设置的过于复杂。
实例正则化(IN)层的影响。标准化层通常在卷积层之后,批量标准化(BN)会基于整个batch计算数据的平均值和标准差;而IN则根据分通道计算数据的平均值和标准差进行标准化。我们将IN层替换为BN层,此时Seq2Seq模型的RMSE为5.80,Seq2Seq+AHA的结果为5.18,相比于使用IN层,RMSE有所上升。对比实验及分析
现有研究更侧重于单步预测,直接用于多步预测的模型较少,我们选参照文献(A.Roitenberg and L.Wolf,“Forecasting Traffic with a Convolutional GRUDecoder Conditioned on Adapted Historical Data.)选择以下算法作为比较对象,以证明本发明方法的有效性。
(1)历史平均(Historical Average,HA):该方法通过计算历史数据中同一天、同一时刻的平均值来得到预测结果。
(2)ConvLSTM(X.Shi,Z.Chen,and H.Wang,“Convolutional LSTM Network,”inNips,2015,pp.2-3.):该方法融合了全连接LSTM与CNN,使其可以接收张量的输入。
(3)DCRNN(X.Shi,Z.Chen,and H.Wang,“Convolutional LSTM Network,”inNips,2015,pp.2-3.):该方法使用了扩张卷积递归神经网络(diffusion ConvolutionalNeural Network,DCRNN),利用图上的双向随机游动来捕获空间依赖关系,利用定时采样的编解码器结构来捕获时间依赖关系。
(4)STG2Seq(A.Roitenberg and L.Wolf,“Forecasting Traffic withaConvolutional GRU Decoder Conditioned on Adapted Historical Data.):该方法基于图卷积神经网络建立了对长期编码器、短期编码器及基于注意力机制的输出模块,对动态的时空信息进行建模。
表1-3与不同预测方法的对比
表1-3展示了不同方法之间的对比结果,除本发明所提出的模型外的其它模型的实验结果均来自于文献(L.Bai,L.Yao,S.Kanhere,X.Wang,and Q.Sheng,“Stg2seq:Spatial-temporal graph to sequence model for multi-step passenger demandforecasting,”arXiv Prepr.arXiv1905.10069,2019.)。历史均值算法虽然计算开销小,但其效果却不尽人意。本发明所提出的方法是基于ConvLSTM改进的,在编码器前加入了3D-CNN上采用模块,在编码器部分加入了注意力机制以及转置3D-CNN模块,并进行了模型融合,这些改进使得本发明所提出的方法将RMSE降低了14.14%。DCRNN与STG2Seq都是以图卷积神经网络为基础的序列到序列模型,本发明所提出的模型与之比较分别使RMSE降低了20.62%及6.18%。这些结果证明了本发明所提出模型的有效性。
为了验证本发明模型各组件的有效性、验证模型融合的有效性以及验证使用均方误差损失函数的有效性,我们将所提出模型的组件进行拆分或替换,得到不同的变体,以供比较。下面按照数据在模型中流入和流出的方向,依次介绍各个变体:
(1)3D卷积替换为2D卷积(without-3D):在该变体中,我们将3D-CNN模块和转置3D-CNN模块中的3D卷积替换为2D卷积,此时输入数据需要逐个经过2D卷积进入ConvLSTM中,输出数据则需要逐个经过转置2D卷积得到预测结果。由于2D卷积的参数量比3D卷积少,因此该变体的参数量更少、计算速度更快。
(2)使用ConvGRU替换ConvLSTM(with-ConvGRU):我们在该变体中使用ConvGRU替换ConvLSTM,前者将后者的遗忘门、输入门、输出门替换为更新们、重置门,因而ConvGRU的参数量较后者有所降低,使得模型的计算速度也有所加快。
(3)去掉注意力机制模块(without-Attn):在该变体中,我们去掉了注意力机制模块,解码器的ConvLSTM cell接收上一个时间戳cell的输出作为输入。该变体参数量更少、计算速度更快。
(4)在注意力机制模块中不加入改进的历史均值(without-AttnAHA):在该变体中,注意力机制模块将仅基于编码器ConvLSTM的输出合成解码器的输入,舍弃了改进的历史均值。
(5)转置3D模块替换为全连接神经网络(with-FC):转置3D-CNN模块的作用是将ConvLSTM的输出恢复为输入数据的大小,而全连接神经网络也能起到该作用,不同之处在于:转置3D卷积的输入数据是张量,而FC的输入数据是向量。
(6)改进的历史平均(Adapted Historical Average,AHA):该方法首先计算历史平均值(HA),随后计算历史均值与历史数据的比值,并对历史均值进行加权。不与序列对序列模型进行模型融合。
(7)不进行模型融合(without-AHA):我们在该变体中仅使用序列对序列模型得到最终预测结果,AHA仅在注意力机制模块中融入,而不参与最终的模型融合。
(8)以MSE为损失函数进行训练(with-MSE):该变体以MSE为损失函数进行训练。
实验结果展示如图13所示。将3D卷积替换为2D卷积后,RMSE上升了1.93%,3D卷积在不割裂时空关联的情况下捕获时空依赖,因此取得了更好的效果。GRU的网络结构更为简单,但一直未能取代LSTM在时序预测中的地位,本实验中,以ConvGRU为编码器、解码器的变体使RMSE上升了1.36%,证明了选择ConvLSTM作为编码器、解码器的有效性。注意力机制模仿了人类的观察和思考机制,在交通时空序列预测中则用于分配历史数据各部分的权重,注意力机制模块的加入使预测效果提升了1.36%,而倘若移除注意力机制模块的改进历史均值部分,RMSE会上升0.02。FC破坏了数据的空间结果,以FC替换转置3D-CNN模块使RMSE上升了0.78%。我们的的模型融合了改进历史均值和序列对序列模型,较之融合前,RMSE分别降低了3.05%和5.39%,证明了模型融合的有效性。最后,用MAE作为损失函数使RMSE降低了1.17%,证明MAE的鲁棒性更强,不容易受异常值的干扰。
Claims (6)
1.一种交通时空序列多步预测方法,其特征在于,包括以下步骤:
1)获取交通时空序列历史数据,经过预处理得到X1:t=[X1,X2,X3,…,Xt-1,Xt],利用X1:t计算得到交通时刻序列历史均值H1:t,进而计算待预测时间戳t+1时刻到t+T′时刻改进的历史均值 为交通时空序列的一帧;1≤t≤T;T为时间长度;T′>1;n为数据的模态;I、J为对城市进行空间划分后形成的网格的长度和宽度;T′为时间步长;
2)将预处理后的交通时空序列历史数据X1:t输入下采样单元,利用所述下采样单元进行下采样,得到X′1:t;X′1:t=[X′1,X′2,X′3,…,X′t-1,X′t];
3)将X′1:t作为编码器的输入,得到所述编码器输出的隐藏层张量和记忆单元张量;
4)将改进的历史均值编码器输出的隐藏层张量和记忆单元张量作为解码器的输入,得到t+1时刻到t+T′时刻的预测结果
5)对预测结果与改进的历史均值进行加权融合,得到最终的t+1时刻到t+T′时刻的交通时空序列预测结果
步骤1)中,改进的历史均值的计算过程包括:
A、由预处理后的交通时空序列历史数据X1:t计算t时刻的历史均值Ht;其中,Avg(·)为求平均;t为待预测的时间戳;λtime为交通时空序列的单位时间长度;
B、获取t-l时间戳到t时间戳历史均值序列的均值Ht-l:t,得到wh;wh=avg(∑Ht-l:t);l表示参与权重计算的时间戳个数;
计算由t-l时间戳到t时间戳的历史序列的均值Xt-l:t,得到ws;ws=avg(∑Xt-l:t);
C、结合t+1时间戳到t+T′时间戳的历史均值Ht+1:t+T′,计算所述改进的历史均值
所述解码器包括:
注意力机制模块,以所述编码器的t-1时刻的输出和t时刻改进的历史均值为输入,用于合成所述编码器t+1时间戳的输出;
卷积长短时记忆神经网络模块,以所述注意力机制模块的输出为输入,抽取时空特征;
转置3D空间卷积神经网络,以对所述卷积长短时记忆神经网络模块的输出进行上采样,得到t+1时刻到t+T′时刻的预测结果
所述注意力机制模块合成输入数据的具体实现过程包括:
A)将张量复制为b、c、h、w分别为批量大小、通道数、高度、宽度;
B)将H′t-1与Ct-l+1:t-1、改进的历史均值在通道维度上拼接为的张量;
C)由3D卷积得到Ct-l+1:t各部分的权重wt-2,……,wt-1与并通过softmax函数将权重和压缩为1;
D)将压缩后的权重与Ct-l+1:t、改进的历史均值加权求Hadamard积,合成t+1时间戳卷积长短时记忆神经网络模块的输入。
2.根据权利要求1所述的交通时空序列多步预测方法,其特征在于,步骤1)中,对交通时空序列历史数据进行预处理的过程包括:第一步,获取原始交通时空数据,所述原始交通时空数据包含ID、事件发生时间、事件发生地点的经度和纬度;第二步,设定经度跨度λlng和纬度跨度λlat;将城市划分为I×J个大小一致的网格,其中grid(i,j)表示第i行、第j列的网格;i<I且j<J;PA(lngA,latA)为A点坐标,即城市最西南角的坐标;PB(lngB,latB)为B点坐标,即城市最东北角的坐标;设λtime为单位时间长度,tstart为原始交通时空数据的起始时间点,tend为原始数据的最后一个时间点,根据公式将所述原始交通时空数据按时间分为T个部分;第三步,生成时空序列X1:t=[X1,X2,X3,…,Xt-1,Xt];其中Xt代表第t个时间段内的时空序列状况,由n×I×J个网格组成,n代表数据的模态,通过统计 内事件发生的次数确定X1:t中每个网格即grid(i,j)的值。
3.根据权利要求1所述的交通时空序列多步预测方法,其特征在于,所述编码器采用卷积长短时记忆神经网络;所述卷积长短时记忆神经网络包括包含l′个输入门的编码单元;所述卷积长短时记忆神经网络对X′1:t的处理过程包括:
所述编码单元的第一输入门以X′t-l为输入,另外两个输入门的输入均为用0填充的张量,输出隐藏层张量Ht-l和记忆单元的张量Ct-l;
所述编码单元的第二输入门以X′t-(l-1)、Ht-l和Ct-l为输入,输出为隐藏层张量Ht-(l-1)和记忆单元的张量Ct-(l-1);
依此类推,所述编码单元的第l′输入门以X′t-1以及第l′-1输入门输出的隐藏层张量、记忆单元的张量为输入。
4.根据权利要求1所述的交通时空序列多步预测方法,其特征在于,所述卷积长短时记忆神经网络模块具体执行包括以下步骤的操作:
t时刻,以t时刻注意力机制模块的输出、编码器ConvLSTM在t-1时刻的输出Ht-1和Ct-1为输入,得到输出为X″t、Ht和Ct;
t+1时刻,以t+1时刻注意力机制模块的输出、Ht和Ct为输入,得到输出为X″t+1、Ht+1和Ct+1;
t+2时刻,以t+2时刻注意力机制模块的输出、Ht+1和Ct+1为输入,经由同一个cell处理,其输出为X″t+2。
5.一种交通时空序列多步预测***,其特征在于,包括计算机设备;所述计算机设备被配置或编程为用于执行权利要求1~4之一所述方法的步骤。
6.一种计算机存储介质,其特征在于,其存储有程序;所述程序被配置为用于执行权利要求1~4之一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011391942.9A CN112508173B (zh) | 2020-12-02 | 交通时空序列多步预测方法、***及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011391942.9A CN112508173B (zh) | 2020-12-02 | 交通时空序列多步预测方法、***及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112508173A CN112508173A (zh) | 2021-03-16 |
CN112508173B true CN112508173B (zh) | 2024-06-28 |
Family
ID=
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108182260A (zh) * | 2018-01-03 | 2018-06-19 | 华南理工大学 | 一种基于语义选择的多变量时间序列分类方法 |
CN110533173A (zh) * | 2019-09-03 | 2019-12-03 | 河南工业大学 | 一种基于多级注意力网络的仓储粮堆温度预测方法及装置 |
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108182260A (zh) * | 2018-01-03 | 2018-06-19 | 华南理工大学 | 一种基于语义选择的多变量时间序列分类方法 |
CN110533173A (zh) * | 2019-09-03 | 2019-12-03 | 河南工业大学 | 一种基于多级注意力网络的仓储粮堆温度预测方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | DeepSD: Supply-demand prediction for online car-hailing services using deep neural networks | |
Liu et al. | Dynamic spatial-temporal representation learning for traffic flow prediction | |
Wu et al. | A hybrid deep learning based traffic flow prediction method and its understanding | |
Chen et al. | A novel fuzzy deep-learning approach to traffic flow prediction with uncertain spatial–temporal data features | |
Zang et al. | Long-term traffic speed prediction based on multiscale spatio-temporal feature learning network | |
Wang et al. | DeepSTCL: A deep spatio-temporal ConvLSTM for travel demand prediction | |
Zhou et al. | A spatiotemporal attention mechanism-based model for multi-step citywide passenger demand prediction | |
Mingheng et al. | Accurate multisteps traffic flow prediction based on SVM | |
Saxena et al. | D-GAN: Deep generative adversarial nets for spatio-temporal prediction | |
Zhang et al. | A Traffic Prediction Method of Bicycle-sharing based on Long and Short term Memory Network. | |
Esquivel et al. | Spatio-temporal prediction of Baltimore crime events using CLSTM neural networks | |
Zheng et al. | Hybrid deep learning models for traffic prediction in large-scale road networks | |
CN116128122A (zh) | 一种考虑突发因素的城市轨道交通短时客流预测方法 | |
Ip et al. | Vehicle trajectory prediction based on LSTM recurrent neural networks | |
Modi et al. | Multistep traffic speed prediction: A deep learning based approach using latent space mapping considering spatio-temporal dependencies | |
CN112559585A (zh) | 交通时空序列单步预测方法、***及存储介质 | |
Rajeh et al. | Modeling multi-regional temporal correlation with gated recurrent unit and multiple linear regression for urban traffic flow prediction | |
Bansal et al. | Htfm: Hybrid traffic-flow forecasting model for intelligent vehicular ad hoc networks | |
Prado-Rujas et al. | Combining heterogeneous data sources for spatio-temporal mobility demand forecasting | |
Tang et al. | Short-term travel speed prediction for urban expressways: Hybrid convolutional neural network models | |
Zheng et al. | An ensemble model for short-term traffic prediction in smart city transportation system | |
Wang et al. | TYRE: A dynamic graph model for traffic prediction | |
Li et al. | Cycle-based signal timing with traffic flow prediction for dynamic environment | |
Fiorini et al. | 3d-clost: a cnn-lstm approach for mobility dynamics prediction in smart cities | |
Liu et al. | Dynamic traffic flow prediction based on long-short term memory framework with feature organization |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |