基于深度学习的有效停车泊位预测模型
2022-03-01温浩宇赵灵君于江霞
温浩宇,赵灵君,王 帆,于江霞
(1. 西安电子科技大学 经济与管理学院,陕西 西安 710126; 2. 西安大数据资产经营有限责任公司,陕西 西安 710075)
0 引 言
截止到2019年,西安市机动车保有量已经突破360万辆,并以每年约30万辆的速度持续增长。汽车给生活带来便利的同时,也给城市治理造成了困扰,带来了如停车位短缺、道路堵塞及环境污染等一系列问题。停车诱导是缓解城市“停车难”问题的有效方法之一,通过交通大数据技术,以线上线下并行的方式实时发布区域内的停车地点、空满状态、路线规划等信息,帮助驾驶者快速有效地解决寻泊问题,减少了因车辆寻泊而产生的交通拥堵及环境污染,提高交通系统运行效率。目前停车诱导系统大多基于停车场实时泊位对驾驶者在到达停车场前进行诱导,但驾驶者更关注的是在到达停车场后是否还有停车泊位。因此,有效停车泊位的短时预测对停车诱导系统的调度、改进具有重要意义[1]。
传统的有效停车泊位预测方法主要包括自回归移动平均模型(ARIMA)、卡尔曼滤波模型、马尔可夫模型等。随着停车数据的指数级增长,机器学习方法开始应用于有效停车泊位的预测,如神经网络算法、粒子滤波算法、遗传算法等。许多学者对停车场泊位预测问题展开了研究,唐克双等[2]采用ARIMA模型、卡尔曼滤波模型和BP模型对有效停车泊位进行预测研究,发现ARIMA和BP模型有较高的预测精度,但没有考虑各停车场间的相关性对预测的影响,且ARIMA模型刻画复杂泊位时间序列非线性特征的能力较弱;季彦婕等[3-4]提出结合粒子群算法的小波神经网络预测模型,先利用粒子群算法对小波神经网络的参数进行优化选取,再通过小波神经网络对有效停车泊位进行预测,并通过实例分析验证了预测模型的有效性,但粒子群算法所需训练时间较长,预测效率有待提升;韩印等[5]提出基于灰色—小波神经网络的预测模型,取得了较为理想的预测结果,但由于训练样本数量不够充足,导致预测结果存在一定局限性。
BP(back-propagation)神经网络由于能够捕捉非线性关系,具有良好的自学习能力和适应性,在时间序列的预测问题上有良好效果[6-8]。但是对于较为复杂的时间序列,BP神经网络无法体现出时间序列内部的关联性,导致对时间序列的特征刻画不足,影响预测精度。针对停车场有效停车泊位的预测问题,当前时刻有效停车泊位的预测值不仅和停车场的历史泊位数据有关,更和之前时刻停车场的有效停车泊位相关,所以建立起不同时刻泊位数据之间的关联关系尤为重要。
LSTM(long short-term memory)神经网络不仅能够有效处理复杂时间序列的非线性和随机性问题,还能记忆时间序列内部的关联性,已广泛应用于动态交通流量预测中,并取得了较好的预测效果[9-11]。静态交通指车辆出行中的停车过程,是动态交通的延续,动、静态交通共同组成了一个城市的交通系统[12],但目前LSTM在静态交通领域的应用较少。
为了更好刻画有效停车泊位时间序列内部的相关联性,笔者拟在分析西安市历史停车数据的基础上,建立基于深度学习的LSTM有效停车泊位预测模型,以改进西安市机动车停放服务中心的停车诱导系统。
1 基于LSTM的有效泊位预测模型
基于LSTM的有效停车泊位预测模型主要利用了循环神经网络(recurrent neural networks,RNN)算法。RNN是深度学习领域重要的研究方向之一,是一类具有短期记忆能力的神经网络。RNN的网络表现形式中有循环结构,使过去输出的信息作为“记忆”被保留下来,应用于当前的输出计算。
基于RNN的有效停车泊位预测模型结构如图1。在t时刻下,网络的输入为历史泊位数据xt,输出为预测泊位数据ht。st为t时刻的隐藏层状态值,包含网络储存的记忆状态信息,使前一时刻的泊位信息作为记忆保留,并应用于当前时刻泊位数据的计算中,从而建立起不同时刻泊位数据间的关联关系。U是输入层到隐藏层的权重矩阵,V是隐藏层到输出层的权重矩阵,W是隐藏层上一时刻状态值st-1作为本时刻输入的权重矩阵。
图1 基于RNN的有效停车泊位预测模型结构Fig. 1 Structure diagram of effective parking space prediction model based on RNN
由于输入的历史泊位数据与输出的预测泊位数据间的时间间隔较长,容易产生梯度消失问题,难以实现准确预测。为实现对长时间间隔泊位序列的有效处理,笔者采用RNN的改进模型——LSTM模型进行预测分析,即在RNN结构的基础上引入LSTM单元,利用不同门控机制加强对记忆信息的控制能力,从而解决梯度消失问题。
基于LSTM的有效停车泊位预测模型结构如图2,一个LSTM记忆单元包括输入门、输出门和遗忘门3种。遗忘门ft负责对上一时刻的单元状态Ct-1进行选择性抛弃,重置记忆单元。输入门it负责对历史泊位数据xt进行读取及过滤无用信息。输出门ot负责对当前时刻的单元状态Ct进行选择过滤,输出预测泊位数据ht。图2表示的是同一神经元A在不同时刻xt的状态信息ht的传递,即上一时刻的输出会作为下一时刻的输入参与模型的训练。
图2 基于LSTM的有效停车泊位预测模型结构Fig. 2 Structure diagram of effective parking space prediction model based on LSTM
LSTM记忆单元的遗忘门、输入门、输出门对应的运算过程为:
ft=σ(Wf·[ht-1,xt]+bf)
(1)
it=σ(Wi·[ht-1,xt]+bi)
(2)
ot=σ(Wo·[ht-1,xt]+bo)
(3)
式中:W和b分别为各门的权重矩阵和偏移量;σ(·)为sigmoid激活函数。
LSTM记忆单元最终的输出ht由输出门和单元状态共同决定:
(4)
(5)
ht=ot·tanh(Ct)
(6)
2 数据集描述
截至到2019年底,西安市拥有2 000余个路边公共停车场,超过45 000个公共停车位。笔者所选数据为西安市2017年的2 700万行相关停车记录。
停车场泊位利用情况受工作、生活等作息习惯的影响,也受到停车场位置、泊位类型、收费标准、时间、天气、周边交通条件等多种因素的干扰[1]。从寻泊的角度看,驾驶者通常考虑的是目标区域内的停车场是否存在有效停车泊位。从停车管理的角度,机动车停放服务中心通常针对目标区域内的停车场,进行有效停车泊位的预测和停车诱导。在停车场的选择方面,笔者的研究对象不局限于某一停车场,而是把目标区域内的停车场视为一个整体,这样可以避免各停车场间的相关性对预测结果造成影响,也在一定程度上减少了周边交通条件对预测结果的干扰。
为避免停车数据受特殊停车活动及偶然因素的影响,保证结论的普适性,选择5种不同类型的停车区域进行研究,分别为:商圈(小寨商圈)、景点(大雁塔)、医院(西京医院)、住宅小区(世家星城)和学校(高新一中)。提取西安市内各停车场经纬度信息,以目标区域的经纬度坐标为中心,计算各停车场与坐标中心的直线距离,选取直线距离1 500 m范围内的停车场,得到目标区域内停车场的数据信息。各停车区域数据信息如表1,泊位类型均为路边停车泊位,收费模式为单一收费。
表1 各停车区域数据信息Table 1 Data information of each parking area
对各停车区域在2017年01月01日—12月31日的每日有效停车泊位数据进行采集,采集由08:00开始至20:00结束,每10 min采集一次,得到有效数据共计355 d,选择前250 d数据作为训练集用于模型训练,后105 d数据作为测试集用于模型测试。各停车区域日均停车数的时序如图3。
图3 各停车区域日均停车数时序Fig. 3 Time sequence of average daily number of parking spaces in each parking area
3 有效停车泊位预测仿真分析
3.1 数据预处理
构建输入与输出的映射关系:在使用LSTM模型前,需要将有效停车泊位时间序列的预测问题转换为机器学习中的监督学习问题,即构建输入与输出的映射关系。采用滑动窗口的方法,利用前n个时间间隔的历史观测数据区间(t-n,t-1)来预测下一时间间隔t时刻的有效停车泊位。假设每天开始记录的时间为08:00,结束的时间为20:00,输入序列的时间步长为5,则时间间隔输入序列为{08:00,08:10,08:20,08:30,08:40},{08:10,08:20,08:30,08:40,08:50},…,{19:00,19:10,19:30,19:40,19:50},相应的时间间隔输出序列为{8:50,9:00,…,19:50,20:00}。
(7)
式中:xi为原始数据;xmax为最大有效停车泊位数;xmin最小有效停车泊位数。
采用了2种评价指标作为模型预测结果的评估标准,即均方根误差(RMSE)和平均绝对百分误差(MAPE),2个指标的计算公式为:
(8)
(9)
3.2 LSTM神经网络参数调优
LSTM神经网络输入层的神经元个数取决于输入序列的时间步长大小。LSTM神经网络可以处理任意时间步长,能刻画有效停车泊位时间序列较长时刻的前后关联关系。选取输入时间步长为4、5、10、15进行预测,结果如表2。由表2可知:不同的输入时间步长对网络的预测性能影响不大,RMSE在8左右, MAPE在6%左右。输入时间步长为5时,训练时间最短,故选择输入时间步长为5。
表2 不同输入时间步长下LSTM神经网络预测结果Table 2 LSTM neural network prediction results with different input time steps
对于有效停车泊位时间序列的预测问题,单隐含层神经网络已能够刻画其映射关系,因此采用单隐含层的神经网络进行预测。隐含层的神经元个数对LSTM神经网络模型性能有重要影响,个数过多容易出现过拟合问题,个数过少则网络的学习能力不足,无法实现精准预测。分别选取神经元个数为50、100、150、200进行预测,结果如表3。由表3可知:在不同的隐含层神经元个数下,预测结果有小幅波动, RMSE在8左右, MAPE在6%左右,随着神经元个数的增加,网络训练时间在不断增加。综合考虑RMSE、MAPE及网络训练时间,选择隐含层神经元个数为150。
表3 不同隐含层神经元个数下LSTM神经网络预测结果Table 3 LSTM neural network prediction results with different number of hidden layer neurons
输出层的神经元个数与预测步数有关,预测可分为单步预测和多步预测,笔者主要研究的是单步预测,因此输出层神经元个数为1。
由于数据量较大,小批量梯度下降法具有训练速度快、计算量较小的特点,因此选择小批量梯度下降法对LSTM神经网络进行训练。采用小批量梯度下降法时,需要确定训练子集的大小。分别选取batch-size为5、10、20、50、100进行预测,结果如表4。由表4可知:当batch-size小于20时,不同batch-size下的RMSE在8左右,MAPE在5%左右,随着batch-size的增加,训练时间减少。当batch-size大于20时,LSTM神经网络的预测误差开始明显增加,综上,选择batch-size为20。
表4 不同batch-size下LSTM神经网络预测结果Table 4 LSTM neural network prediction results with different batch size
综上,输入层的输入时间步长选择为5;采用单步预测,输出层神经元个数为1;采用单隐含层网络结构,隐含层神经元个数为150;采用小批量梯度下降法对网络进行训练,batch-size为20。另外,选取的迭代次数为10,优化算法为Adam。
3.3 模型评估
采用LSTM模型、BP模型和ARIMA模型3种方法对各停车区域进行有效停车泊位的预测和比较,预测结果如表5。由于ARIMA模型拟合非线性趋势能力较弱,选用ARIMA模型作为基线模型,作为与其他模型进行比较和评估的参考。
表5 LSTM模型、BP模型和ARIMA模型的预测结果对比Table 5 Comparison of prediction results between LSTM model, BP model and ARIMA model
由表5可知:在不同停车区域的有效停车泊位预测中,基于LSTM模型的有效停车泊位预测均取得了良好的预测效果,不同停车区域LSTM模型预测结果的MAPE均在10%以内,精度在90%以上,说明LSTM模型在有效停车泊位预测问题上可靠且有效。在不同停车区域的泊位预测中,LSTM模型预测误差均小于BP模型,说明LSTM模型比BP模型更有效。
LSTM模型、BP模型和ARIMA模型的预测值和真实值的对比如图4(以小寨商圈2017年10月01日—10月07日为例)。由图4可知:LSTM模型表现出了和真实值相似的变化趋势,BP模型次之,ARIMA模型存在较大误差,说明LSTM模型能较好地刻画有效停车泊位时间序列内部的相关联性,预测精度更高。
图4 LSTM模型、BP模型和ARIMA模型的预测值和真实值对比Fig. 4 Comparison of predicted and true values of LSTM model, BP model and ARIMA model
4 结 语
笔者综合考虑了有效停车泊位预测的时空特性。一方面分析了传统有效停车泊位预测方法的不足,提出基于LSTM神经网络的预测模型,该模型由于其“记忆单元”的独特结构,可产生对过去泊位信息的记忆,充分利用了泊位序列前后时刻的关联关系;另一方面选取目标区域内多个邻近停车场的历史停车数据组成训练样本,既避免了停车场之间的相关性对预测结果造成影响,也满足了神经网络对海量数据的训练需求。运算结果表明:对于不同类型停车区域的有效停车泊位预测,考虑时空特性的LSTM预测模型预测结果与真实值一致性较高,预测精度在90%以上且均高于BP预测模型,说明LSTM模型是实现有效停车泊位预测的有效方法。下一步,可加入时间因素、天气条件等相关参数进行有效停车泊位的预测,进一步提高预测的准确性。