交通流量预测HSTGCNT:Hierarchical Spatio–Temporal Graph Convolutional

Hierarchical Spatio–Temporal Graph Convolutional Networks and Transformer Network for Traffic Flow Forecasting

交通流预测的层次时空图卷积网络和Transformer网络

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

Abstract

图卷积网络(GCN)具有图形化描述道路网络不规则拓扑结构的能力,已被应用于交通流预测任务中。然而,基于GCN的交通流预测方法往往无法同时捕捉到交通流数据所承载的短期和长期时间关系,并且还存在过平滑问题。为了克服这些问题,我们提出了一个分层的交通流预测网络合并新设计的长期时间Transformer网络(LTT)和时空图卷积网络(STGC)。

具体而言,LTT旨在学习交通流数据之间的长期时间关系,而STGC模块旨在通过一维卷积和图卷积之间的级联分别捕获交通流数据之间的短期时间关系和空间关系。此外,提出了一种联合收割机的注意力融合机制,将长期和短期时间关系作为STGC中图卷积层的输入,以缓解GCN的过度平滑问题。

在三个公共交通流数据集上的实验结果证明了该方法的有效性和鲁棒性。

索引术语:图形卷积网络GCN,交通数据预测traffic data forecasting,Transformer。

主要贡献

提出了一种由时空图卷积网络(STGC)和长期时间变换网络(LTT)两个并行网络构建的分层交通流预测模型

  • 长期时间变换网络通过变换对时间位置信息进行编码,提取交通流数据之间的长期时间关系;
  • 时空图卷积网络捕捉交通流数据在不同时间粒度层次上的空间依赖关系,利用多个一维卷积核挖掘数据之间的短期时间关系;
  • 长短时态信息融合模块设计了一种基于注意力的融合模块,根据上述长期和短期时态关系的重要性自适应地整合它们,并将融合后的表示传递给STGC,具有缓解GCN的过平滑问题的能力。

相关工作

​ 在这一部分中,我们回顾了与传统交通流预测、基于图卷积网络的交通流预测和变压器网络相关的必要知识。

B.

时空GCN(STGCN)是第一个将GCN应用于交通数据预测任务的工作,它将时间CNN和空间GCN模块级联在一起来捕捉交通数据之间的时空关系。

GCN的交通流预测,扩散卷积递归神经网络(DCRNN)[12]在道路网络图上执行双向随机游动来捕捉空间关系,并使用门控递归单元来获得时间关系

C.

Transformer的交通量预测

Motivation

交通流数据具有复杂的时空关系。如何有效地捕捉和融合这两种关系是交通流预测任务的关键问题。因此,提出了一种用于交通流预测任务的新型分层深度神经网络模型,其动机如下。

  • 为了学习隐藏的长期时间关系,我们使用Transformer网络[27]来构建长期时间Transformer网络(LTT)。

  • 为了充分利用短期时间关系和空间关系,我们构建了时空图卷积网络(STGC),它也从交通流数据中学习短期关系,由一维时间卷积和GCN组成。

  • 为了综合上述的长时、短时和空间关系,我们设计了基于注意力的融合模块,将LTT和STGC逐层连接起来,从而缓解了STGC的过度平滑问题。

整体网络架构

  • 长期时间Transformer网络(LTT)从原始业务流数据捕获长期时间依赖性,即image-20240113161005904
  • 每个时空图卷积模块(STGC)级联一维卷积神经网络image-20240113161441840、图卷积网络image-20240113161407440,随后是另一个一维卷积神经网络image-20240113161512419image-20240113161611855,其同时捕获短期时间依赖性和空间依赖性;
  • 长短时间信息融合模块融合上述长期和短期时间依赖性,即image-20240113161750564,然后我们将其逐层发送到STGC中的图卷积网络。
层次化交通流预测模型的概念框架

图2所示。提出了层次化交通流预测模型的概念框架,该模型包括三个模块:

  • 长时transformer网络(LTT)
  • 时空图卷积网络(STGC)
  • 长短时信息融合模块(LSTIF)Fusion Module

X 为原始交通流数据, X ^ \hat{X} X^为LTT重构后的交通流数据乘积。Z(L) 为STGC模块预测的交通流量, H(L) 为LTT编码器最后一层的输出。Ltrans-res为LTT交通流重构损失,Ltrans-fore为预测损失。Lstgc-mae和Lstgc-mse分别为STGC的预测损失。

image-20240113152820689

长期时间Transformer的概念框架
image-20240113164820665

该网络对时间位置信息进行编码,从原始交通流数据中提取长期时间关系。

如图3所示,所设计的长期时间Transformer网络具有两个主要组件:时间位置嵌入和长期时间信息提取。

1)时间位置嵌入:由于交通流数据是典型的时间序列数据,分析数据之间的时间位置关系可以提高交通流预测的性能。例如,当我们预测某段道路7:30的交通流量时,7:00的交通流量数据比5:00的交通流量数据更重要。传统的注意力机制被用来捕捉数据之间的关系[37],而忽略了这种时间序列数据中的顺序信息。

​ Transformer引入了sin、cos来完成周期性的操作

image-20240114163730953

但是周期太大,需要设置一个合理的周期

image-20240114163823425

2)长时间信息提取:30分钟以上的长时间交通预测仍然是当前智能交通领域的一个基础和难点问题。这种长期的时间依赖性给传统的基于CNN或RNN的时间处理模块带来了很大的困难。为了解决这个问题,我们提出了一个LTT网络,从整个交通流序列中提取长期的时间关系。

Each encoder is constructed by four main components:

​ multi-head attention, fully-connected feed-forward network, dropout [38] and layer normalisation [39].

只使用前几个时间步长的交通流量预测

编码器和解码器都是三个,结构类似

时空卷积网络(STGC)

时空卷积网络(STGC)由三个相同的块组成(如图2所示),每个块由短期时间卷积空间图卷积构成。顾名思义,短时时间卷积旨在捕捉交通流数据的短时时间相关性,而空间图卷积则是捕捉相应的空间相关性

1)短期时间卷积:与递归神经网络相比,卷积神经网络可以并行训练,因此耗时更少。此外,CNN只关注感受野内的数据,捕捉数据的短期剧烈变化。因此,**我们沿着交通流数据的时间轴T1执行一维卷积以提取短期时间关系。**为了进一步防止消失梯度问题并确保充分的信息传输,我们使用门控线性单元来激活通过一维卷积提取的特征,

2)空间图卷积:交通流数据变化复杂,道路网络具有非欧结构,路段之间存在许多隐含的复杂关系。例如,两个路段在**道路网络中可能不直接连接,而它们具有许多相同的邻居。**这是一个自然的信念,这两个路段具有高阶结构关系。作为一种重要的深度学习方法,GCN可以挖掘道路网络中这种潜在的高阶关系。

长短时信息融合模块(LSTIF)

在不同的时期,长短时信息的重要性是不同的。比如早晚高峰时段,车流量大,当前交通拥堵对15分钟后的车流量影响明显。在这种情况下,短时交通流信息在交通流预测任务中起着至关重要的作用。在交通平坦期,交通量小,交通拥堵消散快,因此30分钟至1小时的长时间时间信息更有指导意义。LTT网络捕获交通流数据之间的长期时间关系,STGC网络学习短期时间关系和空间关系,但如何正确集成这些异构数据是一个关键问题。我们提出的长短时信息融合模块(LSTIF)学习一个更好的交通流表示逐层通过注意力融合机制。然后,融合表示发送到每个STGC层,以解决GCN的过平滑问题。LSTIF模块具有强大的全局学习能力和良好的并行性,进一步突出了融合表示中根据目标交通流周期的关键信息,抑制了无用噪声。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/329361.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【C语言】数据结构——排序三(归并与计数排序)

💗个人主页💗 ⭐个人专栏——数据结构学习⭐ 💫点击关注🤩一起学习C语言💯💫 目录 导读:1. 归并排序1.1 基本思想1.2 递归实现1.3 非递归实现 2. 计数排序2.1 基本思想2.2 代码实现 导读&#x…

如何用Python进行数据分析(保姆级教程)

有小伙伴在学Python新手教程的时候说学Python比较复杂的地方就是资料太多了,比较复杂。 很多网上的资料都是从语法教起的,花了很多时间还是云里雾里,摸不清方向。今天就给大家来捋一捋思路!帮助大家提高学习效率! Pyt…

夜神安装Magisk及Delta(狐狸面具)教程

Magisk和LSPosed、EdXPosed下载 Magisk框架下载与安装教程 - 多开鸭Magisk及LSPosed在模拟器安装的详细视频教程 推荐先看一遍教程 视频教程 雷电模拟器版本教程:https://www.bilibili.com/video/BV1kv4y127af 夜神模拟https://www.duokaiya.com/magisk.html 夜神模…

JS遍历对象的方法及特点

1、定义一个对象 let obj {name: Tom,age: 20,sex: 男,};obj.weight 70kg;// obj的原型上定义属性Object.prototype.height 180cm;Object.prototype.major function() {console.log(专业:计算机应用技术);};console.log(obj, obj); 控制台输出的obj中&#xff…

C++make_pair,你真的懂了吗?

其实写这篇文章我还是很忐忑的,因为用C也写了快一年了,平时代码量个人认为还可以,但是最近两天频繁犯错,下面先说说我写的错误吧! 我们都知道make_pair返回的是一个pair类型的函数,而pair这个键值对它又是…

go语言(一)----声明常量

package mainimport ("fmt""time" )func main() {fmt.Print("hello go!")time.Sleep(1 * time.Second)}运行后,结果如下: 1、golang表达式中,加;和不加;都可以 2、函数的{和函数名一…

二二复制模式玩法解析

这个模式和小编介绍的其他模式不同,其他的模式都是需要一个推荐来获得返利或者免单的,但是这个模式是不需要的,因为它可以依靠平台来完成闭环。 具体是怎么操作的呢?这个模式很简单,只有两个奖励。一个是直推奖&#x…

C++初阶类与对象(一):学习类与对象、访问限定符、封装、this指针

入门知识已经梳理完毕了,接下来就进入到面型对象的部分学习了 文章目录 1.面向过程和面向对象初步认识2.类的引入3.类的定义3.1类的结构3.2类的两种定义方式3.2.1声明和定义全部放在类体中3.2.2声明和定义分开 3.3成员变量命名规则的建议 4.类的访问限定符及封装4.1…

Java-NIO篇章(2)——Buffer缓冲区详解

Buffer类简介 Buffer类是一个抽象类,对应于Java的主要数据类型,在NIO中有8种缓冲区类,分别如下: ByteBuffer、 CharBuffer、 DoubleBuffer、 FloatBuffer、 IntBuffer、 LongBuffer、 ShortBuffer、MappedByteBuffer。 本文以它的…

【Linux】nc 网络诊断 | 文件传输 命令详解

目录 一、命令简介 二、命令使用 2.1 测试服务器 2.2 端口连通性测试 2.2.1tcp端口连通性测试 2.2.2udp端口连通性测试 2.3 文件及目录的传输 2.3.1 文件传输(TCP端口) 2.3.2 文件传输(UDP端口) 相关文章: 【网络】抓包工具Wireshark下载安装和基本使用教…

EasyConnect客户端 连接时提示,获取服务端配置信息失败

环境: EasyConnect客户端 问题描述: EasyConnect客户端 连接时提示,获取服务端配置信息失败 解决方案: 1.电脑上的防火墙和杀毒软件建议关闭,右键以管理员身份运行EasyConnect客户端使用(临时解决本案例) 2.用修复工具修复测…

maxwell同步全量历史数据

CentOS安装maxwell 在上篇的基础上,我们实现了实时同步mysql数据到kafka。maxwell不仅可以同步实时数据,也可以同步全量历史数据。在这里模拟一下历史数据的场景,创建表结构如下,并写入测试数据。 CREATE TABLE user_det…

手把手教你搭建3D元宇宙场景!

AMRT3D引擎一经上线,便立即引起了3D爱好者们的热烈反响。许多用户纷纷下载了此引擎,并开始认真学习和使用它。 有的用户甚至只用了一天的时间,就已经可以利用AMRT3D引擎搭建出一个3D项目。这充分说明了AMRT3D引擎的强大和高效,也…

代码随想录算法训练营第31天 | 理论基础 455.分发饼干 376. 摆动序列 53. 最大子序和

目录 理论基础 455.分发饼干 💡解题思路 💻实现代码 376. 摆动序列 💡解题思路 # 情况一:上下坡中有平坡 # 情况二:数组首尾两端 情况三:单调坡度有平坡 💻实现代码 53. 最大子序…

matlab快速入门(读取数据并绘制散点图和拉格朗日插值

目录 1.读取excel:2.注释快捷键:3.数组/矩阵索引:4.绘制散点图:5.拉格朗日插值:5.1分割出非空和空的x和y两组数据:5.2插值:5.3画图: 小结: 1.读取excel: [nu…

抖店商家怎么维护好与达人关系?2024新版维护达人思路方法

我是王路飞。 当你找到达人给你带货,且积累了一些达人资源之后,就需要维护好与达人的关系了。 毕竟找达人带货玩法的好处,就是长期稳定,他能给你带来持续的收益。 那么抖店商家应该如何维护好与达人的关系呢? 这篇…

第4章 通信系统

文章目录 4.1.1 基本概念4.1.2 通信系统的组成1、通信系统的一般模型2、模拟通信系统3、数字通信系统 4.1.3 通信系统分类与通信方式1、通信系统分类2、通信方式 4.1.4 通信系统的性能指标(质量指标)4.2 信源编码4.2.1 信源的概念与特性4.2.2 信源编码概…

【Python学习】Python学习20- 面向对象(2)

目录 【Python学习】Python学习20- 面向对象(2) 前言类的继承特点实例 方法重写基础重载方法参考 文章所属专区 Python学习 前言 本章节主要说明Python的面向对象的处理。 类的继承 通过继承创建的新类称为子类或派生类,被继承的类称为基…

网页设计(八)HTML5基础与CSS3应用

一、当当网企业用户注册页面设计 当当网企业用户注册页面 改版后当当网企业用户注册页面 <!-- prj_8_1.html --> <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>当当网企业用户注册页面设计</title><s…

2024年美赛数学建模思路 - 案例:ID3-决策树分类算法

文章目录 0 赛题思路1 算法介绍2 FP树表示法3 构建FP树4 实现代码 建模资料 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 算法介绍 FP-Tree算法全称是FrequentPattern Tree算法&#xff0c;就是频繁模…