(10)交通预测-如何在深度学习框架下考虑动态时空相似性? - 案例研究

交通预见未来(10) 考虑动态时空相似性的交通预测深度学习框架

本篇文章是上一篇文章的案例研究部分。公众号内回复“纽约”获取文章使用的相关数据下载地址,包括美国纽约10年的出租车轨迹数据以及7年的共享单车轨迹数据。

1、文章信息

《Revisiting Spatial-Temporal Similarity: A Deep Learning Framework for Traffic Prediction 》

AAAI (美国人工智能协会)2019大会上的论文。作者: 宾夕法尼亚州立大学的Huaxiu Yao。

2、摘要

如何对复杂的时空依赖关系建模是当前交通预测的一个重点。既有研究大多将空间依赖看作是静态的,时间依赖看作是是严格周期性的。但本文基于两点进行研究:(1)位置之间的空间依赖关系是动态的; (2)时间依赖服从日、周两种模式,但其动态时间变化不具有严格的周期性。为了解决这两个问题,我们提出了一种新的时空动态网络(STDN),其中引入了一种门控机制来学习位置之间的动态相似性,并设计了一种周期性注意力转移机制来处理长期的周期性时间转移。

3、案例研究

(10)交通预测-如何在深度学习框架下考虑动态时空相似性? - 案例研究

文章joint training 部分说的将短期依赖和长期依赖连接起来指的就是上图中的b部分,即将Day t的短期依赖和t天以前的长期依赖通过那个加号连接起来,然后接全连接层输出最终结果。

模型的损失函数由于是预测的各个区域的吸引量和产生量,所以也就变为

(10)交通预测-如何在深度学习框架下考虑动态时空相似性? - 案例研究

是inflow和outflow共同的MSE,λ是衡量两者影响大小的参数。

文章所用数据是纽约的出租车和共享单车数据集。后台回复“纽约”获取相应数据集。

出租车:从2015年1月1日到2015年3月1号共2200万条出行记录,其中前40天训练,后20天测试。

共享单车:自行出轨迹数据是从2016年7月1号到2016年8月29号共260万条出行记录,其中前40天训练,后20天测试。

数据处理:我们将整个城市划分为10×20个区域。每个区域的大小约为1km×1km。每个时间间隔的长度设置为30分钟。我们使用Min-Max归一化将流量转换为[0:1]规模。预测完成后,对预测值进行反归一化并进行评价。我们对训练和测试数据都使用滑动窗口来生成样本。在对模型进行测试时,我们对体积值小于10的样本进行过滤,这是工业和学术中常用的做法。因为在实际的应用中,关心低流量几乎没有什么意义。我们选择80%的训练数据用于学习模型,剩下20%用于验证。

评价指标:MAPE,RMSE

参数设置:我们根据验证集的性能来设置超参数。对于空间CNN卷积部分,我们将所有卷积核大小都设置为3×3 ,64过滤器。所考虑的每个邻域的大小设为7×7。设K = 3 (层数),l = 2 (考虑OD矩阵的时间跨度)。对于时间LSTM部分,我们将短期LSTM的长度设为7 (即前3.5个小时), |P |= 3表示长期周期信息 (即前3天), |Q| = 3为周期性注意力转移机制 (即考虑相对于预测时间的前后半小时),LSTM隐藏层维数是128。通过Adam进行优化,batch size设置为64. 学习率设置为0.001。LSTM的dropout和recurrent dropout均为0.5。λ设置为0.5。

结果:不用说了,大家心知肚明,比所有模型都好。

4、思考

关于文章空间动态相似性:门控机制那部分,个人认为,使用OD矩阵需考虑一个问题就是,进行实时预测时,虽然实时的交通产生量和吸引量可以获取,但实时的OD矩阵是获取不了的,因为从O点到D点需要一定时间,存在一个time lag的问题,当然历史数据的OD矩阵是可以获取的,用历史OD数据来做模型是有很大问题的。有想法的可以私聊就该问题进行探讨。

5、数据获取

公众号内回复“纽约”获取文章使用的相关数据下载地址,包括美国纽约10年的出租车轨迹数据以及7年的共享单车轨迹数据。

 

关注微信公众号《当交通遇上机器学习》,

后台回复“数据”即可获取高达175G的四个月的滴滴GPS数据和滴滴订单数据的获取方式,以及从数据处理(Oracle数据库)、模型构建(机器学习)、编程实现(python)到可视化(ArcGIS)等一系列视频教程。

后台回复“纽约”获取美国纽约10年的出租车轨迹数据以及7年的共享单车轨迹数据下载地址。

公众号以交通大数据为主线,专注于人工智能、机器学习、深度学习在道路交通和轨道交通领域内的科研前沿与应用,在交通大数据与机器学习的道路上越走越远!

(10)交通预测-如何在深度学习框架下考虑动态时空相似性? - 案例研究

 

上一篇:[学习笔记]通过各语言特征码寻找按钮事件


下一篇:(17): 基于时空网络的出租车OD需求预测