网站首页 > 技术文章 正文
文章信息
《Attention Based Spatial-Temporal Graph Convolutional Networks for Traffic Flow Forecasting》,收录于国际人工智能会议(AAAI-2019),作者是北京交通大学的郭晟楠,宋超,冯宁,以及林友芳、万怀宇老师。
论文下载地址:https://aaai.org/ojs/index.php/AAAI/article/download/3881/3759
GitHub代码地址:https://github.com/wanhuaiyu/ASTGCN
摘要
由于交通流一般具有高度的非线性和复杂的模式,因此交通流量预测是一个很有挑战性的问题。论文作者认为现有的预测方法缺乏对交通的时空动态相关性建模的能力,因此作者提出了一种基于注意力机制的时空图卷积网络模型(ASTGCN)来解决交通流预测问题。该模型主要由三个独立组件构成,他们分别对交通流的邻近,每日,每周这三种时间特性进行建模,同时每个组件分为两个部分,其中时空注意力机制用于捕获交通数据中的时空相关性,时空卷积捕获空间模式以及时间关系。
理论概述
在连续的空间中,在邻近地点进行的交通数据变化和时间不是独立的,它们互相动态关联。如图1所示为交通流的时空相关性,两点之间的线条的粗细表示互相之间的关联强度,颜色越深,影响越大。图1(a)从空间角度说明不同路段对于A点有着不同的影响,同时同一路段随着时间的推移影响程度也会变化,图1(b)从时间角度说明不同路段的历史数据对A点的未来流量有着不同的影响。
贡献
作者提出了基于注意力机制的时空图卷积网络(ASTGCN),用于对交通网络中每个位置的交通流进行集中预测。该论文所做出的贡献有:
- 使用了时空注意力机制进行动态相关性的学习,其中空间注意力捕捉不同位置之间的复杂空间关系,时间注意力用于捕捉不同时间之间的动态相关性;
- 设计了新的时空卷积模块,它能从原始的交通网络图结构中获取空间特征的图卷积和描述时间依赖关系的时间卷积。
问题定义
交通路网结构定义为,其中表示N个节点,E是一组边集,A表示图的邻接矩阵,每个节点有F=3个观测值,分别为流量,车速和时间占有率。表示在交通图G中每个节点有f个时间序列,表示节点i在时间t时刻的第c个属性的值,表示节点i在时间t时刻的所有值,表示所有节点在t时刻的所有值,表示在未来t时刻的流量值。
整个问题描述可以表示为给定X,预测未来个时间片的交通流量序列,其中。
模型介绍
ASTGCN的模型框架按照时间关系的不同分为了三个部分,分别提取了recent,daily-periodic和weekly-periodic三种关系。其中recent表示同一天内邻近的几个小时,daily表示最近几天与预测时间段相同的时间序列,weekly表示最近几周与预测时间段相同的时间序列。这三部分的网络结构完全相同,均由多个时空块与全连接层组成,其中每个时空块由一个注意力层和一个时空卷积层组成。最终将三个分别训练的结果进行融合后得到最后的预测结果。
1、时间序列
如图3所示为时间序列的分割示例,预测范围为Tp长度,在时间轴上截取长度为Th、Td和Tw的三个时间序列片段,分别作为相邻、日周期和周周期分量的输入,其中Th、Td和Tw都是Tp的整数倍。由于交通拥堵的形成和扩散是渐进的,因此刚刚过去的交通流必然会对未来的交通流产生影响,即recent的意义。由于人们日常生活的规律性,交通数据可能呈现出重复的模式,比如每天的早高峰,因此可以使用daily部分来对交通数据的日周期性进行建模。同时在通常情况下,每周一的交通模式与历史上周一的交通模式有一定的相似性,但可能与周末的交通模式有很大的不同,因此weekly部分可以用于捕获交通数据中的周周期特征。
其中这三部分序列可以分别表示为:
2、时空注意力
在空间维度上,不同位置的交通状况相互影响,因此作者使用注意力机制自适应地捕捉空间维度中节点之间的动态关联性。在时间维度上,不同时间段的交通状况之间也存在相关性,因此同样,作者使用注意机制来自适应地赋予数据不同的权重。
如下两个公式分别是空间注意力矩阵和时间注意力矩阵的计算公式,其中表示第r个时空块的输入,C表示特征通道,在论文中即表示流量、速度和时间占有率这三个观测值,T代表输入的T个时间片。
3、时空卷积
通过时空注意力层后,不同的节点信息被赋予了不同的权重,越重要的信息得到的权重就越大。调整后的数据被输入到后面的时空卷积模块中。在该模块中,空间维度的图卷积负责捕获来自邻近节点的空间依赖性,时间维度的一维卷积捕获来自邻近时间的时间依赖性。
其中图卷积部分,文中作者所采用的方法是基于谱图的,即使用切比雪夫多项式的近似,并计算图拉普拉斯矩阵。
在时间维度上,作者使用了一个普通的卷积层进行融合近邻时间片的信息,
最后,通过多个时空块的堆叠,可以进一步提取更大范围的时空关联性。
4、特征融合
由于不同类型时间序列训练后得到的对当前预测结果的权重不同,因此融合权重需要从历史数据中学习。
总结
论文作者将时间序列按照不同类别分为了recent,daily和weekly三种,然后分别对这三种序列进行单独计算,最后按照不同的权重进行融合,这样的操作细分了时间序列,对模型的准确性有不小的帮助。其次作者在时空卷积操作前计算了注意力矩阵,然后将其和图卷积的切比雪夫多项式相乘,赋予了节点不同信息不同的权重。同时在未来还可以考虑外部影响因素,如天气,事件等,进一步提高预测精度。
- 上一篇: 注意力机制可解释吗?这篇ACL 2019论文说
- 下一篇: 图解机器学习中的自注意力机制
猜你喜欢
- 2024-09-24 代码详解:从头开始学习注意力机制
- 2024-09-24 深入理解注意力机制
- 2024-09-24 图解机器学习中的自注意力机制
- 2024-09-24 注意力机制可解释吗?这篇ACL 2019论文说
- 2024-09-24 手绘讲解~Attention注意力机制
- 2024-09-24 注意力机制及其理解
- 2024-09-24 包学包会,这些动图和代码让你一次读懂「自注意力」
你 发表评论:
欢迎- 02-20利用神经网络模型检测摄像头上的可疑行为
- 02-20直击心灵:高频核心听力你了解吗?_高频听力的正常范围值是多少
- 02-20YOLOv8 POSE+XGBoost进行人体姿态检测
- 02-20100个篮球英文术语详细解释,从此听懂NBA解说
- 02-20最全紧固件中英文对照,外贸必备词典一
- 02-20带你开发一个视频动态手势识别模型
- 02-20详细介绍一下Java基础中HashMap如何进行扩容操作?
- 02-20GTX 1070 Ti显卡评测:你会购买哪一款?
- 最近发表
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)