APP下载

基于GRU-RNN模型的交叉口短时交通流预测研究

2020-09-07于德新周户星王卓睿

公路工程 2020年4期
关键词:交通流量交通流神经网络

于德新,邱 实,周户星,王卓睿

(1.吉林大学 交通学院,吉林 长春 130022;2.吉林省道路交通重点实验室,吉林 长春 130022)

0 引言

智能交通系统中,短时交通流预测一直是学术界关注的重点,它即能为交通管理者制定管控措施提供依据,又能为交通参与者提供引导信息,使交通流合理分配,提高道路交通效率,减少碳排放,缓解道路交通拥挤。国内外学者均进行了大量研究,其模型主要分为4大类:①线性系统理论预测方法,包括历史平均法、时间序列预测法[1]、卡尔曼滤波预测方法[2]等。系统状态通过描述系统行为特征的变量来表现,其原理相对简单。GUO[3]等利用卡尔曼滤波器实现了SARIMA+GARCH结构,以交通流15 min区间数据作实例验证,表明自适应卡尔曼滤波方法能够生成水平预测和预测区间,在流量不稳定的情况下表现出更好的适应性。林培群[4]等提出用K近邻算法匹配地铁客流量进行短时客流量预测,结果表明能够准确预测不同交通模式的地铁客流量。②非线性系统理论预测方法,包括小波分析法[5]、突变理论[6]、混沌理论等。短时交通流具有非线性特性,故应用效果更好。CARDOSO[7]提出自适应估计小波变换尺度系数的方法,仿真结果验证了小波域内对建模参数的估计是准确的。③智能模型预测法,包括神经网络预测模型[8-9]、支持向量机预测模型、元胞自动机理论等。智能模型具有预测精度好、自适应能力强、可实时预测等优点,适用于复杂的交通系统。王体迎[10]等采用门限递归单元循环神经网络的方法预测加拿大某省的交通数据,其结果优于ARIMA与SVR两种方法,但未能表明是否适用于我国交通现状。④组合模型预测法。CEEMDANPE-OSELM预测模型[11],提出了一种根据历史数据的噪声分解重组构建新序列方法,将重组结果相加获得最终的预测流量。所述各类方法具有不同适用情况,客观地反映了交通流变化的根本特征。

近年来,机器学习的新领域深度学习已成为众多学者的研究内容[12-13],它模拟人脑进行学习分析图像、声音和文本,能够实现特定的任务。本文利用其分类下的RNN(Recurrent Neural Network)循环神经网络模型,当大量交通数据作为输入时,可以根据时空相关性对数据进行时序分解和重构,处理后样本的依赖性明显降低,其预测结果反映了数据变化规律,相比其他模型具有更快的处理速度和更强的计算能力[14-15]。

1 随机森林算法数据预处理

首先分析缺失数据的模式,利用算法对数据样本之间关系的出色自动分析能力对交叉口交通流量进行随机森林算法补全。

1.1 缺失数据描述

现有检测器数据由于故障等原因并不能得到完整数据,这就需要对现有数据进行补全或者丢弃处理。但简单地数据丢弃并不是一个合理做法,有价值的数据可能会随之丢失。常用缺失数据处理方法一般采用剔除法、均值替换法、线性回归法等等,但是这些方法都无法避免主观因素对原始数据的影响,且预测误差很大。本文针对城市交叉口检测器数据的长周期缺失情况,即缺失时间是数周期甚至数小时,提出采用随机森林模型进行数据补全,此算法利用非缺失的数据序列训练回归树,再通过树的组合形成随机森林,在变量 (列)的使用和数据 (行)的使用上进行随机化,生成很多回归,再通过求均值,汇总回归树的结果,预测出缺失值。

1.2 算法步骤

随机森林回归算法是基于回归树的集成算法。回归树采用最小均方差原则,即对于任意划分特征A,对应的任意划分点S两边划分成的数据集D1和D2,遍历所有特征与尝试该特征所有取值后,求出使D1和D2各自集合的均方差最小,同时D1和D2的均方差之和最小所对应的特征和特征值划分点。表达式为:

式中:c1为D2数据集的样本输出均值,c2为D2数据集的样本输出均值。

回归树的预测是根据叶子结点的均值,因此随机森林的预测是所有树的预测值的平均值。

假设随机森林由NTREE回归树构成,算法步骤如下:

步骤1:从训练集Sii∈(1,n( ))中随机取样(有放回抽样);

步骤2:从N个特征中随机抽取K个特征;

步骤3:按照回归树算法训练得到模型Ht;

步骤4:重复步骤1、2、3,直到NTREE棵树构建完毕;

步骤5:对未知样本X回归时,每个模型Ht都得出一个回归结果,通过计算平均值,最终得到随机森林预测结果。

补全数据流程如图1所示。

其中基尼不纯度是指将来自集合中的某种结果随机应用于集合中某一数据项的预期误差率,即:

图1 数据补全流程Figure 1 Data completion process

式中:fi为事件发生的概率。

2 基于深度学习的短时交通流预测模型

2.1 时间序列模型

为便于理解本方法,简单介绍循环神经网络(Recurrent Neural Network,RNN),它区别于前馈神经网络通过输入数据后向前传播得出损失函数的残差,再把残差向后传播,不断调节网络权重值后,得出训练结果,其目的是最少量得出预测值[16]。而RNN是一类专门用于处理序列数据的神经网络,对文本处理上有明显优势,序列中当前的输出与之前的输出相关,会对前面的信息进行记忆并应用于当前的输出中,在RNN结构中引入GRU单元,通过门的控制,决定历史数据序列的权重,在实践过程中降低训练的复杂性、缩短训练的时间[17-18]。

将RNN的反馈结构展开,如图2所示,引入门的概念,修改了循环神经网络中隐藏状态的计算方式,其他输入和输入设计不变。图2中,为时刻的输入,隐藏层中存在两个门限,分别为更新门和重置门,即图中的和。将输入和前一时刻隐藏状态组合成向量,经过激活函数Tanh后,输出新的隐藏状态,进行信息的传递过程。

图2 GRU-RNN结构展开图Figure 2 RNN structure expansion diagram based on GRU

a.更新门rt与重置门zt。

更新门决定前一时刻的状态对当前状态的影响程度,值越大影响程度越大。重置门控制对前一时刻的忽略程度,值越小说明忽略的越多,其中ht-1表示前一时刻的隐藏状态,σ表示sigmoid激活函数,W为输入的权重向量。

c.隐藏状态。

综上所述,流量数据具有明显时间依赖性,过去的交通状态会对当前状态产生长期影响,GRURNN通过控制与更新门限层控制模型的记忆能力[19](7),在不断迭代过程中,对历史数据的特征信息进行记忆与更新,历史数据会被赋予不同的权重值,已经训练的模型会对接下来的数据进行预测[20]。

2.2 时序分解步骤

首先将交通流数据从检测器中提取并进行简单处理,用矩阵形式表示当天驶过此监测点的交通流量数据记录,采用热独编码形式对其外部因素进行独立编码,预测未来时刻交叉口的交通流量,因此设置时间间隔为24 h,第N天的交通流量矩阵为X∈RN,其中矩阵中元素Xi,j,i为该交叉口的5 min序列号,j为交叉口的特征。这种方法不仅可以预测交叉口的每天流量,对每5 min的交通流量也可精准预测,能够达到更细粒度的结果,对交通管理和调度更有利。

时间序列的GRU-RNN模型可分解为3个RNN子序列,其每个子序列分别对应短时记忆、周期记忆与长时记忆。捕捉数据中的交通流量特性,分别进行拟合,将子序列的权重进行加权融合,通过训练得到最终结果

基于时间序列的GRU-RNN交通流量预测方法的基本思想如下:

步骤2:分析每个数据的特征,及其相对应的变化规律,对此进行时序分解建模。

步骤3:构建GRU-RNN模型,对训练后的结果赋予不同的权重,求解后可得到最终模型。X′=θ1Xs+θ2Xp+θ3Xl,式中 θ1,θ2,θ3为权重值,Xs,Xp,Xl分别对应不同特性的拟合结果。

3 实例验证

选取合肥市黄山路交叉口,采集西进口连续5个工作日的5 min流量数据,其检测器的布设及交叉口类型如图3所示。共有1 440个数据样本,由于检测器故障等原因,数据集有10%缺失,故用随机森林回归算法做补全数据处理。

3.1 数据预处理

选用完整数据作为特征值,并筛选非空样本集合作为因变量,建立随机森林回归模型,对存在缺失值的样本进行填充。为有效消除量纲影响,便于机器学习,采用Z-score标准化方法对自变量进行数据处理,使得数据服从标准正态分布,即;

图3 交叉口特性Figure 3 Characteristics of intersections

式中:x为个体观测值;μ为总体数据的均值;σ总体数据的标准差。

硬件及软件环境分别为Intel i 7、3.6 GHz CPU、32 GB内存的工作机,以Myeclipse 8.5作为开发环境,连接Python实现随机森林模型及GRU-RNN的搭建与训练,其中,对比了随机森林模型与线性回归模型的误差水平。

如图4所示,随机森林模型可以实现与现有交通流的变化趋势,且交通量出现突变时,本文采用模型补全方法更贴近真实值。可以看出,在长周期缺失情况下,线性回归模型的补全交通量可能为负值,模型的稳定性相较之略差。

图4 缺失值补全数据Figure 4 Missing value completion data

以原始结果作为横坐标,以预测结果作为纵坐标,如图5所示,随机森林的预测结果更贴近于标准线,模型训练结果更好。采用拟合优度 (R2)与均方差误差根作为评价指标,从表1中能够得到随机森林算法的拟合优度大于线性回归法,误差也有所减小。

图5 拟合结果Figure 5 Fitting results

拟合优度(R2)与均方根误差(RMSE)分别为;

表1 预测结果指标对比Table 1 Comparison of prediction indicators results

3.2 结果分析

将前四天流量数据作为模型训练集,第五天数据作为模型测试集,训练集维度为287行4列,对比经典BP神经网络预测模型,采用拟合优度与均方差误差根作为评价指标,验证本文所提方法的有效性。

参数设置如表2所示,因为交通流量数据具有噪声,使用Adam算法进行优化,更适用于噪声和梯度消失的问题。

表2 参数设置Table 2 Parameter Settings

由图6可知,GRU-RNN模型流量预测值与真实值最为接近,对于流量的变化幅度拟合更好。BP神经网络预测模型与真实值的拟合程度低,与真实值有所偏离。

图6 预测效果评估Figure 6 Prediction effect evaluation

由图7可知,GRU-RNN模型误差小于BP神经网络模型,更贴近于真实值。由表3所示,拟合优度为0.962,越接近于1时说明拟合效果越好,均方根误差RMSE为6.258,较BP模型误差小近一半,说明误差分布更稳定。GRU-RNN连续流量数据中挖掘时间序列的规律,精度高拟合效果好的主要原因:在拟合过程中没有忽略样本中的缺失数据,补全之后获得高质量高连续性数据;在预测过程中通过激活函数和门限控制获得了更好的时空信息相关性,减少了原本RNN中的梯度爆炸与梯度消失的问题。

表3 模型预测指标对比Table 3 Comparison of prediction indexes of the model

图7 预测结果误差分布Figure 7 Error distribution of prediction results

4 结论

a.从交通流量数据长周期缺失问题中入手,提出采用随机森林算法的数据补全方法,评估了算法的性能,验证了数据补全的有效性。

b.在深度学习理论框架下,采用GRU-RNN模型根据流量数据的时空关联性完成时间序列重构,实现了交通流量精准预测。

c.预测模型与经典BP神经网络相比,拟合优度值为0.962,与真实值拟合效果更好,均方根误差为6.2576,误差分布更均匀稳定。

d.所用方法对城市交叉口的检测器数据有明显适用性,所预测结果准确度优于其他方法。

e.随着深度学习不断发展,将成果应用于大数据环境中,且交通流预测不仅与时间序列相关,也受相邻交叉口上下游流量的空间属性影响,今后将进一步深入研究以上内容,实现更高效准确的交通流预测。

猜你喜欢

交通流量交通流神经网络
基于LSTM的沪渝高速公路短时交通流预测研究
京德高速交通流时空特性数字孪生系统
神经网络抑制无线通信干扰探究
基于XGBOOST算法的拥堵路段短时交通流量预测
基于神经网络的中小学生情感分析
基于GA-BP神经网络的衡大高速公路日交通流量预测
交通流随机行为的研究进展
基于神经网络的拉矫机控制模型建立
路内停车对交通流延误影响的定量分析
基于支持向量机回归和RBF神经网络的PID整定