交通预测一直是一个重要的问题,它涉及到交通运输系统的可靠性和效率。随着人工智能的发展,越来越多的研究者开始使用深度学习模型来解决这个问题。其中,基于Transformer的交通预测模型在近年来备受关注,因为它们具有优秀的建模能力和较好的预测准确性。


本文将介绍几个基于Transformer的交通预测模型,欢迎讨论。如有错误,也请指正。

目录

  • 1. STTN(2020)
  • 2. Traffic Transformer(T-ITS 2021)
  • 3. ASTGNN(TKDE 2021)
  • 4. MGT(Neurocomputing 2022)
  • 5. ASTTN(2022)
  • 6. PDFormer(AAAI 2023)
  • 参考

1. STTN(2020)

论文:[2001.02908] Spatial-Temporal Transformer Networks for Traffic Flow Forecasting

代码:GitHub - Lin956/STTNS: Spatial-Temporal Transformer Networks for Traffic Flow Forecasting

作者:Xu M, Dai W, Liu C, et al.

针对问题:

  1. 动态空间相关性:空间相关性随时间变化(实时的交通状况和交通流方向) <—— 设计了一种GNN变体,spatial transformer建模时变有向空间相关性;

  2. 长期时间相关性:长期时间相关性(短期<30min,长期>=30min)考虑得少,且过去自回归方法存在误差累积问题<—— 设计了 temporal transformer实现长期多步预测。

模型设计:

  • 所提出的STTN(Spatial-Temporal Transformer Network)由堆叠的时空块和预测层组成。每个时空块由一个空间transformer和一个时间transformer组成,共同提取上下文动态依赖的时空特征。时空块可以进一步堆叠,形成深层时空特征的深层模型。然后,预测层利用两个1 × 1卷积层聚合这些时空特征进行交通预测。

  • 在空间transformer中包含固定图卷积层(Fixed Graph,使用图卷积捕获平稳的空间依赖关系)、动态图卷积层(Dynamical Graph,使用多头自注意力捕获动态双向的空间依赖关系,节点特征用在前馈神经网络中)以及门控机制(融合上述固定与动态的空间特征)。

2. Traffic Transformer(T-ITS 2021)

论文:[2104.05163] Learning dynamic and hierarchical traffic spatiotemporal features with Transformer

代码:暂未找到

作者:Yan H, Ma X, Pu Z.

针对问题:

GNN的局限性:

  1. 难以获得完美的邻接矩阵:不能简单基于距离<——设计了全局编码器与全局-局部编码器分别提取全局空间特征和局部空间特征;
  2. 大部分邻接矩阵是固定的:交通流量会根据交通状况改变<——注意力机制实现动态捕获;
  3. 没有深度和等级:使用多个邻接矩阵的方法,大多都采用直接相加或拼接,没法学习不同层次的交通时空特征<——多个全局编码器和全局局部解码器块堆叠实现分层提取特征。

模型设计:

  • Traffic Transformer由两个主要部分组成。一个叫全局编码器,另一个叫全局-局部解码器。几个全局编码器和全局-局部解码器块堆叠起来,形成一个层次结构特征的深层模型。全局编码器和全局-局部解码器分别提取全局空间特征和局部空间特征。全局-局部解码器还融合了全局空间特征和局部空间特征。此外,时间嵌入块提取模型的时间特征。然后,位置编码和嵌入块帮助模型理解节点的绝对位置和相对位置。最后,一个Linear层聚合学习到的特征进行最终预测。

  • 全局与全局-局部的区分是使用K-hop邻接矩阵定义的mask忽略非局部节点来提取局部空间特征。这种多头注意是全局和局部空间特征的融合,其表现优于通过注意机制简单地添加或串联。

3. ASTGNN(TKDE 2021)

论文:Learning Dynamics and Heterogeneity of Spatial-Temporal Graph Data for Traffic Forecasting | IEEE Journals & Magazine | IEEE Xplore

代码:GitHub - guoshnBJTU/ASTGNN

作者:Guo S, Lin Y, Wan H, et al.

针对问题:

  1. 动态空间相关性<——时间趋势感知多头自注意力模块(卷积自注意力机制变体)与动态空间图卷积;
  2. 交通流数据的周期性<——输入张量拼接全局周期张量和局部周期张量;
  3. 空间异质性:静态空间特征不随时间推进而演变,但随空间的变化而变化(比如道路类型、POI之类的)<——在position embedding中附加静态特征信息。

模型设计:

该模型思想是直接在时间和空间维度用自注意力建模与相关的复杂动态性。整个架构跟经典的transformer是一样的。主要有三点不同:

1)position embedding包含时空两个维度

时间的与原Transformer的一致,空间的是首先通过无监督图嵌入技术学习节点的表示,然后将学习到的表示作为节点嵌入向量的初始化,再根据监督信号进行微调,最后应用GCN层进行拉普拉斯平滑,得到最终的空间位置嵌入矩阵。

2)多头注意力机制模块他重构成了自己的时间趋势感知多头自我注意力

使用1D卷积替代原本多头自注意力Q、K的线性投影。由于卷积运算通过将局部上下文作为输入来计算表示,因此模型可以了解隐藏在交通流数据中的局部变化趋势。

3)Feed-forward模块被替换成了动态空间图卷积

其思想是利用自注意机制动态计算节点间的空间相关性强度,即把静态邻接矩阵与前面注意力模块的输出空间相关性矩阵作点积,再GCN。

4. MGT(Neurocomputing 2022)

论文: Meta Graph Transformer: A Novel Framework for Spatial–Temporal Traffic Prediction

代码: GitHub - lonicera-yx/MGT

作者:Ye X, Fang S, Sun F, et al.

针对问题:

  1. 时空异质性:大多数基于注意力的方法有一个缺陷,即参数在所有位置和时间间隔中是共享的,因此节点之间的相关性仅取决于它们各自的特征,但不同节点不同时间交通相关性是不同的(STSGCN、AGCRN、GMAN、ASTGNN都有针对设计)<——将元学习融入多头注意力中以捕获时空异质性;
  2. 考虑各种类型的空间相关性:不同图解释节点之间的不同关系<——将多图(简单连通图、功能相似度图、起点-目的地OD图)用于空间特征学习,稀疏空间自注意力。

模型设计:

  • MGT采用编码器-解码器架构。编码器和解码器都使用跳过连接堆叠多个子层。利用Temporal Self-Attention (TSA),Spatial Self-Attention (SSA)和 Temporal Encoder-Decoder Attention (TEDA)三种注意层来学习时空相关性。所有注意层都使用Spatial–Temporal Embeddings (STEs)来执行Spatial–Temporal Heterogeneity-Aware (STHA) attention操作。 Transition Matrices (TMs)被SSA用来执行稀疏空间注意。采用自回归方法逐步预测未来交通状态。

  • TSA:为每个head创建一个带有隐藏层的多层感知器,取消多头自注意力共享参数机制;

  • SSA:通过element-wise将转移矩阵中的动态注意系数和静态值联合确定相邻节点的权值;

  • TEDA:该模块目的是自适应地参与沿时间维度的Encoder特征。Q来自Decoder,而K和V来自Encoder。随后K、V执行STS-guide的时间注意操作。

5. ASTTN(2022)

论文: [2207.05064] Adaptive Graph Spatial-Temporal Transformer Network for Traffic Flow Forecasting

代码:GitHub - yokifly/ASTTN_pytorch

作者:Feng A, Tassiulas L.

针对问题:

  1. 分别处理空间维度和时间维度数据的方法对直接建模跨时空效应可能是无效的:车祸会在会在一定时间后影响到周围路段<——使用局部时空图进行时空建模,并将关注范围限制为1跳空间邻居;
  2. 空间建模不准确<——使用自适应图来探索隐藏的相关性;
  3. 动态建模仍是挑战<——使用自注意力机制来建模图中的动态时空相关性。

模型设计:

它由输入层、时空嵌入层、具有残余连接的堆叠的ST注意块和输出层组成。模型的输入包括特征矩阵和底层图形结构. 每个ST注意块的输入和输出具有相同的尺寸以便于残差连接。嵌入层利用图结构对结构信息进行编码,并利用ST注意块计算局部MSA(multi-head self-attention)。

Local Spatial-Temporal Attention

如下图所示,在构建时空图Transformer时,可以考虑不同的注意力机制。带有颜色的项表示对应的两个节点(由行和列索引确定)将相互关注,不同的颜色对应于不同类型的attentions。本文所使用的的是Local st-attention与Adaptive st-attention。

Local st-attention

利用空间邻接性,通过将st-attention保持在空间1跳邻域内来降低注意力的复杂性,具体方法即Q、K点积缩放后得到的空间相关性矩阵再乘一个掩码矩阵。

Adaptive st-attention

使用两个可学习随机初始化的节点嵌入来计算自适应可学习邻接矩阵,随后对其应用局部注意力。

6. PDFormer(AAAI 2023)

论文:[2301.07945] PDFormer: Propagation Delay-Aware Dynamic Long-Range Transformer for Traffic Flow Prediction

代码:GitHub - BUAABIGSCity/PDFormer: [AAAI2023] A PyTorch implementation of PDFormer: Propagation Delay-aware Dynamic Long-range Transformer for Traffic Flow Prediction.

作者:Jiang J, Han C, Zhao W X, et al.

针对问题:

  1. 动态空间建模<——使用多头自注意力机制;
  2. 长距离空间依赖关系:两个距离较远的位置,可能反映了相似的交通模式<——通过不同的图掩蔽方法对局部地理邻域和全局语义邻域进行建模,使注意力更有侧重点;
  3. 交通流存在时间延迟:当一个地点发生交通事故时,需要几分钟才能影响到邻近地点的交通状况(与ASTTN的第一个问题差不多)<——设计了交通延迟感知特征转换模块,使用K-shape聚类的方式附加交通模式。

模型设计:

PDFormer模型由数据嵌入层、堆叠的 L个时空编码层和输出层组成。时空编码层包括三个核心组件:语义空间自注意力用来捕获距离远但功能相似的节点的空间相关性、带有延迟感知特征转换模块的地理空间自注意力模块用来建模距离近的节点的空间相关性并且考虑空间信息的传播延迟、时间自注意力模块用来捕捉动态和长时间模式。

语义空间自注意力

与ASTTN 的Local st-attention类似,都是在得出空间相关性矩阵后乘一个掩码矩阵,对于语义空间自注意力,掩码矩阵是使用动态时间规整(DTW) 算法计算节点之间历史交通流的相似度,每个节点选择相似度最高的K个节点作为其语义邻居,权值为1,否则为0。

地理空间自注意力模块

地理空间自注意力同样乘一个掩码矩阵,不同的是只有当两个节点之间的距离小于阈值λ时,权值为1,否则为0。

延迟感知特征转换模块

延迟感知特征转换模块的思想是使用K-shape从历史交通数据中识别出一组具有代表性的短期交通模式,然后比较每个节点的历史序列与提取的模式集,将相似模式的信息融合到每个节点的历史序列表示中。

考虑到交通流的延迟传播在远处影响很小,所以只作用在地理空间自注意力模块的Key矩阵中。


参考

  1. Wen Q, Zhou T, Zhang C, et al. Transformers in time series: A survey[J]. arXiv preprint arXiv:2202.07125, 2022.

  2. ChatGPT

  3. Spatial-Temporal Transformer Networks for Traffic Flow Forecasting_sttns_爱学习的吨吨a的博客-CSDN博客

  4. [论]Learning Dynamic and Hierarchical Traffic Spatiotemporal Features with Transformer-CSDN博客

  5. 基于注意力时空图神经网络的交通预测_当交通遇上机器学习的博客-CSDN博客

  6. Meta Graph Transformer: A Novel Framework for Spatial–Temporal Traffic Prediction_爱学习的吨吨a的博客-CSDN博客

  7. 论文笔记:Adaptive Graph Spatial-Temporal Transformer Network for Traffic Flow Forecasting_asttn_雪色冥茫的博客-CSDN博客

  8. 【交通数据预测】PDFormer (AAAI 2023)

基于Transformer的交通预测模型部分汇总【附源代码】相关推荐

  1. 交通状态预测 | Python实现基于Transformer的交通流预测

    交通状态预测 | Python实现基于Transformer的交通流预测 目录 交通状态预测 | Python实现基于Transformer的交通流预测 基本介绍 模型构建 程序设计 学习总结 基本介 ...

  2. 基于Leaflet实现图标旋转角度的效果(附源代码下载)

    前言 本文将详细描述如何基于Leaflet开发库实现Marker图标旋转角度的应用效果,如下图所示. 一.开发技术 Leaflet开发库:Leaflet 1.9.3 图标旋转插件:下载地址为:Leaf ...

  3. 基于python的CFC滤波器实现(附源代码)

    初学python欢迎各位大佬指正 参考文件 ISO6487 标准文件 ISO 6487: Road vehicles - Measurement techniques in impact tests ...

  4. 基于Python的学生信息管理系统(附源代码)3.7

    开发环境要求 本系统的软件开发及运行环境具体如下. 操作系统:Windows 7.Windows 10. Python版本:Python 3.7.0. 开发工具:Python IDLE. 运行方法 在 ...

  5. 《Meta Graph Transformer:一种时空交通预测模型》

    文章信息 本周阅读的论文是题目为<Meta Graph Transformer: A Novel Framework for Spatial-Temporal Traffic Predictio ...

  6. 【目标检测】基于yolov5的交通标志检测和识别(附代码和数据集)

    写在前面: 首先感谢兄弟们的订阅,让我有创作的动力,在创作过程我会尽最大能力,保证作品的质量,如果有问题,可以私信我,让我们携手共进,共创辉煌. 文末附项目代码和数据集,请看检测效果: 1. 介绍 Y ...

  7. 基于深度学习的大规模交通标志识别(附6GB交通标志数据集)

    01 1.文章信息 <Deep Learning for Large-Scale Traffic-Sign Detection and Recognition>. 国外学者2020年发在I ...

  8. 基于LSTM的股票价格预测模型【附源码】

    导语:本文介绍了LSTM的相关内容和在股票价格预测上的应用. LSTM(Long Short Term Memory)是一种 特殊的RNN类型,同其他的RNNs相比可以更加方便地学习长期依赖关系,因此 ...

  9. 基于Transformer的车辆多模态轨迹预测方法

    1.引言 轨迹预测是自动驾驶领域关注的热点.对周围车辆轨迹的精确预测可以辅助自动驾驶车辆做出合理的决策规划,进而实现车辆在异构高动态复杂多变环境中安全驾驶.在车辆交互场景中,由于驾驶员意图与环境的不确 ...

最新文章

  1. 手动初始化设置3PAR存储系统
  2. mysql2005备份_创建完整数据库备份 - SQL Server | Microsoft Docs
  3. 阿里云mysql数据库引擎_在阿里云RDS数据库服务器中将MySQL InnoDB引擎表转为压缩格式...
  4. 虎牙直播张波:掘金Nginx日志
  5. 关于eclipse的indigo版中文注释时字体太小的问题(转)
  6. Photoshop CS5的序列号
  7. java实现Beta函数
  8. 在.net 应用MD5加密
  9. 3dmax渲染器下载VRay4.1渲染器下载安装教程(支持3dmax2013-2019)
  10. EMD 经验模态分解
  11. 武田呈报Mobocertinib治疗先前接受过含铂化疗的EGFR外显子20插入+ mNSCLC患者的阳性结果
  12. 应聘总经理的答卷,供大家打分
  13. android ndk 怎样调用第三方的so库文件。
  14. 你未必知道的 WebRTC – 前世、今生、未来
  15. 2021年高光谱图像文献追踪_ISPRS_V.180_10
  16. maven项目install报错:\target\surefire-reports for the individual test results
  17. 【弄nèng - Activiti6】Activiti6入门篇(五)—— 流程网关
  18. 温言QQ全能网络工具箱
  19. 时序预测 | MATLAB实现LSTM长短期记忆神经网络时间序列预测
  20. Builder模式到底好在哪里

热门文章

  1. 中国经济发展新旧动能的转化
  2. CCF-2020-12-2 期末预测之最佳阈值(低俗题)-你留的眼泪,我来帮你拭去~~~
  3. Python股票交易量化实例
  4. 华为nova5pro怎样升级鸿蒙,必升!华为nova 5 Pro升级EMUI10正式版
  5. R语言 | xlsx包的安装(附链接:java环境变量的配置与详解)
  6. 硅谷年轻富翁群:挑战自我 不愿坐享其成(转)
  7. 关于kafka集群搭建前后
  8. Unreal Wwise 工作流程设置
  9. 要不要启用苹果wapi_信号有救了?iPhone 12或启用自研天线模块+高通X55基带
  10. 第四节:沥青混合料的组成与材料(2)--沥青的主要材料