文章信息
《Deep spatial–temporal sequence modeling for multi-step passenger demand prediction》是2021年发表在《Future Generation Computer Systems》上的一篇文章。
摘要
供需失衡给出租车和共享汽车(汽车和自行车)等交通系统带来了巨大挑战,并导致过度延误、收入损失和能源消耗。准确预测乘客需求是重新安排资源以解决上述挑战的重要一步。然而,现有的工作不能完全捕捉和利用多模态数据中复杂的非线性时空关系。它们要么包括来自弱相关区域的过多数据,要么忽略那些相似但地理上遥远的区域之间的相关性。此外,这些方法主要侧重于预测未来一个时间步的乘客需求,而更长时间尺度的预测对于制定有效的车辆部署策略更有价值。文章提出了一个基于端到端深度学习的框架来解决上述挑战。模型包括三个部分:(1)一个图卷积递归神经网络,用于提取全市历史车辆需求数据中的时空相关性;(2)两个多层LSTM网络分别代表外部气象数据和时间元;(3)编码器-解码器模块,用于融合上述两部分并解码该表示,以实现对未来更长时间段的预测。在三个真实数据集上评估了框架,并表明模型可以更好地捕捉空间-时间关系,并优于最具鉴别性的最新方法。
介绍
尽管在乘客需求预测方面进行了广泛的研究,但是现有的方法存在以下缺点:
(1)虽然乘客需求的空间相关性已被证明可以提高预测的准确性,但仍未得到充分的探索。最近基于CNN的方法认为一个地区的乘客需求受城市所有地区或其本地相邻区域的影响.这些方法或者通过包括来自弱相关区域的过多数据而引入不相关的信息,或者不能精确地捕捉全局空间相关性(例如,地理上遥远的区域的隐藏相关性)。将这些区域纳入图1(a)中,例如,虽然A区在地理上靠近B区和C区,但它们的兴趣点完全不同。另一方面,区域A与区域D具有相似的兴趣点(即大学和购物中心)。因此,区域A中的乘客需求与D的关系比与B和c的关系更强。
(2)许多现有研究侧重于预测近期(即下一时间步)的乘客需求。然而,预测较长时间尺度上的乘客需求(即多步提前预测)对于运输服务运营商设计更好的车辆部署策略更有价值。
(3)现有方法针对目标城市的划分方式。特别是,当前的大多数方法都使用了一种抽象方法,其中城市被划分为小网格(如1km×1km区域),而忽略了语义信息,如道路网和城市行政区。图1(b)给出了通过邮政编码将城市划分为小区域的示例,这为提取有关区域的语义表示(如人口和收入)提供了便利。
文章的贡献有三点:
(1)考虑到历史需求和外部数据的共同影响,文章提出了一个端到端的多步乘客需求预测深度学习框架。
(2)通过图卷积网络捕获城市范围内乘客需求的空间相关性,并从数据中直接推断空间连通性。
(3)在三个真实世界数据集上进行了大量的实验,并证明了该方法在网格区域和不规则区域上对于下一步需求预测和多步需求预测的有效性。
预备知识
符号说明和问题陈述
假设一个城市被划分为N个小区域,不管是基于网格还是基于道路网络的划分。将区域集表示为{r1,r2,…,ri,…,rN}。在每个时间步t,标量Dt(ri)代表时间步t中区域ri的乘客需求。分别为向量Dt∈ RN表示时间步长t中所有区域的乘客需求。另一个向量Et表示时间步长t中的外部特征。在这项工作中,外部特征包括气象数据(例如天气状态、温度、风速)和时间元(例如一天中的时间、一周中的一天、节假日),分别表示为EMt和ETt。
考虑到全市的历史乘客需求{D0,D1,…,Dt}和外部特征{E0,E1,…,Et},目的是学习预测函数Γ(·),该函数在以下τ时间步中预测全市的乘客需求。特别是,文章没有使用所有历史乘客需求,而是有选择地将最近的q时间步长历史数据作为输入,这是时间序列数据分析中的常见做法。因此,文章的工作可以表述为:
图卷积网络
在这项工作中,使用谱域中定义的图卷积网络(GCN)和图傅立叶变换。以图形信号X和相应的邻接矩阵A为输入,带核Θ的谱图卷积运算定义如下:
滤波器Θ可以限制为∧的多项式,如下所示:
通过将计算推广到多个维度,一阶GCN层最终定义为:
模型
图2展示了基于编码器-解码器架构提出的方法的框架。编码器将所有输入编码为联合表示,解码器随后将表示解码为一系列预测。具体而言,编码器模块包括三个部分:(1)从全市历史乘客需求中提取的图形时空网络。它可以从相似区域中提取共享模式,避免弱相关区域的负面影响。(2) 两个多层LSTM网络,分别学习气象数据和时间元的更好表示。该设计考虑了气象数据和时间元之间的独立性。(3) 一种阿达玛融合方法,将上述三个网络的最终状态融合为联合表示。在解码器中,使用另一个多层LSTM网络对联合表示进行解码,并实现多步预测。将在下面详细介绍这些模块。
学习空间相关性
首先介绍如何捕捉不同区域之间的空间相关性。以往的研究假设一个地区的客运需求受到其他地区的影响。他们要么应用CNN捕捉整个城市的空间影响,要么捕捉地理邻近地区的局部影响。与这些现有研究不同,文章假设空间相关性仅取决于需求模式相似的地区,而与地理位置无关。具有相似属性(如POI、功能)的偏远地区的乘客需求也可能具有相似的需求模式,反之亦然。因此,现有的方法夸大了乘客需求的全局性和接近性。它们要么从弱相关区域引入过多的噪声,要么忽略远程相似区域的相关性。
因此,文章将城市视为一个图G=(ν,ξ,a),其中ν是城市中区域的集合,ξ是一组边,a是定义不同节点(即区域)之间空间连通性的相邻矩阵。与交通预测领域中直接从路网中获取邻接度的工作不同,不同区域之间的邻接度在乘客需求预测中是未知的。为了解决这个问题,通过两种方式从乘客需求数据推断出图的连通性。首先,根据区域间的历史乘客需求相似性预先定义了图的连通性,因为相似区域通常具有相似的乘客需求。
其次,根据区域表示的相关性,在训练过程中自适应地学习节点之间的邻接关系。以E1为可学习源节点嵌入矩阵和E2为可学习的目标节点嵌入矩阵,然后:
基于预定义的邻接矩阵A和可学习的Aadp,图形时空网络(GSTN)模块中的多个堆叠GCN层可以捕获不同区域之间的空间相关性。如图3所示,GSTN的输入是过去q时间步长的全市乘客需求、城市区域图的预定义邻接矩阵A和可学习的Aadp。在每个时间步,将当前时间步的全市乘客需求输入一组连接的GCN层。堆叠GCN层的权重在所有时间步之间共享,以避免过度拟合。结合A和Aadp的每个GCN层的计算:
考虑到邻接既包括历史乘客需求相似性,也包括区域表示相似性,模型可以准确捕捉大多数相关区域的空间相关性,并排除弱相关区域,而不管它们的地理位置如何。
学习时间相关性
将从GCN层提取的表示输入多层LSTM网络,以捕获时间关系,并将之前q时间步的全市乘客需求编码为联合表示。请注意,使用前面q时间步中的乘客需求作为GCN的输入,并分别提取每个时间间隔的表示。相应地,得到了q个不同的表示。在图4中,以单层LSTM为例进行阐述,其中GCN层的q输出显示为Xt−q+1,Xt−q+2,…,Xt。每个LSTM单元的计算如下:
表示外部特征
除了隐藏在历史全市需求序列中的时空相关性外,许多外部因素,如时间元(如一天中的时间、一周中的一天、节假日)和气象数据(如天气、温度、风速)也会影响乘客需求。例如,乘客需求往往在早上高峰时间非常高,而在午夜很低。此外,时间元数据和气象数据对乘客需求的影响是相互独立的。基于这些观测结果,将过去q时间步长的气象数据序列和时间元序列输入两个独立的多层LSTM网络,以获得它们的表示。与第4节类似,在多层LSTM网络中,只得到最后一个LSTM单元的状态和输出作为输入的输出和表示,因为它们集成了输入数据中的所有信息。
此外,基于时间元在所有区域中相同的事实,使用一个完全连接的层将时间元部分的最终状态映射到高维的N倍,以使其与区域数匹配。这样,可以将气象数据和时间元表示为(shm,scm)和(sht,sct)。
融合与预测
在前面的部分中,介绍了设计的三个不同的神经网络,分别获得历史全市乘客需求、气象数据和时间元的表示。在将这些表示输入解码器模块之前,应将它们融合在一起:
为了预测下一个τ时间步的乘客需求,使用另一个LSTM网络来解码联合表示(Sh,SC)。解码器的输入由两部分组成:编码器的编码表示和初始变量。编码的表示(Sh,SC)作为LSTM网络的初始状态(如图4所示)被馈送到解码器中,并且初始变量被用作LSTM网络的第一输入以开始解码。在机器翻译研究中,最常用的初始变量是“句末”标记。使用联合表示的第一部分作为初始变量,因为它包含比零变量更多的信息。解码器的后续单元的输入是最后一个LSTM单元的输出,如图2的右部分所示。
优化和训练
解码器中所有LSTM单元的输出构成预测的乘客需求(D′t 1,D′t 2,…,D′tτ)。在训练过程中,目标是最大限度地减少预测乘客需求和实际乘客需求之间的误差。将τ时间步长的预测乘客需求和真实乘客需求的均方误差(MSE)作为损失函数,如下所示:
实验
在这一部分中,首先介绍用于评估模型的数据集。然后,概述了实验设置和评估指标。最后,从三个角度对我们的方法进行了评估,重点讨论了以前工作中的三个缺点,这表明模型可以有效地解决这些问题。
Attention
如果你和我一样是轨道交通、道路交通、城市规划相关领域的,可以加微信:Dr_JinleiZhang,备注“进群”,加入交通大数据交流群!希望我们共同进步!