写在前面
下面这篇文章的内容主要是来自发表于Applied Intelligence 的一篇文章《Deep spatial-temporal networks for crowd flows prediction by dilated convolutions and region-shifting attention mechanism》。这篇文章提出了一种深度时空网络模型框架,其中结合了扩张(空洞)卷积以及区域注意力机制,使得模型可以捕捉数据的远距和近距空间特征,以及数据在不同时间周期下的时间特征。实验用到了人流量预测数据集,实验验证了提出的模型具有较好的预测效果。原论文在文末进行获取。
1
摘要
随着深度学习在一系列复杂非线性问题上取得成功,通过神经网络进行流量预测越来越受到关注。通常情况下,卷积神经网络(CNN)和递归神经网络(RNN)常被用来建立时空依赖性模型。然而,在流量预测领域中仍存在两大挑战。首先,我们很难在训练模型的过程中通过深度局部卷积来同时捕捉邻近和远距的空间依赖关系。其次,数据在不同周期下的模式在每个不同的区域都有动态的变化,所以不是严格的周期性的。
为了解决上面提到的这些问题,文章的作者提出了一种新的深度学习模型,称为Local-Dilated Region-Shifting Network (LDRSN)。LDRSN结合了局部卷积和扩张卷积来学习附近和远处的空间依赖关系。在此基础上,作者还提出了一种新的区域注意机制来对随数据在区域中的变化进行建模。
2
模型介绍
在这个部分中,我们将对文中提出的模型进行介绍。由于文中的模型是用于交通流量预测的,因此整个问题可以被定义为通过给定的历史数据序列
来预测下一时刻的数据
。
作者提出的模型的整体架构如下所示,其中,卷积部分用于捕捉数据的空间依赖性,卷积LSTM用于处理时序信息。
首先,整个城市作为一个图像,通过将交通数据的流入和流出整合到一个两通道图像矩阵中。然后将流矩阵分别输入到局部卷积模块和扩张卷积模块中,以建立近距空间依赖和远距空间依赖的模型,两个模块的合并结果作为数据的空间特征。进而,卷积LSTM被用于数据的短期和长期依赖关系。之后,一种区域注意机制用于在长期时间依赖中学习各个区域的时间特征变化。最后,两个时域模块的输出串联起来,再经过一个1×1的卷积层和tanh函数得到最终的预测。下面针对空间和时间的模块对模型的细节进行介绍:
局部扩张空间网络
在现有的方法中,仅通过一些局部卷积来捕获邻近区域之间的空间依赖关系是一种常见的做法。但是,这种方法忽略了远距区域之间的空间相关性。临近区域是紧密相关的,而远处的区域也同样通过一些交通工具,如汽车和地铁,来间接建立联系。此外,具有相同功能的区域可能具有相似的模式。例如,属于居住区的区域通常具有相似的人流特征。在之前的工作中,深度卷积已经显示了它捕捉远距离空间依赖性的能力。但是,深度卷积后的模型很难训练。因此,作者考虑分别学习邻近区域之间的强相关性和遥远区域之间的弱相关性,提出了一个局部模块来捕获邻近的空间依赖性,以及一个扩展模块来捕获远距的空间依赖。最后通过合并两个模块的输出来获得空间表示。
如模型的整体架构图中,作者通过了局部卷积来捕捉数据的邻近空间特征,其中用到了三个3×3的卷积层,即:
为了捕获远距离的空间依赖关系,作者还设计了一个扩张模块,通过一个3×3的扩展卷积堆栈来学习远距离区域之间的相互作用。其中,3×3扩张卷积层定义为:
这里用到扩张卷积的好处是,例如我们使用局部卷积的话,通过5层卷积才能得到的相关性信息这里只需要通过5-dilated的扩张卷积就可以实现,具体如下图所示。因此,扩张卷积显然可以在不增加卷积层的情况下有效地捕捉到不同距离空间的依赖关系。
另外,为了处理不同距离区域之间的相关性,作者基于残差结构设计了几个具有不同扩张因子的单元。具体结构如下图所示。
这个过程定义为:
这样,近距空间依赖就由局部模块捕获,远距区域之间的关联由扩张模块处理。参数矩阵动态调整两种空间的依赖关系,定义为:
区域转移时间网络
在时间网络中,作者考虑了两种时间特性,即短期时间特性和长期时间特性。下图显示了NYC-Taxi数据集中两个不同区域的时间依赖关系。
下图描述了纽约出租车数据集上每周所有时间间隔的人群流量。长期时间相关性的周期性可以很明显地观察到。例如,每天的高峰时间间隔是相似的。
因此,作者这里通过了一个短期时态模块和一个长期时态模块来对时间依赖性进行建模。其中,短期时态模块如前面的模型整体图中所示,是由卷积LSTM来捕捉短期时间依赖,卷积LSTM的公式如下:
考虑长时间周期下伴随形态偏移的问题会更加复杂,而交通序列数据由于不具有严格的周期性,所以而该问题在此类型数据中普遍存在。现有的工作已经考虑了时间转移采取了周期性注意机制。但是,它忽略了时间漂移随地区的不同而不同。如下图显示了NYC-Bike数据集上一周内两个不同区域的日峰值。
显然,交通序列的日高峰存在于一天的不同时间。此外,这两个区域的时间漂移也不同。因此,文章作者提出了一个区域层面的注意机制来处理长期时态模块中各区域的时间漂移。具体地,作者先是在数据的日周期下中选取了几个时间区间,以得到每个区间中的时序数据,并以这个区间前后相邻的区间作为其时序漂移特征。例如,预测的时间区间是10:00-11:am,则选取的时间区间是9:00-10:00am,10:00-11:am,11:00-12:am。进而,通过卷积LSTM来对每个区间漂移模式进行特征提取,之后采用区域级注意机制来处理长时间周期的时间漂移。与以前将所有区域的时间漂移考虑为相同的方法不同,LDRSN是在区域层次上学习的。公式定义为:
最后,通过下面的Loss函数来训练模型的所有参数:
3
实验验证
文中的实验部分用到了两种真实数据集,即NYC-Bike和NYC-Taxi,它们都是常用的流量预测数据集。由于流量预测实际是一个时间序列的回归问题,因此文中的实验部分用到了下面的基本指标用于对模型的效果进行评估:
文中的实验部分用到了很多常用的深度学习方法进行对比,其对比的实验结果如下表所示,两个表格分别表示模型在两种数据集下的实验结果。可以看出作者提出的LDRSN实现了最小的MAE,MAPE以及RMSE指标。
4
总结
这篇文章中提出了一种用于人群流预测的深度学习网络LDRSN。LDRSN通过局部卷积获取邻近区域的空间依赖性,通过基于残差结构的扩展卷积处理远处区域之间的相关性。因此,这个模型能够学习附近和远处的空间依赖性。此外,作者还提出了通过区域层面的注意机制来学习长期周期依赖下各区域的时间转移。最后,采用两个真实人群流数据集来测试所提出的模型,并与几种深度学习方法和提出的模型进行比较。结果表明,LDRSN在人群流预测中具有较高的预测精度。
尽管这是一篇用于人群流量预测的文章,但流量预测问题同金融时间序列预测一样属于一个回归的问题,所以这篇文章中提出的一些方法和研究思路同样可以为我们研究金融时间序列预测提供一些借鉴和思考。如其中的考虑长短周期之间的依赖和相似性,或者大周期中的小周期的形态转移等等。
参考文献:
Tian C , Zhu X , Hu Z , et al. Deep spatial-temporal networks for crowd flows prediction by dilated convolutions and region-shifting attention mechanism[J]. Applied Intelligence, 2020, 50(10):3057-3070.
关注《人工智能量化实验室》公众号,后台发送050可获取原论文。
让我知道你在看
领取专属 10元无门槛券
私享最新 技术干货