交通预见未来(25): 多步交通需求预测:基于注意力机制的神经网络模型
1、文章信息
《Predicting Multi-step Citywide Passenger Demands Using Atention-based Neural Networks》。
上海交通大学计算机学院发在2018WSDM(第十一届网络搜索与数据挖掘国际会议。)上的一篇会议论文。
2、摘要
既有研究重点是预测选定地点或热点地区的下一个时间步的乘客需求。然而,我们认为城市全网的多步乘客需求包含了时变的需求趋势和全局的客流状态,因此更有利于避免供需不匹配,并制定有效的车辆分配/调度策略。本文提出了一种端到端深度神经网络模型,采用基于卷积和ConvLSTM单元的encoder-decoder框架来识别复杂的特征,以捕捉时空特性和上下车交互对全市乘客需求的影响。模型中嵌入了注意力模型来刻画潜在的全市出行规律的影响。我们使用出租车和自行车数据集评估模型,实验结果表明模型效果较好。
3、简介
本文认为多步需求预测(如下图所示)更具有意义。首先,多步乘客需求表明了需求的变化趋势,这有助于避免存在临时需求波动时的冲动性车辆调度响应。相比之下,短期乘客需求预测结果往往是短时间的,更容易造成不必要的车辆调度。其次,大量的车辆遍布全市。预计整个城市的乘客需求将概括全球状况,从而在实现更好的车辆分配方面提供更多信息。(这一块写的感觉没有说服力)
本文研究了多步城市客流需求预测问题(某个区域上下车客流需求)。这个问题的关键技术挑战是如何处理(1)复杂的时空对乘客需求的影响,以及(2) 上下车交互作用。
本文提出了一种端到端的深度神经网络来解决多步城市乘客需求预测问题。我们将某一时段的全市范围内的上下车需求组织成一个3D需求张量,并将之前时间区间内的一系列需求张量作为输入。预测模型为encoder-decoder框架。在编码阶段,我们使用卷积单元从每个张量中提取空间特征,这些特征有效地捕捉到上下车之间的空间影响和相互作用。然后,我们利用ConvLSTM揭示复杂的时空影响,从而得到输入序列的高级表示。解码器的行为与编码器相反,其输出未来的需求张量。过程中嵌入了注意力机制。
文章主要贡献如下:
(1)据我们所知,文章第一次定义了全网多步预测问题。针对这一预测任务,提出了一种端到端深度神经网络模型。我们的方法采用了一个基于卷积和ConvLSTM单元的编码器解码框架,能够有效地捕捉复杂的时空影响和上下车交互。
(2)引入注意力模型并集成到解码器中,提高了预测性能。
(3)使用纽约的出租车和自行车数据集验证模型,结果表明,该方法预测效果最好。
4、模型框架
本文仍是将某个区域根据经纬度划分为网格。将某个时间段全网所有区域的上下车需求组织为3D张量(M∈R(n*m*2)),多步预测就是输入过去输入过去多个时间段的需求,输出未来多个时间段的需求。
4.1 overview
图2概述了端到端深度神经网络模型。采用encoder-decoder框架。首先将乘客需求张量的输入序列“编码”为固定维表示,然后对这些表示进行“解码”,以生成未来所需张量。
研究发现,客流需求分布具有一定的时空规律,这可能是由潜在的全市范围内的客流格局造成的。例如,地铁车站在工作日的高峰时段的需求总是很高,而在午夜的需求却很低。为了捕捉这种规律,我们对历史需求张量执行k-means聚类。由此产生的K个代表性需求张量称为标注张量。在本文中,我们利用注意力模型将这些标注张量纳入到下一步的需求预测中,这是一种全新的尝试。
4.2基于CNN+ConvLSTM的编码器encoder
Encoder输入是前N个时间段的三维tensor。 从图2可知,encoder部分其实就是叠加了两个Conv层两个ConvLSTM层,在ConvLSTM层的输出会有hidden state 和cell state,该状态会作为decoder的初始状态作为输入。
4.3注意力模型
注意力模型主要分为两步,第一步,先利用K均值聚类确定K个具有代表性的需求张量A(3维张量),即前文提到的标注张量(这K个标注张量应该就是K的聚类中心)。然后将该向量通过一个双层的CNN提取特征得到a(也是三维张量)。第二步,获取权重向量。将a和上一步encoder输出的hidden state 展平flatten后输入到多层神经网络中,输出一个单一值ɑ,将K个ɑ经过softmax函数得到归一化的权重矩阵。K个权重加权到K个a上,得到最终的加权后的Zt. (加权这块因为K个a都是三维张量,权重向量是一维的,即由K个权重,所以就是K个三维张量的对应位置分别用权重向量进行加权求和,即可得到最终的Zt,Zt仍然是三维张量)。
整个计算过程的公式如下。
4.4 decoder部分
Decoder的输入即为预测的B个时间步,每个时间步都是三维tensor。Encoder最终输出的hidden state和cell state作为decoder的初始状态initial state。另外注意力部分的输出Zt也是decoder部分的输出。ConvLSTM部分的计算公司如下。
其输出H再经过两个Conv层得到最终的输出。
Decoder红色标注那部分看了半天才看明白,就是循环神经网络内部两种状态随时间步传递循环的过程。
6、评论
可能由于论文作者是计算机学院的,特色方面更多的是技术的实现上,但是内容上解释了很多很浅显的交通现象,显得有点啰嗦和不专业。
Attention
如果你和我一样是轨道交通、道路交通、城市规划相关领域的,可以加微信:Dr_JinleiZhang,备注“进群”,加入交通大数据交流群!希望我们共同进步!