面向城市人群流量预测的深度时空残差网络[翻译]

摘要

人群流量预测对交通管理和公共安全具有重要意义,同时受区域间交通、事件、天气等多种复杂因素影响,具有很大的挑战性。本文提出一种基于深度学习的方法ST-ResNet,来预测城市每个区域的人群流量和流出量。基于时空数据的独特特性,设计了ST-ResNet的端到端结构[1]。具体地,采用残差神经网络[2]框架对人群交通的时间稠密性(closeness)、周期性(period)和趋势性(trend)进行建模。针对每个属性,设计一个残差卷积单元分支,每个分支对人群交通的空间属性进行建模。ST-ResNet根据数据学习动态聚合三个残差神经网络的输出,为不同的分支和区域分配不同的权重。进一步结合外部因素,如天气和星期几,预测每个区域的最终人群流量。在北京和纽约市两种类型的人群流量上的实验结果表明,ST-ResNet的性能优于6种已知方法。

介绍

城市人群流量预测对交通管理和公共安全具有重要意义(Zheng et al. 2014)。例如,2015年在上海举行的跨年庆祝活动中,大量人群涌入一个狭长地带,导致了灾难性的踩踏事件,致36人死亡。2016年7月中旬,数百名《宝可梦GO》玩家跑过纽约中央公园,希望抓住一只特别罕见的数字怪兽,导致了一场危险的踩踏事件。如果能够预测一个地区的人群流量,就可以利用应急机制,例如进行交通管制,发出警告,或提前疏散人群,来减轻或预防这类悲剧。

本文预测了两种类型的人群流(Zhang et al. 2016):输入流和输出流,如图1(a)所示。输入流是指给定时间间隔内从其他区域进入一个地区的人群的总流量。输出流是指在给定时间间隔内,由某一区域前往其他区域的人群总流量。两种流都追踪了人群在区域之间的转移。了解它们对风险评估和交通管理非常有益。流入/流出可以通过行人数量、附近道路上行驶的汽车数量、乘坐公共交通系统(例如地铁、公共汽车)的人数来衡量,如果有数据,也可以通过所有这些数据来衡量。图1(b)展示了一个例子。我们可以用手机信号来测量行人数量,可知r_2的输入流和输出流分别为(3,1)。类似地,利用车辆的GPS轨迹,两种类型的流量分别为(0,3)。

图1:某区域人群流

然而,同时预测一个城市的每个区域的人群流入和流出是非常具有挑战性的,受以下三个复杂因素的影响:

  1. 空间依赖性。r_2区域(如图1(a)所示)的流入受到附近区域(如r_1)以及远处区域流出的影响。同样,r_2的流出将影响其他地区(如r_3)的流入。r_2区域的流入也会影响其自身的流出。 
  2. 时间依赖性。一个地区的人群流动受到最近时间间隔的影响,有近的也有远的。例如,早上8点发生的交通拥堵会影响9点的交通拥堵。此外,连续工作日的早高峰交通状况可能类似,每24小时重复一次。此外,随着冬季的到来,早高峰可能会逐渐推迟。当气温逐渐下降,太阳升起的时间越来越晚,人们起床的时间也越来越晚。
  3. 外部影响。一些外部因素,如天气条件和事件可能会极大地改变城市不同区域的人群流量。

 为了应对这些挑战,本文提出一种深度时空残差网络(ST-ResNet)来共同预测每个区域的人群流入和流出。我们的贡献有以下四个方面:

  • ST-ResNet利用基于卷积的残差网络对城市中任意两个区域之间的近距离空间依赖关系进行建模,同时确保模型的预测精度不依赖于神经网络的深度结构。
  • 将人群流动的时间特性归纳为3类:时间稠密性、周期性和趋势性。ST-ResNet使用三个残差网络分别对这些属性进行建模。【注:三类特性原文为closeness、period、trend,我个人认为此处指超短期(连续)时间,短期(日周期)时间,中期(周周期)时间】
  • ST-ResNet动态聚合上述三个网络的输出,为不同的分支和区域分配不同的权重。这种聚集进一步与外部因素(如天气)相结合。
  • 我们使用北京出租车轨迹和气象数据以及纽约自行车轨迹数据来评估我们的方法。通过与6种基准方法(baseline)的对比实验,验证了本文方法的优越性。

 预备知识

在本节中,我们简要回顾人群流量预测问题(Zhang et al. 2016;Hoang, Zheng和Singh 2016),并介绍深度残差学习(He et al. 2016)。

人群流动问题的表述

定义1(Region(Zhang et al. 2016))  在不同间隔尺寸和语义下有着对位置(Location)的不同的定义。在这项研究中,我们根据经度和纬度将一个城市划分为I×J网格地图,其中每个网格表示一个区域,如图2(a)所示。

图2:北京地区:(a)基于网格的地图分割;(b)北京各地区的流入量

定义2(流入/流出(Zhang et al. 2016))  设P为第t个时间间隔的轨迹集合。对于第i行第j列的网格\left ( i,j \right ),定义时间间隔t的人群流入和流出量分别为

式中Tr: g1→g2→···→g|Tr|为P上的轨迹,g_k为地理空间坐标;G_k \in (i,j)表示点G_k位于网格(i,j)内,反之亦然;\left | . \right |表示集合的基数。 

在第t个时间段,所有i \times j区域的流入和流出都可以表示为一个张量X_t\in \mathbb{R}^{2 \times i \times j},其中(X_t)_{0,i,j}=x_t ^ {in,i,j}(X_t)_{1,i,j}=x_t ^ {out,i,j}。流入矩阵如图2(b)所示。形式上,对于由i \times j网格地图表示的空间区域上的动态系统,每个网格中随时间有两种类型的流。因此,任意时刻的观测值可以用一个张量X\in \mathbb{R}^{2 \times i \times j}表示。

问题1:给定历史观测{X_t|t = 0,···,n−1},预测X_n.

深度残差学习

深度残差学习(He et al. 2015)使得卷积神经网络具有100层甚至1000层的超深度结构。该方法在多个具有挑战性的识别任务上显示了最先进的结果,包括图像分类、目标检测、分割和定位(He et al. 2015)。

形式上,具有恒等映射的残差单元(He et Al . 2016)定义为:

X^{(l+1)}=X^{(l)}+\mathbb{F}(X^{(l)})\; \;\;\;\;\;\;\;\;\;\;\;\; \;\;\;\;\;\;\;\;\;\;\;\; \;\;\;\;\;\;\;\;\;\;\;\; \;\;\;\;\;\;\;\;\;\;\;(1)

其中X^{(l)}X^{(l+1)}分别是l^{th}残差单元的输入和输出;F是一个残差函数,例如,两个3×3卷积层的堆叠(He et al. 2015)。残差学习的中心思想是学习关于X^{(l)}的加性残差函数[3]F (He et al. 2016)。

深度时空残差网络

图3展示了ST-ResNet的架构,它由四个部分组成——closeness、period、trend和外部影响(external)。如图3右上部分所示,我们首先使用定义1和2中介绍的方法,将整个城市在区间中每个时间点的流入和流出分别转换为一个双通道的图像矩阵。然后将时间轴分为3个片段,分别表示最近时间、近历史和远历史;然后,将每个时间片段中区间的2通道流矩阵分别输入到前三个分量中,分别对上述三个时间属性:紧密性、周期性和趋势性进行建模。前三个组件与卷积神经网络共享相同的网络结构,其次是残差单元序列。这种结构捕捉了近、远区域之间的空间依赖性。在外部部分中,我们手动从外部数据集(如天气条件和事件)中提取一些特征,将它们输入到一个两层的全连接神经网络中。将前3个分量的输出融合为基于参数矩阵的X-Res,在不同区域对不同分量的结果赋予不同的权重。X_{Res}与外部组件X_{Ext}的输出进一步集成。最后,通过一个Tanh函数将聚合映射为[- 1,1],在反向传播学习过程中,这比标准的Logistic函数[4]产生更快的收敛速度(LeCun等人2012)。

图3:ST-ResNet结构

前三个组成部分的结构

前三个部分(closeness, period, trend)共享相同的网络结构,由卷积单元和残差单元两个子模块组成,如图4所示。

图4:卷积和残差单元

卷积。城市通常规模很大,包含许多距离不同的区域。直觉上,邻近区域的人群流动可能会相互影响,卷积神经网络(CNN)可以有效地处理这一问题,CNN已显示出强大的分层捕捉空间结构信息的能力(LeCun et al. 1998)。此外,地铁系统和高速公路连接了两个距离较远的地点,导致了距离较远地区之间的依赖关系。为了捕获任何区域的空间依赖关系,我们需要设计一个具有许多层的CNN,因为一个卷积只能考虑空间附近的依赖关系(受限于其核的大小)。在输入和输出具有相同分辨率的视频序列生成任务中也发现了同样的问题(Mathieu, Couprie和LeCun 2015)。已经提出了几种方法来避免二次采样带来的分辨率损失,同时保留远程依赖关系(Long, Shelhamer和Darrell, 2015)。与经典的CNN不同,我们不使用子采样[5],而只使用卷积(Jain et al. 2007)。如图4(a)所示,有三个多层次的特征图,它们与几个卷积相连接。高层特征图中的一个节点依赖于中层特征图的9个节点,其中的9个节点依赖于低层特征图中的所有节点(即输入)。这意味着一个卷积自然地捕获空间上的邻近依赖关系,而卷积堆栈可以进一步捕获遥远的甚至是城市范围的依赖关系。图3的紧密度分量(closeness)采用区间最近时间的几个2通道流矩阵对时间紧密依赖进行建模。设最近片段为[X_{t-l_c},X_{t-{(l_c-1)}},···,X_{t-1}],也称为紧密依赖序列。我们首先将它们以第一个轴(即时间间隔)连接为一个X_c^{(0)} \in \mathbb{R}^{2lc \times I \times J},随后是一个卷积(即Conv1,如图3所示):

其中,∗表示卷积;f是激活函数,例如整流器f(z): =Max(0,z) (Krizhevsky, Sutskever, and Hinton 2012);W_c^{(1)},b_c^{(1)}是第一层的可学习参数。

残差单元。众所周知,虽然应用了众所周知的激活函数(如ReLU)和正则化技术,但非常深的卷积网络会损害训练效果(Ioffe和Szegedy 2015;Krizhevsky, Sutskever和Hinton 2012;Nair和Hinton, 2010年)。另一方面,我们仍然需要一个非常深的网络来捕获非常大的城市范围的依赖关系。对于一个典型的人群流量数据,假设输入大小为32 × 32,卷积的核大小固定为3×3,如果我们想要建模城市范围内的依赖性(即高层中的每个节点依赖于输入的所有节点),则需要超过15个连续的卷积层。为了解决这个问题,我们在我们的模型中采用了残差学习(He et al. 2015),这已经被证明对于训练超过1000层的超深度神经网络非常有效。在我们的ST-ResNet(见图3)中,我们根据Conv1堆叠L个残差单位,如下所示:

其中F是残差函数(即“ReLU +卷积”的两个组合,见图4(b)), θ(l)包括l^{th}残差单元中的所有可学习参数。我们还尝试将批量归一化(BN) (Ioffe和Szegedy 2015)添加在ReLU之前。在l^{th}残差单元的顶部,我们添加一个卷积层(即Conv2,如图3所示)。通过2个卷积和L个残差单元,图3的closeness分量的输出是X_c^{(L+2)}。同样,使用上述操作,我们可以构建图3的周期和趋势成分。假设period分量存在lp个数据,每个数据的间隔时间段为p。则period相关序列为[X_{t-l_p \cdot p},X_{t-(l_p-1) \cdot p},···,X_{t-p}]。通过卷积操作和L残差单位如式2和3,period分量的输出为X_p^{(L+2)},同时,trend分量的输出为X_q^{(L+2)},输入为[X_{t-l_q \cdot q},X_{t-(l_q-1) \cdot q},···,X_{t-q}],其中q是与趋势相关的序列的长度,q是趋势跨度。注意,p和q实际上是两种不同类型的周期。在具体的实现中,p等于一天,描述了每天的周期性,q等于一周(显示了每周的趋势)。 

外部组成部分的结构

交通流量可能会受到许多复杂的外部因素的影响,例如天气和事件。图5(a)显示节假日(中国春节)期间的人流流量可能与正常期间的流量有显著不同。图5(b)显示,与前一周同一天相比,大雨大幅减少了办公室的人流。设Et是表示这些外部因子和预测时间间隔t的特征向量。在我们的实现中,我们主要考虑天气、节日事件和元数据(即星期几、工作日/周末)。详细介绍见表1。为预测时间间隔t的交通流量,可以直接获取节假日和元数据。然而,未来时间间隔t的天气是未知的。不过,人们可以使用间隔t时刻的天气预报或是通过t−1时刻预测的天气来近似表示天气情况。形式上,我们将两个全连接层堆叠在一起,第一层可以被视为子因子的嵌入层(注:不知道这里是什么意思),然后激活。第二层用于将低维度映射到高维空间,高维空间具有相同的维度。图3外部组件的输出表示为带有参数\theta _{ext}X_{ext}

图5:节假日和天气在北京的办公区的影响

 融合

在本节中,我们将讨论如何融合图3的四个组件。我们首先用一个基于参数矩阵的融合方法(parametric-matrix-based)融合前三个组件,然后再与外部组件结合。图6(a)和(d)显示了使用表1中呈现的北京轨迹数据的计算曲线,其中,x轴是具有相同时间间隔的任意两个流入之间的平均值。来自两个不同地区的经验时间相关性序列的曲线,即最近时间间隔的流入比遥远时间间隔的流入更相关,这意味着时间上的紧密性。图6(b)和图6(e)分别描述了七天内流入的时间间隔。我们可以看到两个地区明显的日周期性。在办公区域,工作日的峰值比周末高得多。居住区在工作日和周末有相似的峰值。图6(c)和(f)描述了2015年3月和2015年6月周二的时间间隔(9:00pm-9:30pm)。随着时间的推移,办公区的流入量逐渐减少,住宅区的流入量逐渐增加。它显示了不同地区的不同趋势。综上所述,两个地区的资金流入受到时间、时间和趋势的影响,但影响的程度可能不同。我们在其他地区也发现了同样的属性,以及他们的流出。

最重要的是,不同的地区受到closeness,period和trend的影响,但影响的程度可能是不同的。受这些观察启发,我们提出了一种基于参数矩阵的融合方法。

基于参数矩阵(Parametric-matrix-based)融合。我们融合如图3的前三个分量(即closeness、period、trend)。

(注:拼接数据不能直接使用连接的方式,后面会说明原因)

其中◦是Hadamard乘积(即元素乘),Wc,Wp和Wq是可学习的参数,分别调整受closeness,period和trend影响的程度。

融合外部组件。我们直接将前三个组件的输出与外部组件的输出合并,如图3所示。最后,预测时间间隔的值,用X_t表示,定义为

其中tanh是双曲正切,确保输出值在-1和1之间。我们的ST-ResNet可以通过最小化预测流量矩阵和真实流量矩阵之间的均方误差,从三个流量矩阵序列和外部因素特征中训练预测Xt:

θ是ST-ResNet中所有可学参数。

算法和优化

算法1概述了ST - ResNet的训练过程。我们首先从原始序列数据(line 1-6)构建训练实例。然后,通过反向传播和Adam(Kingma和Ba2014)优化[6]训练ST-ResNet (line 7-11)。

实验

设置

数据集。我们使用两组不同的数据。每个数据集包含两个子数据集:轨迹和天气,详细信息如下。

  • TaxiBJ:轨迹数据是出租车GPS数据和北京气象数据,来自四个时间间隔:1st Jul. 2013-30thOct.2013,1stMar.2014-30thJun.2014, 1stMar.2015-30thJun.2015,1stNov.2015-10thApr. 2016.使用定义2,我们得到了两种类型的人群流。我们从最近四个星期的数据中选择一个数据作为测试数据,并将所有的数据作为训练数据。
  • NYCBike:轨迹数据取自2014年的NYCBike系统,从4月1日到9月30日。行程数据包括:行程时长、起始和结束站点ID、起始和结束时间。在这些数据中,最后10天的数据被选为最重要的数据,其他的数据被选为最重要的数据。

基准: 我们将我们的模型与六个基准模型进行对比。

  • 历史平均(HA):我们通过对该时间段内的历史流入和流出的平均评估来预测人群的流入和流出。,即周二9:00am-9:30am,其对应时段均为所有历史周二9:00am-9:30am的历史时段。
  • ARIMA:自回归综合移动平均模型(ARIMA)是一种著名的用于理解和预测未来值的模型。
  • SARIMA:季节性ARIMA。
  • VAR:向量自回归(VAR)是一种先进的时空模型,可以捕捉成对的线性流关系,但由于数量庞大的参数,计算成本很高。
  • ST-ANN:它首先提取空间特征(附近的8个区域的值)和时间特征(之前的8个时间间隔),然后将其传递给人工神经网络。
  • DeespST:(Zhang et al. 2016):一个基于深度神经网络(DNN)的时空数据预测模型,展示了最先进的crowdflow预测结果。有4种变体,包括DeepST- C,DeepST-CP,DeepST- CPT和DeepST- CPTM,它们关注不同的时间依赖性和灵巧因素。

预处理。在ST-ResNet的输出中,我们使用最终激活(见问题5),其值在-1和1之间。在这里,我们使用Min-Max归一化方法将数据缩放到范围[- 1,1]。在评估中,我们将预测值重新缩放为正常值,与基准真实值进行比较。对于外部因素,我们使用独热编码(one-hot)来转换元数据(即:,周的天数,周末/工作日),假日和天气条件转换为二进制向量,并使用Min-Max归一化将温度和风速缩放到范围[0,1]。 

超参数。我们用均方根误差(RMSE)来测量我们的方法:

其中,\hat{x}和x分别为预测值和真实值(注:原文为ground thuth,可能为笔误,)。Z是所有预测值的个数。

在TaxiBJ上的结果

我们首先给出了与其他6种模型的比较,如表2所示。我们给出了7种不同层和不同因素的ST-ResNet变体。以L12-E为例,它考虑了所有可用的外部因子并具有12个残差单元,每个残差单元由两个卷积层组成。我们观察到这7个模型全部比6个基准模型更好。与之前表现最好的模型相比,L12-E-BN将误差降低到16.69,显著提高了准确率。

不同组成部分的影响:以L12-E为对照。

  • 残差单元的数量:L2-E,L4-E和L12-E的结果表明,随着残差单元数量的增加,RMSE下降。使用残差学习,网络越深,结果越准确。
  • 残差单元的内部结构:我们尝试三种不同类型的残差单元。L12-E采用标准残差单元(见图4(b))。与L12-E相比,L12-single-E 的残差单元仅包含由一个ReLU,后跟一个卷积层,而L12-E- BN的残差单元增加了2个BN层,每个BN层插入到ReLU之前。我们观察到L12-single-E较L12 - e表现差,而L12 - E - BN表现最好,证明了批量归一化(BN)的有效性。
  • 外部因素:L12-E考虑外部因素,包括气象数据、节日事件和元数据。如果未考虑这些因素,则模型降级为L12。结果表明L12 - E优于L12,说明外部因素总是有益的。
  • 基于参数矩阵的融合:与L12-E不同,L12-E- noFusion不使用基于参数矩阵的融合。相反,L12 - E - noFusion使用一种直接的方法进行融合,即X_c^{(L+2)}+X_p^{(L+2)}+X_q^{(L+2)}。误差大大增加,这证明了所提出的基于参数矩阵的融合的有效性。

在BikeNYC上的结果

表3显示了在BikeNYC上我们的模型和基线的结果。与TaxiBJ不同,BikeNYC由两种不同类型的人群流组成,包括new-flow和end-flow(Hoang,Zheng,and singh2016)。我们使用了一个四残差单元的ST-ResNet,并与DeepST一样将元数据视为外部特征 (Zhangetal。2016)。与这些基准结构相比,ST - ResNet的误差相对较低,从14.8%到37.1%,表明所提出的模型在其他流量预测任务上具有良好的泛化性能。

相关工作

人群流量预测。以前有一些流行的工作是根据人的历史位置来预测个人的运动(Fanetal.2015;Songetal.2014)。他们主要预测的是数百万甚至数十亿个人的流动轨迹,而不是该地区聚集的人群流量。这样的任务可能需要巨大的计算资源,对于公共安全的应用场景并不总是必需的。其他一些研究人员旨在预测道路上的旅行速度和交通量(Abadi, Ra jabioun和Ioannou, 2015;Silva、Kang和Airoldi 2015;Xu et al. 2014)。大多数预测的是单个或多个路段,而不是全城市范围的路段。最近,研究人员开始关注城市尺度的交通流预测(Hoang, Zheng, and Singh 2016;Li et al. 2015)。这两种工作的不同之处在于,所提出的方法自然地关注单个区域而不是城市,并且它们没有使用基于网格的方法对城市进行划分,而这种方法需要一种更复杂的方法来寻找不规则区域。

深度学习。CNN已经成功地应用于各种问题,特别是在计算机视觉领域(Krizhevsky, Sutskever, and Hinton 2012)。残差学习(He et al. 2015)使这样的网络具有非常超深的结构。循环神经网络(RNN)已成功用于序列学习任务(Sutskever, Vinyals和Le 2014)。长短期记忆网络(LSTM)的加入使RNN能够学习长期特征的时序依赖。然而,这两种神经网络都只能捕获空间或时间依赖。最近,研究人员结合上述网络,提出了一种卷积LSTM网络(Xingjian et al. 2015),可以模拟学习空间和时间依赖关系。这样的网络不能模拟非常长时间的短期依赖关系(例如,周期和趋势),并且随着深度的增加,训练会变得更加困难。

在我们之前的工作(Zhang et al. 2016)中,针对时空数据提出了一种基于深度神经网络的通用预测模型。为了有效地对特定的时空预测(如城市范围内的人群流量)进行建模,本文主要提出采用残差学习和基于参数矩阵的融合机制。数据融合方法的研究综述可以参见(Zheng 2015)。

总结与展望

本文提出了一种新的基于深度学习的模型,用于根据历史轨迹数据、天气和事件预测城市每个区域的人群流量。在北京和纽约两类人群流数据上进行实验,取得了明显超过6种基准模型的效果,验证了该模型的有效性,更适用于人群流量预测。代码和数据集已发布在:https://www.microsoft.com/en-us/research/publication/deep-spatio-temporal-residual-networks-for-citywide-crowd-flow-prediction(注:此处链接有效,但GitHub上的Repository已经找不到了)。在未来,我们将考虑其他类型的流量(例如,出租车/卡车/公交车轨迹数据、手机信号数据、地铁刷卡数据),并使用所有它们来生成更多类型的流量预测,并通过适当的融合机制对所有这些流量进行总体预测。

引用

Abadi, A.; Rajabioun, T.; and Ioannou, P. A. 2015. Traffic f low prediction for road transportation networks with limited traf f ic data. IEEE Transactions on Intelligent Transportation Systems 16(2):653–662.

Chollet, F. 2015. Keras. https://github.com/fchollet/keras.

注:原文为AAAI论文,地址为:Deep Spatio-Temporal Residual Networks for Citywide Crowd Flows Prediction| Proceedings of the AAAI Conference on Artificial Intelligence

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值