0 abstract

由于交通数据极强的非线性和复杂性,传统方法很难进行中长期的交通预测。

我们提出了STGCN结构来解决交通领域的预测问题。我们的模型建立在卷积之上,有更快的训练速度和更少的参数。

1 introduction

交通预测问题,根据预测时间片的长度,可以分为:短期(5~30分钟)和长期(30分钟以上)。大部分统计方法在短期预测上效果很好,但是因为交通流数据的不确定性和复杂性,这些模型在长期预测上效果很一般。

早期关于中长期交通预测的研究主要集中在动态建模和数据驱动的方法上。

数据建模:

使用数学工具(比如微分方程)和物理知识来模拟交通场景,解决交通问题

但这需要复杂的系统化的编程,还需要大量的算力。

同时,不切实际的假设和简化很有可能会使得预测的精准度不足

因此,随着交通数据收集和存储技术的进步,越来越多的研究侧重于数据驱动

数据驱动:

又分为传统统计学方法和机器学习方法

在时间序列分析问题里面,ARIMA和它的变体是很经典的一类方法。但是这种模型受限于对于时间序列平稳性的假设,同时它没有把时空相关性纳入考虑范围。因此,这种方法没法解决高度非线性的交通流量预测问题。

机器学习方法有KNN,SVM,NN等

深度学习方法

深度信念网络DBN、迭代自动编码器SAE都曾用作交通预测,但是,这些模型都无法同时提取交通数据的时间和空间特征。

之后出现了CNN+RNN的模型来同时考虑时间和空间特征,但是这些模型只能处理网格化交通路网(现实生活中网格状路网是很少,甚至没有的),同时RNN还有误差累积以及训练较慢、较难计算的问题。

为了解决这一问题,本文提出了使用GNN代替CNN,使用卷积代替RNN的想法来建立一个完全由卷积组成的神经网络。

2 Preliminary

2.1 图上的交通预测

根据之前的M个时刻的交通观测数据,预测之后H个时刻的交通数据:

其中 表示t时刻,n个交通观测点的观测结果

我们记交通网络图为: 

其中,Y表示时刻t的节点集合,ε是边集合,W代表加权的邻接矩阵

2.2 谱图卷积

谱图卷积通过图傅里叶变换将卷积操作变换到谱域内进行操作。

我们记*g为谱图卷积算子,Θ为谱图卷积核,那么我们有:

其中 标准化拉普拉斯矩阵

In是单位矩阵

​是度矩阵,

是L的特征值组成的对角矩阵

傅里叶基是标准化拉普拉斯矩阵L的特征向量组成的矩阵

在谱域上的图卷积核也是一个对角矩阵

3 模型结构

STGCN 有多个时空卷积块组成,每一个是一个三明治结构,由两层序列卷积层和一层空间图卷积层组成

3.1 提取空间特征的图卷积

3.1.1 切比雪夫多项式近似

我们用关于的多项式来近似图卷积核Θ,其中 是L的特征值组成的对角矩阵

其中:K表示距离中心节点最远的卷积范围

(λmax表示拉普拉斯矩阵L最大的特征值 )

于是,切比雪夫多项式近似的图卷积可以写成:

其中 表示关于的k阶切比雪夫多项式

通过切比雪夫多项式的近似,谱图卷积的复杂度可以降低到(ε是边集合)

3.1.2 一阶近似

一个层级的线性方程可以由堆叠多个使用拉普拉斯矩阵的一阶近似的局部图卷积层来达到相同的效果(用深度换广度)。

由于在神经网络中,参数可以放大缩小,可以归一化,所以我们可以进一步假定

因此,我们可以进一步将谱图卷积简化 (相当于上面切比雪夫多项式近似的时候,K取2,也就是只考虑1阶邻居):

是谱图卷积核公用的参数。为了约束参数并为了稳定数值计算 ,θ0和θ1被一个参数θ代替:

我们再令

那么我们有:

堆叠K-1个一阶近似的图卷积可以获得和平行的K阶卷积相同的效果,所有的卷积可以从一个顶点的K-1阶邻居中获取到信息。

3.1.3 图卷积的泛化

上定义的谱图卷积算子*g可以延伸到多维度的标量中(每一个观测点的交通数据不再是一维而是多维)

对于每个观测点有Ci个维度的交通信号数据,泛化的谱图卷积可以定义为:

其中,切比雪夫多项式的系数有个,(Ci,Co分别表示输入和输出的大小)

那么对于谱图卷积来说, 

回到我们的问题,我们交通数据X的输入有M个时间片,交通路网途中一共有n个点,每个点有Ci维特征(在我们后续的数据中,Ci=1),即

3.2 提取空间特征的门控CNN、

尽管基于RNN的模型被广泛应用于时间序列分析任务中,RNN在交通预测领域仍然面临着很多问题(迭代很费时间、复杂的门控机制、对于数据的动态变化相应较慢)

相反地,CNN计算快,结构简单,可以并行,对于之前的步骤依赖性小。

于是我们在时间轴上应用卷积操作来捕捉交通流数据的时间动态特征。

如图所示,时间卷积网络包括了一个一维的因果卷积网络(卷积核大小为Kt)和一个门控线性单元GLU作为非线性激活函数。

对于图G中的每一个点,时间卷积操作考虑它的Kt个邻居的信息。->每层时间卷积操作可以使得交通时间序列数据缩短Kt-1

时间卷积层每一个点的输入可以看成是  (M——时间片长度,Ci每个点属性的维度值)

时间卷积核,用来将输入Y映射到输出 上(P,Q是相同通道)

因此,门控时间卷积可以写成

这里 P和Q是GLU门的两个输入

代表对应位置元素相乘的哈达玛积

控制了哪些P是重要的,哪些P目前是不重要的

相似地,时间卷积也可以泛化到三位变量

3.3 时空卷积块

每一个时空卷积快最后都会过一个层归一化,来放置过拟合

对于块l来说,它的输入为

它的输出为  (每一个时间卷积减少Kt-1维)

整体ST卷积块的计算流程为:

其中是第一个和第二个时间卷积层的卷积核

是空间谱图卷积层的卷积核

在迭代了两个ST卷积块之后,我们使用了一个额外的时间卷积层,以及一个全连接层,来得到输出结果 

然后我们用一个线性变换获得每个点的预测速度,是权重向量,b是偏差

我们使用L2 loss来衡量我们模型的优劣

这里Wθ是所有模型中可训练的参数

v(t+1)是实际的交通速度

3.4 STGCN总结

  • STGCN可以用来处理结构化时间序列,不仅仅在交通领域,更多其它时空数据挖掘领域的数据都适用

  • STGCN使用时间和空间上的卷积操作,这可以更好地捕捉时间和空间上的特征

  • 由于模型是由完完全全的卷积结构组成,所以我们可以并行处理他,有更少的参数,更快的训练速度

4 实验部分

4.1 数据预处理

邻接矩阵由观测点之间的距离计算而得:

ε和σ都是控制邻接矩阵稀疏程度的阈值

邻接矩阵的可视化见上图(右)

4.2 实验结果

STGCN(Cheb)中的Kt设置为3

STGCN的预测表现是很不俗的

传统的统计和机器学习方法可能在短期预测中效果不错,但是在中长期预测中,因为误差累积、缺少空间信息、没有记忆等问题,效果不理想

ARIMA效果是最差的,因为它不能处理复杂的时空数据据

深度学习方法比机器学习方法效果要好

与此同时,模型的训练时间是很短的:

交通预测论文笔记:Spatio-Temporal Graph Convolutional Networks: A Deep Learning Frameworkfor Traffic Forecast相关推荐

  1. Spatio-Temporal Graph Convolutional Networks: A Deep Learning Framework for Traffic

    IJCAI 2018,大体思路:使用Kipf & Welling 2017的近似谱图卷积得到的图卷积作为空间上的卷积操作,时间上使用一维卷积对所有顶点进行卷积,两者交替进行,组成了时空卷积块, ...

  2. 【论文笔记】Factorizable Graph Convolutional Networks

    文章目录 1. Abstract 2. Method 2.1 Disentangling Step 2.2 Aggregation Step 2.3 Merging Step 3. 总体架构 4. 超 ...

  3. 论文阅读_Spatial Temporal Graph Convolutional Networks for Skeleton-Based Action Recognition

    Abstract 人体骨架动力学为人体动作识别提供了重要信息.传统的骨架建模方法通常依赖于手工制作的部件或遍历规则,从而导致表达能力有限和泛化困难.在这项工作中,我们提出了一种新的动态骨架模型,称为时 ...

  4. 【论文阅读】Spatio-Temporal Graph Convolutional Networks:...Traffic Forecasting[时空图卷积网络:用于交通预测的深度学习框架](1)

    [论文阅读]Spatio-Temporal Graph Convolutional Networks: A Deep Learning Framework for Traffic Forecastin ...

  5. 【论文笔记1】von Mises-Fisher Mixture Model-based Deep learning: Application to Face Verification

    [论文笔记1]von Mises-Fisher Mixture Model-based Deep learning: Application to Face Verification 1 介绍 人脸识 ...

  6. 交通预测论文笔记《Attention Based Spatial-Temporal Graph Convolutional Networks for Traffic Flow Forecasting》

    AAAI2019 0 摘要 交通流数据通常有很高的非线性和很复杂的特征.目前很多交通预测的方法缺乏对交通数据时空相关性的动态建模. 本文提出了一种基于注意力的时空图卷积神经网络(ASTGCN)来解决交 ...

  7. 论文笔记之:Graph Attention Networks

    Graph Attention Networks 2018-02-06  16:52:49 Abstract: 本文提出一种新颖的 graph attention networks (GATs), 可 ...

  8. 论文笔记:Group Equivariant Convolutional Networks

    Group Equivariant Convolutional Networks 1.四个问题 要解决什么问题? 对卷积神经网络进行扩展,并提出一个在特定的变换(旋转.平移等,也可表示为一个特殊的群) ...

  9. 论文笔记 EMNLP 2020|Graph Transformer Networks with Syntactic and Semantic Structures for Event Argument

    文章目录 1 简介 1.1 创新 2 方法 3 实验 1 简介 论文题目:Graph Transformer Networks with Syntactic and Semantic Structur ...

最新文章

  1. OSChina 周一乱弹 —— 程序员进阶之路
  2. 这个登上Nature封面的「群体学习」,无需中央协调员,比联邦学习更优秀
  3. 推荐几个复刻真实产品的开源项目!学起来!
  4. python 如何查看模块所有方法-如何查看python的模块
  5. windows+VS2017+opencv4.1.0环境配置
  6. python 内置模块:collections
  7. 命令行下载利器- Aria2
  8. oracle移动表所在的表空间,ORACLE移动表空间(原)
  9. python学习笔记1-基础语法
  10. python使用elasticsearch_python中使用ElasticSearch(二)
  11. 从RedisTemplate中获得Jedis实例
  12. 集群系统服务器,Web集群服务器及管理系统
  13. 前后台字符串进行交互
  14. 95-080-046-源码-启动-flink-daemon.sh
  15. benchmark如何测试mysql数据库_MySQL的benchmark函数
  16. 理解 Delphi 的类(十一) - 深入类中的方法[12] - 消息方法
  17. html同页框架间本地信息传递,[MUI] mui框架实现页面间传值
  18. Linux——shell脚本的基础篇(变量定义、变量种类、变量操作)
  19. 程序员快速记忆英文单词的专属诀窍
  20. php上传文件到指定文件夹

热门文章

  1. 路由器交换机命令总结
  2. 科研经验:一篇学术文章要写多久
  3. 计算当前日期是一年中的第几周
  4. [转] UML类图的几种关系总结
  5. #舍得Share#Flash Media Server4.5迅雷高速下载地址by lwxshow
  6. [翻译]Chameleon介绍(3) : 列表控件
  7. 软件回归测试及其实践
  8. Android 在本地程序res/raw中读取数据操作
  9. 算法提高课-搜索-最短路模型-AcWing 1076. 迷宫问题:bfs最短路、路径
  10. PAT甲级1083 List Grades:[C++题解]结构体、排序