基于多元因素的Bi-LSTM 高速公路交通流预测①
张 维1, 袁绍欣1, 陶建军2, 周晨蓉1, 阿合提·杰恩斯1
1(长安大学 信息工程学院, 西安 710054)2
(绍兴市交通建设有限公司, 绍兴 312000)
通讯作者: 张 维摘 要: 针对影响高速公路交通流量因素多样而复杂的问题, 提出了一种基于多元因素
的Bi-LSTM (双向长短期记忆网络)高速公路交通流预测模型. 首先对原始数据进行清理和相关性分析, 提高研究准确性, 降低数据维度; 其次,基于时间滑动窗口, 构建多元因素交通流时序矩阵, 并以MAE 与RMSE 为评估指标, 训练优化Bi-LSTM 交通流预测模型. 本模型同时考虑了天气状况、节假日、收费情况等高相关度影响因素, 及交通流前序、后序变化的影响.以陕西省高速公路收费数据为实验对象, 结果表明: 与GRU 和LSTM 两种神经网络相比较, 本模型在高速公路短期交通流预测中的适用性更强、精确度更高.关键词: LSTM; GRU; Bi-LSTM; 交通流; 多元因素
lol登陆不上引用格式: 张维,袁绍欣,陶建军,周晨蓉,阿合提·杰恩斯.基于多元因素的Bi-LSTM 高速公路交通流预测.计算机系统应用,2021,30(6):184–190./1003-3254/7969.html
Bi-LSTM Expressway Traffic Flow Prediction Based on Multiple Factor Data
ZHANG Wei 1, YUAN Shao-Xin 1, TAO Jian-Jun 2, ZHOU Chen-Rong 1, JIEENSI A-He-Ti 1
1(School of Information Engineering, Chang’an University, Xi’an 710064, China)2
(Shaoxing City Transportation Construction Co. Ltd., Shaoxing 312000, China)
Abstract : Aiming at the diverse and complex factors affecting expressway traffic flow, this study proposes a Bi-LSTM prediction model based on multiple factors. Firstly, the original data are cleaned
up and analyzed with respect to their correlation to improve the research accuracy and reduce the data dimension. Secondly, a multi-factor time series matrix for traffic flow is constructed based on the time sliding window and the proposed model is trained and optimized with MAE and RMSE as the evaluation indicators. This model considers high-correlation influencing factors such as weather conditions, holidays, and toll, as well as changes in the preorder and postorder of traffic flow. With the expressway toll data in Shaanxi Province as the object, the results show that the proposed model is more applicable and accurate than GRU and LSTM in the short-term prediction of expressway traffic flow.Key words : LSTM; GRU; Bi-LSTM; traffic flow; multiple factor data
1 引言
扣12分目前我国高速公路总里程已达14.3万公里, 位列世界第一, 高速公路出行承担了主要的交通出行量. 但随着汽车保有量的增多, 长时间大规模的拥堵频发, 不
仅降低了通行效率, 还严重影响了民众的出行体验. 为了保障高速公路的通畅, 准确预测交通流量, 提前做好交通信息服务显得十分重要.
早期交通流预测研究主要采用传统统计模型, 如自
计算机系统应用 ISSN 1003-3254, CODEN CSAOBN
E-mail: Computer Systems & Applications,2021,30(6):184−190 [doi: 10.15888/jki.csa.007969] ©中国科学院软件研究所版权所有.
Tel: +86-10-62661041
① 基金项目: 国家重点研发计划(2020YFB1600400); 陕西省重点研发计划(2019ZDLGY17-08); 浙江省交通运输厅科技计划(2020026)
Foundation item: National Key Research and Development Program of China (2020YFB1600400); Key Research and Development Program of Shaanxi Province (2019ZDLGY17-08); Science and Technology Plan of Transportation Bureau, Zhejiang Province (2020026)收稿时间: 2020-10-16; 修改时间: 2020-11-18; 采用时间: 2020-12-01; csa 在线出版时间: 2021-06-01
184疫情发朋友圈的句子
回归模型[1]、整合移动平均自回归模型[2]、卡尔曼滤波模型[3]、非因素回归模型[4]、小波分析[5]、混沌理论[6]等. 传统的统计模型大多对数据有一定的要求或者假设,要求模型本身有比较明确的数学形式, 但是在大多数情况下, 人们无法对真实世界数据的分布做任何假设.
而机器学习方法不需要对数据有任何假定, 就可以对复杂多样的数据进行深层次的分析. 如何通过机器学习对复杂多样的数据进行深层次的分析, 高效利用信息已成为当前大数据环境下机器学习的主要研究方向. 杨凡等通过遗传算法对模糊神经网络进行优化,提出一种混合智能数据挖掘的交通流量预测模型[7]. Li等结合ARIMA模型和SVR, 提出了一种同时捕获线性和非线性的混合策略用于交通流预测, 提高预测精度[8]. Du等提出了一个结合RNNs和CNNs的混合深度学习框架短期交通流预测模型[9]. 这些主要采用机器学习的方法, 对大量历史车流量数据进行分析并构建的预测模型, 虽然取得了一定的准确度, 但是忽略了影响交通流的其他相关因素.
考虑到影响交通流的多种因素, 学者们开始综合这些影响因素对高速公路交通流进行预测. 沈凌等通过ARIMA模型对高速公路收费数据中客货运量相关数据进行机器学习训练, 提出了基于收费数据的高速公路短时客货运输量短时预测研究[10]. 周桐等分别选用改进的时间序列算法和二次指数平滑法对不同类型的车流量进行预测; 通过对各车型的流量预测值进行加权求和, 得到总车流量预测值, 提高了预测精度[11]. Zhang等首次在考虑天气影响的情况下, 针对天气影响将递归神经网络与门控递归单元相结合, 对城市交通流进行预测, 降低了预测错误率[12]. 蔡延光等针对暴雨天气交通流预测问题, 提出一种基于改进布谷鸟算法优化径向基函数神经网络暴雨天气下高速公路交通流预测方法[13].
虽然以上方法都获得了较好的结果, 但多是在单一影响因素或特定情况下进行的实验, 本文提出了一种具有一定普适性的基于多元因素的Bi-LSTM高速公路交通流预测模型. 模型既考虑了影响交通流的多种
因素, 又结合Bi-LSTM的模型的结构特性, 考虑到了前后车辆变化对交通流量的影响. 通过对比GRU 和LSTM, 表明基于多元因素的Bi-LSTM高速公路交通流预测模型具有较好的预测效果.
2 Bi-LSTM
双向长短期记忆网络Bi-LSTM (Bidirectional Long Short Term Memory Networks)是由两个LSTM上下叠加组成[14]. 保留了LSTM保存较长依赖关系的能力, 有利于处理时间间隔较长的事件; 又通过前后向LSTM 序列组合的结构, 考虑了前后数据变化的影响.
f<t>i<t>
o<t>
单个LSTM单元主要通过遗忘门, 更新门和输出门控制数据的流入流出, 实现信息的保护和控制[15]. 其内部结构如图1所示. 遗忘门决定将从细胞状态中丢弃的信息, 更新门确定细胞需要更新的信息, 输出门确定需要输出的细胞状态. 其中c、a、x、y分别表示长期记忆、激活值、输入值和输出值.
图1 LSTM隐藏层单元的可视化呈现
图2是Bi-LSTM模型展开图, 水平方向分别是前向计算的LSTM序列和后向计算的LSTM序列, 以此调整之前的状态以及之后的状态对当前细胞单元状态的影响, 体现了时间序列的双向流动. 竖直方向展示了从输入层、隐藏层到输出层的单向流动.
图2 Bi-LSTM模型展开图
目前Bi-LSTM已经成功应用于词性标记[16], 机器阅读理解[17], 词位标注[18]等自然语言处理方向. 将Bi-
2021 年 第 30 卷 第 6 期计算机系统应用
185
LSTM应用到交通流预测, 可以利用Bi-LSTM的双向结构, 同时考虑前后车辆变化对交通流量的影响.
3 交通流预测模型
建立基于多元因素的Bi-LSTM高速公路交通流预测模型, 整体框架如图3所示, 分为数据预处理模块、模型训练模块和模型评估与预测3个模块.
3.1 数据预处理模块
3.1.1 数据清洗
数据清洗是数据预处理的关键步骤, 是对数据进行重新审查和校验. 目的在于删除重复信息、纠正存在
的错误, 并提供数据一致性. 本文数据源为高速公路收费收据, 由于收费系统严格控制重复收费问题, 故本数据源无重复数据, 本文数据清洗主要针对不完整数据以及异常数据.
v、t in、t out s in−out
1)异常数据. 如平均时速低于规定最低时速20%以上或高于规定最高时速20%以上的数据; 通行时间远大于最大通行时间或远小于最小通行时间的数据,进行剔除. 其中、分别表示平均时速、入站时间、出站时间、出入口站间的距离;
2)不完整数据. 如入口站或出口站信息缺失的、入口时间和出口时间同时不确定的数据, 选择剔除; 仅出口时间缺失的数据, 根据同一出入口的平均通行时间进行修补;
开机密码忘记数据清洗后, 所删数据只占原始数据集2%以下,且修补后的数据满足实验数据质量要求, 在保证了数据信息完整性的前提下进一步提高了数据质量.
图3 基于多元因素的Bi-LSTM高速公路交通流预测模型
3.1.2 相关性分析
经过统计, 共收集到了入站时间, 天气状况, 湿度,温度, 风速, 风级, 气压, 星期, 是否免费, 节假日, 车流量等多维因素. 为了降低数据维度, 剔除对交通流量影响较小或无影响的因素, 进一步提高基于多元
因素的Bi-LSTM高速公路交通流预测模型的准确率, 故采用斯皮尔曼(Spearman)相关系数描述统计变量的相关性
, 分析各因素之间的相关关系[19].
对于样本容量为n的样本, n个原始数据被转换成等级数据, 相关系数ρ为:
x y
x i y i
其中, 、分别表示两个随机变量, 两个随机变量随机取得第i个值分别用和表示. 当数据中没有重复值,并且两个变量完全单调相关时, 斯皮尔曼相关系数则为+1或−1.
3.1.3 归一化处理
不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果, 而且随时刻变
计算机系统应用2021 年 第 30 卷 第 6 期186
x 1,x 2,···,
x n 化, 交通流量变化较大, 比如凌晨1点的车流量远小于早上8点钟的车流量. 为了消除指标之间的量纲影响以及数据跨度过大的问题, 故选用min-max 标准化的方法对数据进行归一化处理. 即对于原数据进行变换:
对于样本容量为n 的样本, n 个原始数据被转换成等级数据, 相关系数ρ为:
y 1,y 2,···,y n ∈[0,1]得到新序列, 且无量纲. 此外, 归一化还有加快后期梯度下降求最优解的速度、提高预测精度等优点.
3.2 模型训练模块
3.2.1 构建监督学习序列
高速公路车流量数据以及其他维度的影响因素数据都是时间序列, 在每一个时刻都有一个对应的观测值, 可将实验数据中的时间序列表示为:
v 1,v 2,···,v m t 1,t 2,···,t n [v 1(t n ),v 2(t n )···v m (t n )]
t n 其中, m 表示观测值的维度个数, 分别表示温度、气压、风速、车流量等不同维度的观测值,
表示相应的观测时间. 表示时刻m 个维度的观测值.
全速自适应巡航w v 1,w v 2,···,w v m 根据斯皮尔曼相关性分析结果, 调整不同维度观测值的权重. 其中, 分别表示不同维度观测值的权重.
在训练模型之前, 采用滑动窗口的方式, 通过shift()函数实现窗口的滑动, 将实验数据构建成监督式学习序列:
w (1<w <n )m ×n ×w 其中, 表示时间窗口长度. X 表示训练集X ,是一个的矩阵, Y 表示训练集Y .
3.2.2 Bi-LSTM 模型
Bi-LSTM 模型分别采用前向传输序列和后向
LSTM 传输序列, 前向LSTM 传输序列
:
后向LSTM 传输序列:
LS T M LS T M a <t >f a <t >b 其中, 和分别表示前向LSTM 传输序列
和后向LSTM 传输序列. 、分别表示t 时刻前
向传输序列和后向传输序列的激活值.
σˆy t w a f w ah b y 最后通过函数, 输出预测值. 、分别表示前后向计算的权重, 表示偏移量.
3.2.3 模型训练流程
算法1展示了基于多元因素的Bi-LSTM 高速公路交通流预测模型训练的工作流程. 对于每个训练样本, 执行以下算法流程.
算法1. Bi-LSTM 网络模型训练算法流程输入: 训练集数据集Data ; 学习率: η.输出: Bi-LSTM 网络模型.过程:
1. 将训练集X 构造成监督学习序列, 并将训练数据集拆分成训练集X 和训练集Y ;
2. 在(0, 1)范围内随机初始化Bi-LSTM 网络中所有权重和偏移量;
3. repeat
(X m ,w i ,V w +i )∈Data
4. for all a <
t >f 5. 根据式(7)计算当前样本前向传输序列输出;a <t >b
6. 根据式(8)计算当前样本后向传输序列输出;ˆy
t 7. 根据式(9)计算当前样本输出;V w +i 8. 对比, 逆向更新Bi-LSTM 网络模型的权重和偏移量;9. end for
10. until 达到停止条件
3.3 模型预测与评估
3.3.1 模型预测
当模型训练好之后, 就可以采用该模型进行交通流的预测. 采用基于多元因素的Bi-LSTM 高速公路交通流预测模型进行交通流预测的具体流程如下:
2021 年 第 30 卷 第 6 期
计算机系统应用
187
m ×n ×w 步骤1. 数据准备. 将数据按照Data 数组结构构造成的矩阵, 其中m 表示有m 个不同维度的加权观测值, w 表示时间窗口的长度, n 表示要预测的数据量. 采用min-max 标准化对数据进行归一化处理;
[1×n ]步骤2. 预测. 将步骤1准备的数据输入到训练好的模型中进行预测, 模型会输出一个的矩阵;
步骤3. 逆归一化. 采用inverse_transform()函数对模型输出的矩阵进行逆归一化处理, 得到预测值.
3.3.2 模型评估
平均绝对误差MAE (Mean Absolute Error)和均方根误差RMSE (Root Mean Squared Error)是机器学习中评价模型的两把重要标尺, 本次实验选择MAE 和RMSE 作为模型衡量指标.
ˆy t y t 其中, t 表示测试数据集中交通流量观测值对应的观测时刻, 表示t 时刻交通流量预测值, 表示t 时刻交通流量实际观测值.
4 实验
4.1 实验平台和环境
实验计算机配置为: Windows10 64位操作系统,
Intel(R) Core(TM) i5-8250U CPU @1.60 GHz 1.8 GHz 处理器, 8 GB 内存. 程序语言版本Python 3.7.1, 在Keras 中以Tensorflow 为后端实现的.
4.2 参数设置
基于多元因素的Bi-LSTM 高速公路交通流预测模型训练中的优化目标是损失函数均方误差MSE 最小化, 采用Adam 优化算法对网络中涉及的权重进行迭代更新, 从而实现对模型的优化和训练. 模型各参数选用经验数据并通过多次实验进行调整, 最终确定滑动窗口长度为12, 隐含层节点数为52, 学习率为0.001,
batch-size 为36, 迭代次数Epoch 为2000次.
4.3 数据
4.3.1 数据来源
欢天喜地七仙女王晶数据筛选自陕西省高速公路收费数据, 记录了全年车辆的起终点收费站编号、进出站时间、车辆信息等. 本次实验选取陕西省高速公路流量最大的3个入口站: 六村堡站、灞桥站和三桥站, 筛选这3个站点所有节假日, 包括全年所有周六、周日、法定节假日等时段的车流量数据作为本次实验数据, 考虑到节假日到来前两天车流量逐渐攀升, 在节假日结束后一至两天内流量才开始逐渐回落, 故同时选取节假日
前后一至两天的数据.
4.3.2 数据分析
对预处理后的数据进行相关性分析. 分别计算各因素与交通流量的斯皮尔曼相关系数, 详细数据见表1.
表1 各因素与交通流量的斯皮尔曼相关系数
影响因素入站时间天气温度湿度风速气压星期是否免费节日相关系数
0.124**
0.020
0.354**
−0.349**
0.242**
−0.152**
0.150**
−0.446**
−0.182**
注:**. 在 0.01 级别(单尾), 相关性显著.
*. 在 0.05 级别(单尾), 相关性显著.
分析可知, 入站时间、温度、风速、星期和交通流之间的相关系数值分别为0.124、0.354、0.242、0.150, 并呈现出0.01水平的显著性, 因而说明入站时间、温度、风速、星期和交通流量之间有着显著的正相关关系. 湿度、气压、是否免费和交通流量之间的相关系数值分别为−0.349、−0.152、−0.446, 并且呈现出0.01水平的显著性, 因而说明湿度、气压、气压和交通流量之间有着显著的负相关关系. 除此之外, 天气状况与交通流量之间的相关关系数值并不会呈现出显著性, 意味着天气状况与交通流量之间并没有相关关系.
结合实际实验数据, 本次实验数据是全年周六、
周日、法定节假日数据, 其中并未出现大雾、大雪等严重影响交通流量的恶劣天气, 故结合斯皮尔曼分
析结果判定天气维度不属于本次实验的有效信息, 删除后既可降低数据维度, 又不会影响整体实验数据信息的完整性.
4.4 误差分析
根据斯皮尔曼相关分析的结果, 实验数据选用入站时间、温度、湿度、风速、气压、星期、是否免费、节日和交通流量等9个因素. 采用基于多元因素的Bi-LSTM 高速公路交通流预测模型分别对3个站点(灞桥站、六村堡站、三桥站)的车流量数据以5 min, 10 min, 15 min, 30 min, 60 min 5种时间粒度分
计算机系统应用
2021 年 第 30 卷 第 6 期
188
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论