APP下载

基于深度学习的短时交通流预测研究

2018-03-01王祥雪许伦辉

交通运输系统工程与信息 2018年1期
关键词:交通流门限路段

王祥雪,许伦辉

(华南理工大学 土木与交通学院,广州510640)

0 引言

短时交通流预测是近年来交通工程领域的研究热点,主要可分为模型驱动和数据驱动两类.前者通过建立交通流各参数的数学模型,对交通运行状态的复杂变化进行描述,在此基础上实现交通状态预测.例如基于统计特性的历史趋势[1]、非参数回归[2]及卡尔曼滤波等[3].后者也称为机器学习方法,主要是通过智能计算挖掘历史数据隐含的信息,实现交通流状态的迭代估计.神经网络作为主要的机器学习算法,在交通流预测领域也大受关注.Quek等[4]利用模糊逻辑神经网络实现短时交通流预测.李松等[5]利用改进粒子群算法对BP神经网络的参数训练进行优化.Chan[6]应用小波理论建立的神经网络模型,相比传统的BP神经网络获得更好的预测效果.Fusco[7]将具体的贝叶斯网络与人工神经网络进行融合建模,并利用浮动车大样本数据进行验证.随着计算能力的大幅提升,日渐丰富的交通数据使得基于时间序列的交通流预测焕发出新的生机,大量学者从多元时间序列联合预测[8]、量化时间序列噪声的随机性[9]、分析不同观测时间尺度的时间序列构成[10]等多个角度提出自己的研究成果.

城市道路交通系统是一个典型的复杂系统,城市规模、出行方式、通勤高峰与否、天气状况、节假日等因素以非线性方式相互关联作用,导致以模型驱动的研究方法在实际应用中往往出现失效或者不作为的情况,深度学习在交通大数据挖掘方面体现出越来越强大的应用价值.近两年来,深度学习平台TensorFlow等的兴起极大地改善了神经网络构建的可操作性.深度神经网络在图像信息识别、自然语言处理等方面取得了较大的进展,但是以交通流时间序列为研究对象的深度神经网络研究在国内才刚涉入.已有的研究要么对训练样本量有较高要求,在实际的数据环境中往往难以实现;要么一味地追求神经网络精度,造成模型过深,训练时间过长,大大降低了研究的现实意义.

本文将基于深度学习的理论框架,以Python语言和TensorFlow为开发平台,实现基于LSTM单元的递归神经网络多时间梯度交通流预测模型,根据交通流的时空相关性实现时间序列的重构和标准化处理,减小模型的样本依赖性,利用实测数据完成模型的验证和分析,并实现预测模型的本地化存储,同时能根据预测精度进行自适应更新,使得交通流预测在保证精度和时效性的前提下获得更好的实用性和扩展性.

1 基于LSTM的递归神经网络模型

区别于传统的前馈神经网络,RNN中具有的信号反馈结构,使得网络在k时刻的输出状态与k时刻以前的历史信号关联,从而表现出一定的动态特性和记忆能力.近年来,RNN在语音识别、语言建模等问题上取得了显著的成功[11-13],关键在于RNN的链式结构中引入了LSTM单元,利用不同的门限控制,加强网络的记忆能力,从而解决了梯度消失的问题[14].

将RNN的反馈结构展开,如图1所示,可以发现其类似于具有多层相同网络的神经网络,其中x为输入,h代表神经元的权值,tanh代表激活函数.基于LSTM的RNN(LSTM-RNN)在这种链状结构的基础上,对重复模块内部结构进行改进,如图2所示,最突出的特点是利用了3个sigmoid神经网络层和逐点乘法运算构成的门限,加强了对通过信息的控制能力.其中,遗忘门限层ft决定哪些信息需要从上一时刻的单元状态中抛弃;输入门限层it决定需要更新的单元状态;输出门限层ot将在单元状态的基础上进行过滤输出,各个门限层的更新如式(1)所示.其中,Wf、bf、Wi、bi、Wo、bo分别是各门限层的权值和偏移量,σ代表sigmoid激活函数.

图1 RNN展开结构图Fig.1 RNN expanded structure view

图2 基于LSTM的RNN结构展开图Fig.2 RNN based on LSTM expanded structure view

更新上述门限,其中Ct代表RNN单元的状态,从LSTM单元状态得到C͂t,再利用输入门限和遗忘门限将C͂t和Ct-1综合更新到Ct中,如式(2)所示,同样的WC、bC为权值和偏移量,此处仍然采用tanh作为激活函数.本层神经网络的输出权值ht由输出门限控制,将激活后的单元状态,如式(2)所示,输出到下一层神经网络和下一个链式单元,如式(3)所示.上述中sigmoid激活函数的表达式如(4)所示,可以将实数域光滑地映射到[0,1]空间,函数值代表属于正类的概率.tanh函数的表达式如式(5)所示,不同于sigmoid,它可以将实数域映射到[-1,1]的范围里,并且输入为0时,输出也为0.

综上所述,LSTM-RNN利用门限层,控制RNN模型的记忆能力,在神经网络的训练阶段,从历史数据中学习到各个门限层的权值和偏移量,对历史状态的特征进行识别和记忆.在实时预测阶段,基于已训练好的模型对输入数据进行运算就可以得到时间序列的预测值.

2 交通流时间序列预测框架

2.1 交通流时间序列重构

城市快速路往往里程较长,跨接不同的行政区域,交通需求可能存在较大差异,使得交通流状态在空间上存在分布不均的现象,因而通常的做法是先将快速路分接成多个毗邻的路段,再针对每个路段分别实施预测.考虑到交通流的运行和组织特性,如式(6)所示,i是路段编号,N是样本中的路段个数.取下游路段t时刻及之前共m+1个时刻的状态,和自身路段t时刻及之前n+1个交通流状态共同构成的输入状态.m和n的取值在训练阶段根据路段结构特点及算法表现确定,例如路段长度较长时,下游的状态对上游影响较弱,m可以适当减小,当训练精度达到要求时,可以适当减小n,减小计算耗时.由此一来,经过训练的模型能够更真实精确地描述交通流在时空上的分布状态,并反映在预测结果中.

2.2 时间序列处理

时间序列是计量经济学的重要研究对象,经典计量理论要求模型的干扰项满足极限法则(大数定律和中心极限定律).然而时间序列数据的时间序列性破坏了随机样本的设定,此时建立的计量模型是不可靠的,但是,如果时间序列满足平稳性要求,则可以替代随机抽样的假定,使得模型的随机扰动满足极限法则,此时进行的参数估计和统计推断才是正确的,即平稳的时间序列数据约等于随机抽样数据[15].平稳性定义为时间序列的均值和标准差不随时间变化而变化,并且序列的所有阶统计量都维持不变.时间序列的非平稳性体现在来源于外界环境或刺激带来的单调的、周期性的或是阶梯状的分布趋势.在数据处理阶段必须对时间序列的平稳性进行检测,对于非平稳的时间序列应该进行平稳化处理.标准化是指将数据按照比例进行缩放,使之落入一个相对小的特定区间,去除数据的单位限制,将其转化为无量纲的纯数值.数据标准化不仅可以提高寻找最优解的速度,还可以提高模型训练的精度,消除范围较大的特征值所带来的影响.

为了确保所提模型的可靠性和高效性,对于重构后的时间序列X(t),首先采用一阶差分完成时间序列的平稳化处理得到X′(t),然后,根据式(7)将差分后的时间序列规整到[-1,1]的范围,得到序列

2.3 时间序列预测框架

综合上述分析,提出时间序列的交通流预测框架如图3所示.输入重构的时间序列,进行LSTM-RNN模型训练,确定RNN和LSTM单元中的参数最优组合.实验中发现,对于同一分布特性的时间序列,不同的激活函数效果有所差异,因而在训练阶段必须根据预测效果不断调整.因为平稳化处理后的时间序列有正有负,因此选择tanh作为激活函数,为了与其输出值域保持一致,将时间序列按比例缩小到[-1,1]之间以便获得最佳的预测效果.图3中,Epoch是样本被轮巡计算的次数,Batchsize是指为了获得稳定精确的梯度下降而设置的最优样本批量.

3 实测数据样本简介

3.1 样本简介

本文选取深圳市南海大道2016年12月1日由北向南共9个路段的速度时间序列作为数据样本.该数据是融合了固定检测装置、出租车系统、公交系统及百度地图等多源大数据的集合,是对实际交通流状态的准确反映和刻画.样本采集间隔为5 min,共计288×9个数据点.

3.2 样本分析

以2016年12月1日(星期三)南海大道与北环大道路口下游的路段交通流速度为例,数据样本分布如图4所示,显然,交通流速度在早晚高峰时段有明显的下降,继而回升,阶梯状的分布趋势不符合平稳性约束,必须进行平稳化处理.同时,为了更好地满足LSTM-RNN的训练要求,将差分后的数据按比例缩小到[-1,1]的范围.

图3 LSTM-RNN交通流预测框架Fig.3 Traffic flow prediction framework based on LSTM-RNN

图4 速度时间序列Fig.4 Speed time series

4 LSTM-RNN模型训练及预测

4.1 LSTM-RNN模型训练

TensorFlow是Google开源的第二代用于数字计算的软件库,基于数据流图的处理框架,实现数据的运算和交互.在上述LSTM-RNN交通流预测框架的指导下,本文选择TensorFlow中的Keras高层神经网络API,在Python开发环境中完成模型搭建和训练.其间,对比了不同深度和结构的模型(表1)的误差水平,如图5所示,可见,当模型深度达到4层时,训练和测试效果均达到最优值,随后模型深度增加,误差略微增大.

图5 不同深度模型的RMSEFig.5 RMSEs of LSTM-RNN in different depths

综上,采用图6所示的4层LSTM-RNN模型,各层输入输出维度及其他参数见图中.DropOut层设定随机断开20%的神经元,Dense为全连接层.优化器为“Nadam”,激活函数为“tanh”,损失函数为MSE.实验发现,随着Epoch的增加,训练时长增加,模型的训练误差会随之降低,但是Epoch增大到一定程度,则可能出现过拟合现象.对于比较小的数据集,Batchsize可以采用全数据集的形式,因为全数据集确定的方向能够更好的代表样本总体,从而更准确地朝向极值所在的方向下降.相反的,Batchsize等于1时(在线学习模式),每次修正的梯度方向都会发生变化,有可能横冲直撞,难以收敛.因此,这2个参数的选择应该首先针对样本集的大小确定一个大致的范围,再经过仔细调节,寻找到合适的值,达到兼顾精度和时效性的要求.完成训练并达到精度要求的模型,其结构和内部参数会集成并固化为一个model对象,可以保存成本地文件,在预测阶段,读取该文件能够获取模型的全部信息,输入处理后的测试样本即可完成预测.

图6 LSTM-RNN交通流时间序列预测模型Fig.6 Traffic flow time series prediction model based on LSTM-RNN

各个路段的LSTM-RNN训练时间如表2所示,其中路段3和7长度较短,且属于和其他道路连接处,故重构后的时间序列较为复杂,训练时间相对较长,其他各路段的训练时间分布比较均匀,平均值约16.60 s,相比文献[16]训练时间缩小了两个量级,完全可以达到时效要求.

表2 LSTM-RNN训练时间统计Table 2 Training time statistics of LSTM-RNN

4.2 预测结果及分析

基于训练好的LSTM-RNN模型,对所选数据样本完成多步实时预测.当训练样本占样本总量(288)的50%时,图7分别为路段1和路段4的一步预测(5 min)结果和误差分布.显然,LSTM-RNN模型可以实现完全跟踪交通流的变化趋势.不过,当交通流出现突变时(左图),预测误差可能会出现较大幅度的波动,例如速度突升时误差较大,预测精确度有待改善.但是,当时间序列变化较为平稳时,如右图所示,时间序列的预测误差在3 km/h以内,相比文献[17]有很大提升.

图7 预测结果及误差分布Fig.7 Prediction result and error distribution

采用平均绝对误差(MAE)和均方根误差(RMSE)对作为评价指标,路段4的预测结果评价如表3所示,对比BP和RNN模型,预测精度得到了大幅改进.9个路段的评价结果如表4所示,多次试验发现,在模型训练阶段根据路段结构特点重构了输入时空序列后,LSTM-RNN的预测精度将与路段的物理结构的相关性降低,预测精度均能达到较高水平.

表3 预测结果对比Table 3 Comparison of prediction results

表4 全部路段预测结果评价Table 4 Evaluation of all road segments prediction

增加预测步长,路段2的预测结果如图8所示,可见,5 min的预测结果最准确,10 min和15 min的预测结果偏大,精度也依次递减,如表5所示.同样,在数据剧烈变化时刻,预测误差增大,而平稳变化时段,误差较小.

图8 多步预测结果及误差对比Fig.8 Comparison of prediction results and error

表5 不同步长预测误差对比Table 5 Comparison of the error of different step size

另外,当训练样本占比逐步提高时,如表6所示,由于少数突变点的误差减小,MAE的数值略有下降,而RMSE几乎保持不变,说明误差分布较为稳定.实验证明LSTM-RNN相比文献[5]受训练样本的限制大幅降低,在样本较少时仍然能挖掘时间序列的数据特征,获得较高的预测精度.究其原因在于2点:其一,交通流时间序列的标准化和平稳化为模型训练提供了高质量的数据,例如平稳化使得训练样本符合中心极限定理的约束,而标准化将训练样本规整到[-1,1]的范围,更好地发挥了tanh函数的激活作用;其二,重构后的时间序列能根据路段实际情况在最小的序列长度内展现最大的时空关联信息,提高了数据挖掘的效率,有效缓解了RNN的梯度消失问题.

表6 不同训练样本占比时的预测结果评价Table 6 Evaluation of prediction with different train sample proportion

5 结论

本文在深度学习的理论框架下,基于LSTMRNN算法,根据交通流时空关联性完成时间序列重构和标准化处理,建立交通流时间序列分析及预测框架,借助Keras完成LSTM-RNN的逐层构建和精细化调参,实现了基于LSTM-RNN的短时交通流的精确预测.本文所提方法利用Python语言,从数据处理和时间序列重构入手,均衡了神经网络深度和模型的性能表现,降低样本量依赖性,大幅减少训练时间,并根据实时预测精度自适应更新训练模型,实用性和扩展性均得到增强.随着深度学习理论和应用的不断发展,大数据环境下的交通流时间序列数据挖掘和分析是本文下一步的重点研究方向.

[1]WILLIAMS B M,HOEL L A.Modeling and forecasting vehicular traffic flow as a seasonal ARIMA process:Theoretical basis and empirical results[J].Journal of Transportation Engineering,2003,129(6):664-672.

[2]CLARK S.Traffic prediction using multivariate nonparametric regression[J].Journal of Transportation Engineering,2003,129(2):161-168.

[3]ZHANG L,MA Y,SHI L.A hybrid traffic flow model for real time freeway traffic simulation[J].KSCE Journal of Civil Engineering,2014,18(4):1160-1164.

[4]QUEK C,PASQUIER M,LIM B B S.POP-TRAFFIC:a novel fuzzy neural approach to road traffic analysis and prediction[J].IEEE Transactions on Intelligent Transportation Systems,2006,7(2):133-146.

[5]李松,刘力军,翟曼.改进粒子群算法优化BP神经网络的短时交通流预测[J].系统工程理论与实践,2012,32(9):2045-2049.[LI S,LIU L J,ZHAI M.Prediction for short-term traffic flow based on modified PSO optimized BP neural network[J].Systems Engineering-Theory&Practice,2012,32(9):2045-2049.]

[6]CHAN K Y,DILLON T S,SINGH J,et al.Neural net work-based models for short-term traffic flow forecasting using a hybrid exponential smoothing and levenberg-marquardt algorithm[J].IEEE Transactions on Intelligent Transportation Systems,2012,13(2):644-654.

[7]FUSCO G,COLOMBARONI C,COMELLI L,et al.Short-term traffic predictions on large urban traffic networks:Applications of network-based machine learning models and dynamic traffic assignment models[C]//Modelsand TechnologiesforIntelligent Transportation Systems(MT-ITS),2015 International Conference on.IEEE,2015:93-101.

[8]YIN Y,SHANG P.Forecasting traffic time series with multivariate predicting method[J].Applied Mathematics&Computation,2016(291):266-278.

[9]YANG Z,LIU Y,ZHU X,et al.Removing forecasting errors with white gaussian noise after square root transformation[J].Journal of Forecasting,2016,35(8):741-750.

[10]YUAN P C,LIN X X.How long will the traffic flow time series keep efficacious to forecast the future?[J].Physica A:Statistical Mechanics&Its Applications,2017(467):419-431.

[11]张亮,黄曙光,石昭祥,等.基于LSTM型RNN的CAPTCHA识别方法[J].模式识别与人工智能,2011,24(1):40-47.[ZHANG L,HUANG S G,SHI Z X,et al.CAPTCHA recognition method based on RNN of LSTM[J].Pattern Recognition&Artificial Intelligence,2011,24(1):40-47.]

[12]LAI J,CHEN B,TAN T,et al.Phone-aware LSTMRNN for voice conversion[C]//Signal Processing(ICSP),2016 IEEE 13th International Conference on.IEEE,2016:177-182.

[13]LI D,QIAN J.Text sentiment analysis based on long short-term memory[C]//IEEE International Conference on Computer Communication and the Internet.IEEE,2016:471-475.

[14]GRAVES A.Supervised sequence labelling with recurrent neural networks[M].Springer Berlin Heidelberg,2012.

[15]史文彬.时间序列的相关性及信息熵分析[D].北京:北京交通大学,2016.[SHI W B.Analysis of correlation of time series and information entropy[D].Beijing:Beijing Jiaotong University,2016.]

[16]YU H,WU Z,WANG S,et al.Spatiotemporal recurrent convolutional networks for traffic prediction in transportation networks[J].Sensors,2017,17(7).

[17]MA X,TAO Z,WANG Y,et al.Long short-term memory neural network for traffic speed prediction using remote microwave sensor data[J].Transportation Research Part C Emerging Technologies,2015(54):187-197.

猜你喜欢

交通流门限路段
基于LSTM的沪渝高速公路短时交通流预测研究
京德高速交通流时空特性数字孪生系统
冬奥车道都有哪些相关路段如何正确通行
基于规则的HEV逻辑门限控制策略
随机失效门限下指数退化轨道模型的分析与应用
VoLTE感知智能优化
基于XGBOOST算法的拥堵路段短时交通流量预测
高速公路重要路段事件检测技术探讨
基于Neyman-Pearson准则的自适应门限干扰抑制算法*
基于元胞自动机下的交通事故路段仿真