11

ASTGNN:transformer攻入城市计算时空图网络

 2 years ago
source link: https://mp.weixin.qq.com/s?__biz=MjM5ODkzMzMwMQ%3D%3D&%3Bmid=2650428872&%3Bidx=4&%3Bsn=4335e0b491c4e29455c65d4d08996ef1
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

ASTGNN:transformer攻入城市计算时空图网络

AINLP 2022-01-25 14:10

The following article is from Agent的潜意识 Author 樱园的玻尔兹曼机

640?wx_fmt=jpeg
     时空城市计算的业务问题是这样的:城市中的交通流量,人流量,地铁乘客量这些峰值预估对城市治理很有帮助。包括道路的规划,地铁线路的开拔等等。这是一个天然的图网络,这张图网络呢,从人流量来说,每个时间节点都有人流量值,他是一个序列数据,因而需要用到时间维度的图卷积;从道路连通性来说,图上的节点之间有连线意味着他们的物理世界中有道路,但道路有远近有大小,因而需要空间维度的图卷积。这就是目前解决城市计算的经典做法:时空图网络。     最近在做图算法。有一个21年综述文章,把时下最流行的时空图网络来做城市计算的算法用pytorch geometirc重写了一遍。很有意思的(见附录2)。在这个基础上,我跟同事合计了一下,如果从问题的响应变量的角度来看,我们要预测的就是一个节点上,接下来n个时间片,他的流量是多少,这是一个序列数据,天然具有自回归特性,白话一点讲就是第n个时间片的流量和1到n-1过去时刻的流量强相关。因此适合用transformer搞;从时空特性来说,时空这一特点可以当做transformer的position encoding的模块run进模型。Idea一定,我在ASTGCN(附录3、4)的基础上,重构了一把代码,发现效果还真不错。准备按这路子投篇论文出去了。结果当天一摸,发现这个idea已经有论文被发了。     细看一下,文章做的还不错。这两天把它全摸明白了。整理一下,对自己也是一个加深理解。一、前言 论文:Learning Dynamics and Heterogeneity of Spatial-Temporal Graph Datafor Traffic Forecasting  会议:TKDE2021二、算法模型接下来我们直接从模型入手吧。先整揽整个pipeline,然后再搞点细节吧。
640?wx_fmt=png
      整个架构跟经典的transformer是一样的。区别在三个地方:从输入到输出开始算,1)position embedding他有两个,时空两个维度。2)多头注意力机制模块他重构成了自己的Tr-multihead-SelfAttention.3)Feed-forward模块被替换成了动态空间图卷积。      先讲最核心的Tr-multihead-SelfAttention。他这个模块的直观效果如下:
640?wx_fmt=png
      左边是传统自注意力机制学到的效果,只要是个波峰就认为是相似的;他重构的模块呢,可以学习一个区间的趋势变动情况,从而把B和C这种走势图相似的点找出来。      这个是直观感受。他具体是怎么做的呢?
640?wx_fmt=png
      代码在上面,第一个块是做了一个卷积操作,第二块是一个concat。第三个就是算注意力机制。      其实就是把趋势算出来。这里做卷积网络大伙可能不太理解。其实他就是一个1D卷积。我把它打印出来了,一个1*3的卷积核。其实说白了就是一个12维的向量,3个3个一组来求趋势。
640?wx_fmt=jpeg
1、 PyTorchGeometric Temporal: Spatiotemporal Signal Processing with Neural MachineLearning Models (CIKM 2021) 2、  https://github.com/benedekrozemberczki/pytorch_geometric_temporal3、Attention Based Spatial-Temporal GraphConvolutional Networks for Traffic Flow Forecasting, AAAI 20194、  https://github.com/Davidham3/ASTGCN
0?wx_fmt=png
AINLP
一个有趣有AI的自然语言处理公众号:关注AI、NLP、机器学习、推荐系统、计算广告等相关技术。公众号可直接对话双语聊天机器人,尝试自动对联、作诗机、藏头诗生成器,调戏夸夸机器人、彩虹屁生成器,使用中英翻译,查询相似词,测试NLP相关工具包。
342篇原创内容
Official Account
进技术交流群请添加AINLP小助手微信(id: ainlper)
请备注具体方向+所用到的相关技术点
640?wx_fmt=jpeg

关于AINLP

AINLP 是一个有趣有AI的自然语言处理社区,专注于 AI、NLP、机器学习、深度学习、推荐算法等相关技术的分享,主题包括文本摘要、智能问答、聊天机器人、机器翻译、自动生成、知识图谱、预训练模型、推荐系统、计算广告、招聘信息、求职经验分享等,欢迎关注!加技术交流群请添加AINLPer(id:ainlper),备注工作/研究方向+加群目的。

640?wx_fmt=jpeg

阅读至此了,分享、点赞、在看三选一吧🙏


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK