时空图卷积神经网络(STGCN):一个用于交通预测的神经网络框架

论文简介

北大发表在IJCAI 2018的一篇论文,论文题目:Spatio-Temporal Graph Convolutional Networks: A Deep Learning Framework for Traffic Forecasting,谷歌学术被引量296。

论文背景

实时交通预测是一个重要而复杂的问题,因为其不仅存在高度非线性和复杂的交通流,传统的预测方法经常忽视了时间和空间上的依赖。
交通预测研究中,通常选择速度、流量、密度来显示和监视当前的交通状态,根据预测的长度,可以分为短期交通预测,例如未来5分钟~30分钟的车辆量;中长期交通预测,即大于30分钟的预测。以往的研究工作主要可以分为以下几类:
时空图卷积神经网络(STGCN):一个用于交通预测的神经网络框架_第1张图片
以上工作存在的问题,基于CNN的方法只能网格状的欧式空间数据上进行特征提取,用RNN对时间进行迭代建模,耗时长且会带来错误累积问题。
这里简单介绍一下ConvLSTM,ConvLSTM是结合了卷积核LSTM的一个模型可以对网格状时空数据序列进行建模,其核心是把LSTM门控中的全连接换成了卷积连接,如公式所示
FC-LSTM(LSTM)
时空图卷积神经网络(STGCN):一个用于交通预测的神经网络框架_第2张图片
ConvLSTM公式,其中*代表的是卷积操作
时空图卷积神经网络(STGCN):一个用于交通预测的神经网络框架_第3张图片
两者的不同点是传统LSTM是1D张量,ConvLSTM的输入是3D张量。实际上,传统FC-LSTM的输入、输出和隐藏状态也可以看作是后二维为1的三维张量。从这个意义上说,FC-LSTM实际上是ConvLSTM的一个特例,它的所有特性都位于一个单元上。

解决的科学问题

交通预测属于时间序列问题的一种,给定前t个时刻的历史数据,来预测未来一个或多个时刻。本文预测的是交通速度,给定t-M+1到t时刻的历史数据,预测t+1到t+H的速度,vt是由所有结点的速度组成的向量。
在这里插入图片描述
本文使用的是美国加州PeMSD7数据集,共有228个节点,代表路上的228个传感器,可以监测速度和车流量。在图上定义了交通网络,重点研究了结构化交通时间序列,文章的输入数据格式如下:
时空图卷积神经网络(STGCN):一个用于交通预测的神经网络框架_第4张图片
vt是t时刻的输入,是一个由多个节点组成的无向图,在这里插入图片描述
Vt是有限的节点集合,代表了图中的节点,用来监视每个节点的速度,ε代表结点之间的边集合,显示了节点之间的连接性W是邻接矩阵的权重。

算法框架

考虑到之前的CNN卷积网络只适用于规则的网格结构数据,不能对图进行建模,本文首次将图卷积应用到交通预测问题上。文章提出了一个名为STGCN的框架,由多个时空卷积模块组成,每个模块的结构如三明治,有两个门控序列卷积层和中间的一个空间图卷积模块,下图从左至右表示了网络的组成结构
时空图卷积神经网络(STGCN):一个用于交通预测的神经网络框架_第5张图片
Temporal Gated-Conv用来捕获时间关联,Spatial Graph-Conv用来捕获空间关联,其中,Temporal Gated-Conv又一个1-D Conv和一个GLU组成,GLU全称为门控线性单元,下面的公式表示一个没有非线性函数的卷积层输出经过sigmod非线性激活函数的卷积层输,W、V分别为不同的卷积核,即有激活函数的卷积就是所谓的门控机制,其控制了X*W+b中哪些信息可以传入下一层
GLU参考
GLU
空间特征
文章指出,因为对数据的网格性建模,以往的2D卷积只能捕获到局部的特征,而忽视了交通路网的连通性和全局性。本文直接使用图结构数据在空间域上进行高阶特征提取,使用的是切比雪夫多项式近似,切比雪夫图卷积公式如下:
在这里插入图片描述
K是图卷积核大小, T k T_k Tk是拉普拉斯矩阵的多项展开近似, Θ k \Theta_k Θk是多项式系数,最终带有C个channel的数据的图卷积可以表示为
在这里插入图片描述
C i C_i Ci C o C_o Co是输入和输出的特征图的大小,输入是包含了M帧的道路图,每一帧可以由一个矩阵表示,维度为nxC,n代表n个节点,C代表特征维度,例如第i列的 C i C_i Ci维度代表节点i的第 C i C_i Ci维度特征,本文中 C i = 1 C_i=1 Ci=1,对于M个时间步,其输入数据维度为M×n× C i C_i Ci
时间特征
文章指出RNN因其线性结构和复杂的门控机制遭受时间迭代计算耗时长的问题,使用完全的Gated CNN提取时交通流间轴上的动态行为,使用这种结构可并行,使用多层CNN堆叠,越高层的CNN感受域越大,捕获的时间信息越多,且CNN一层之间的CNN没有隐藏状态的输出依赖,因此可以并行化。Temporal-Conv结构如下图所示
时空图卷积神经网络(STGCN):一个用于交通预测的神经网络框架_第6张图片
使用了一个宽度为Kt的卷积来提取Kt-1的时间特征,对于图G中的每个节点,时间卷积不加填充地搜索输入元素的Kt邻域,从而使序列长度每次缩短Kt-1,一个输入维度为M×Ci的序列经过大小为Kt ×Ci × 2Co的卷积核后输出维度为M-Kt+1 × 2Co,非线性门也有助于通过叠加的时间层来扩展整个输入场,此外文章还在叠加的时间卷积层之间加上了残差连接(这个应该是用来加速训练和防止梯度消失)。门控机制保留了非线性能力,可以控制有多少信息传给下一层。
ST-Conv的输入和输出都是3D的张量,输入M×n× C l C^l Cl,这三个维度,输出(M-2(Kt-1))×n × C l + 1 C^{l+1} Cl+1,我们可以看到,输出之后的时间维度变少了由M变为M-2(Kt-1),文章在输出加了一个时间卷积层将最后一层的ST-Conv block的输出映射到单步预测输出

损失函数使用的是二范数损失,v(·)代表模型预测, v t + 1 v_{t+1} vt+1代表下一时刻的真实值,
在这里插入图片描述

实验

文章在BJER4和美国加州高速公路数据集PeMSD7上进行实验,前者有12条道路,每五分钟收集一次车速,后者也是每五分钟产生一次数据,有228个结点。PeMSD7的邻接矩阵基于节点(传感器)之间的距离构建,
在这里插入图片描述
σ是控制W分布的阈值,ε为控制邻接矩阵稀疏性的阈值。
效果是优于其他baseline,最后两个结果说明多层的Cheb卷积优于一层的图卷积(GCN)
时空图卷积神经网络(STGCN):一个用于交通预测的神经网络框架_第7张图片
训练时间上也是远远少于RNN类似的结构GCGRU
时空图卷积神经网络(STGCN):一个用于交通预测的神经网络框架_第8张图片

总结

文中关于切比雪夫图卷积公式还有些没有看明白,文章完全使用卷积结构捕获空间和时间特征,加快了训练过程,其时空卷积模块结构类似三明治,上下是时间卷积,中间是空间卷积。捕获时间的结构GLU 卷积Gated CNNs可以借鉴,用于代替RNN,可以减少训练时间。时空卷积块结合了图卷积和门控时间卷积,能够提取出最有用的空间特征,并连贯地捕捉到最基本的时间特征。

你可能感兴趣的:(【交通预测论文阅读】,深度学习)