时空图神经网络阅读笔记_做技术不可耻的博客-程序员ITS301_stmgcn

技术标签: 时空预测  

写给自己看的,别人看不懂

STGCN

摘要

传统方法无法实现精确的中长期预测,忽视时空相关性。我们提出了一种新颖的时空图卷积网络,采用了全卷积结构。

方法

图卷积:GCN

时间卷积:卷积核在时间维度上滑动,对于长度为 M M M的序列和宽度为 K t K_t Kt的卷积核,输出长度为 M − K t + 1 M-K_t+1 MKt+1,最后使用了门控机制GLU
T ∗ τ Y = P ⊙ σ ( Q ) T *_{\tau}Y=P\odot\sigma(Q) TτY=Pσ(Q)
P和Q是使用不同参数的时间卷积的输出。

模型:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jFFm8aWU-1629816541103)(C:\Users\liule\AppData\Roaming\Typora\typora-user-images\image-20210824215209907.png)]
中间的是时空卷积块,两个时间卷积中间夹了图卷积,应用了瓶颈策略:图卷积的通道数很少,减少计算量

每一个时空卷积块后使用了layer normalization,对结点和特征做归一化。

l l l个时空卷积块,对于输入 v l ∈ R M × n × C l v^l\in R^{M\times n\times C^l} vlRM×n×Cl,输出 v l + 1 ∈ R ( M − 2 ( K t − 1 ) ) × n × C l + 1 v^{l+1}\in R^{(M-2(K_t-1))\times n\times C^{l+1}} vl+1R(M2(Kt1))×n×Cl+1
v l + 1 = Γ 1 l ∗ τ R e L U ( Θ l ∗ G ( Γ 0 l ∗ τ v l ) ) v^{l+1}=\Gamma^l_1*_\tau ReLU(\Theta^l*_G(\Gamma^l_0*_\tau v^l)) vl+1=Γ1lτReLU(ΘlG(Γ0lτvl))
Γ 0 l \Gamma^l_0 Γ0l Γ 1 l \Gamma^l_1 Γ1l分别是上面和下面的时间卷积核, Θ l \Theta^l Θl是图卷积核,在最后一个时空卷积块的后面附加了一个时间卷积层,将时间维度变为1,最后使用全连接层,实现单步预测

DCRNN

摘要

交通预测存在3个挑战:(1)路网上复杂的空间相关性,(2)非线性时间相关性,以及持续变化的路况,(3)实现长期预测的固有困难。我们将交通流建模成有向图上的扩散过程,提出了DCRNN。

方法

空间:扩散卷积,看作在图上的随机游走,经过多步后这个马尔可夫过程收敛到平稳分布,这里取K次迭代
X : , p ⋆ G f θ = ∑ k = 0 K − 1 ( θ k , 1 ( D O − 1 W ) k + θ k , 2 ( D I − 1 W T ) k ) X : , p X_{:,p}\star_G f_{\theta}=\sum_{k=0}^{K-1}(\theta_{k,1}(D_O^{-1}W)^k+\theta_{k,2}(D_I^{-1}W^T)^k)X_{:,p} X:,pGfθ=k=0K1(θk,1(DO1W)k+θk,2(DI1WT)k)X:,p
D O − 1 W D_O^{-1}W DO1W D I − 1 W T D_I^{-1}W^T DI1WT分别表示前向和后向转移矩阵。扩展到多输出就是
H : , q = a ( ∑ p = 1 P X : , p ⋆ G f Θ q , p , : , : ) H_{:,q}=a(\sum_{p=1}^PX_{:,p}\star_Gf_{\Theta_{q,p,:,:}}) H:,q=a(p=1PX:,pGfΘq,p,:,:)
Θ ∈ R Q × P × K × 2 \Theta\in R^{Q\times P\times K\times2} ΘRQ×P×K×2,从P维映射到Q维。

时间:用扩散卷积替换GRU中的矩阵乘法
在这里插入图片描述
采用Endoder-Decoder结构进行多步预测,Decoder训练时输入真实值,预测时输入预测值,为了防止这种差异影响模型的性能,采用了Scheduled Sampling技术。

Graph WaveNet

摘要

现有的时空图建模方法都假设图结构是固定的,由于连接不完整,可能并没有反映真正的依赖关系,这些方法中使用的RNN和CNN不能捕获长期依赖。本文使用自适应邻接矩阵提取隐藏的空间依赖,使用堆叠的1维空洞卷积:感受野随层数指数增长,能够处理十分长的序列。

方法

图卷积:
Z = ∑ k = 0 K P f k X W k 1 + P b k X W k 2 + A ~ a p t k X W K 3 Z=\sum_{k=0}^{K}P_f^kXW_{k1}+P_b^kXW_{k2}+\tilde{A}^k_{apt}XW_{K3} Z=k=0KPfkXWk1+PbkXWk2+A~aptkXWK3
P f P_f Pf为归一化后的邻接矩阵 , P b P_b Pb是邻接矩阵的转置的归一化,分别代表前向转移矩阵和后向转移矩阵, A ~ a p t \tilde{A}_{apt} A~apt是自适应邻接矩阵
A ~ a p t = S o f t m a x ( R e L U ( E 1 E 2 T ) ) \tilde{A}_{apt}=Softmax(ReLU(E_1E_2^T)) A~apt=Softmax(ReLU(E1E2T))
E 1 , E 2 ∈ R N × c E_1,E_2\in R^{N\times c} E1,E2RN×c为结点嵌入矩阵, E 1 E_1 E1是源结点嵌入, E 2 E_2 E2是目标结点嵌入。

时间卷积:带门控机制的一维因果卷积(GLU),采用了空洞卷积。
h = g ( Θ 1 ⋆ X + b ) ⊙ σ ( Θ 2 ⋆ X + b ) h=g(\Theta_1\star X+b)\odot \sigma(\Theta_2\star X+b) h=g(Θ1X+b)σ(Θ2X+b)
模型:实验时共8层,空洞率为[1,2,1,2,1,2,1,2]:
在这里插入图片描述
人工设计感受野大小,使最后一层时空卷积层输出的时间维度为1,经全连接层映射为输出维度

ASTGCN

摘要

现有的交通流预测方法无法建模交通数据的动态时空相关性,我们提出来一个新颖的基于注意力机制的时空图卷积网络。由3个独立的组件组成,分别建模交通流的3种时间属性,即recent,daily-periodic,weekly-periodic。每个组件包含2个部分:(1)时空注意力机制,(2)时空卷积

方法

recent:前 T h T_h Th个时间片的流量

daily-periodic:前 T d T_d Td天同样时间片的流量

weekly-periodic:前 T w T_w Tw周同样时间片的流量

空间注意力:不同位置的交通条件相互之间有影响,这种影响是高度动态的。
S = S o f t m a x ( V s ⋅ σ ( ( X h r − 1 W 1 ) W 2 ( W 3 X h r − 1 ) T + b s ) ) S=Softmax(V_s\cdot\sigma((X_h^{r-1}W_1)W_2(W_3X_h^{r-1})^T+b_s)) S=Softmax(Vsσ((Xhr1W1)W2(W3Xhr1)T+bs))
X h r − 1 ∈ R N × C r − 1 × T r − 1 X_h^{r-1}\in R^{N\times C_{r-1}\times T_{r-1}} Xhr1RN×Cr1×Tr1是第r个时空块的输入, V s , b s ∈ R N × N V_s,b_s\in R^{N\times N} Vs,bsRN×N W 1 ∈ R T r − 1 W_1\in R^{T_r-1} W1RTr1 W 2 ∈ R C r − 1 × T r − 1 W_2\in R^{C_{r-1}\times T_{r-1}} W2RCr1×Tr1 W 3 ∈ R C r − 1 W_3\in R^{C_r-1} W3RCr1是可学习参数。 S ′ S' S与邻接矩阵合并用于调整影响权重。

时间注意力:不同时间片的交通状态有相关性
E = S o f t m a x ( V e ⋅ σ ( ( ( X h r − 1 ) T U 1 ) U 2 ( U 3 X h r − 1 ) + b e ) ) E=Softmax(V_e\cdot\sigma(((X_h^{r-1})^TU_1)U_2(U_3X_h^{r-1})+b_e)) E=Softmax(Veσ(((Xhr1)TU1)U2(U3Xhr1)+be))
V e , b e ∈ R T r − 1 × T r − 1 V_e,b_e\in R^{T_{r-1}\times T_{r-1}} Ve,beRTr1×Tr1 U 1 ∈ R N _U1\in R^N U1RN U 2 ∈ R C r − 1 × N U_2\in R^{C_{r-1}\times N} U2RCr1×N U 3 ∈ R C r − 1 U_3\in R^{C_r-1} U3RCr1是可学习参数。 E E E直接应用在输入上
X ^ h r − 1 = X h r − 1 E \hat{X}_h^{r-1}=X_h^{r-1}E X^hr1=Xhr1E
图卷积:ChebNet结合空间注意力矩阵
g θ ∗ G x = g θ ( L ) x = ∑ k = 1 K − 1 θ k ( T k ( L ~ ) ⊙ S ′ ) x g_{\theta*G}x=g_\theta(L)x=\sum_{k=1}^{K-1}\theta_k(T_k(\tilde{L})\odot S')x gθGx=gθ(L)x=k=1K1θk(Tk(L~)S)x
时间维度卷积:
X h r = R e L U ( Θ ∗ ( R e L U ( g θ ∗ G X ^ h r − 1 ) ) ) X_h^{r}=ReLU(\Theta*(ReLU(g_{\theta*G}\hat{X}_h^{r-1}))) Xhr=ReLU(Θ(ReLU(gθGX^hr1)))
全连接层:映射到目标输出维度

多组件混合:每个节点在不同组件中的影响权重不同
Y ^ = W h ⊙ Y ^ h + W d ⊙ Y ^ d + W w ⊙ Y ^ w \hat{Y}=W_h\odot\hat{Y}_h+W_d\odot\hat{Y}_d+W_w\odot\hat{Y}_w Y^=WhY^h+WdY^d+WwY^w
模型:还使用了残差连接
在这里插入图片描述

STMGCN: Spatiotemporal Multi-Graph Convolution Network

摘要

现有的区域级网约车需求预测算法主要建模空间邻近区域之间的欧几里得相关性,但我们发现距离遥远的区域之间的非欧相关性对实现精准的预测也十分重要。我们提出了STMGCN,使用多个图来捕获这种相关性。为了在建模时间相关性时利用全局信息,我们进一步提出了上下文门控循环神经网络,使用门控机制对历史观测重新分配权重。

方法

首先建立了3种图:邻域图、功能相似性图、交通连接图

领域图 A N A_N AN:每个区域与它周围的3x3网格上的8个区域相连接,权重为1

功能相似性图 A S A_S AS:两个区域的连接权重是POI向量的相似性,当然要消除弱连接保持稀疏性

交通连接性图 A C A_C AC:两个区域由高速公路或地铁直接相连算连接,定义了连接性函数,可能是路的数量
A C , i , j = m a x ( 0 , c o n n ( v i , v j ) − A N , i , j ) A_{C,i,j}=max(0, conn(v_i, v_j)-A_{N,i,j}) AC,i,j=max(0,conn(vi,vj)AN,i,j)
这里减去了邻域连接性防止冗余连接。

介绍多图卷积:
X l + 1 = σ ( ⨆ A ∈ A f ( A ; θ i ) X l W l ) X_{l+1}=\sigma(\bigsqcup_{A\in\mathbb{A}}f(A;\theta_i)X_lW_l) Xl+1=σ(AAf(A;θi)XlWl)
⨆ \bigsqcup 代表聚集函数,如sum,max,average等, f ( A ; θ i ) f(A;\theta_i) f(A;θi)是邻接矩阵的函数,如拉普拉斯矩阵

时间相关性建模:上下文门控循环神经网络
X ^ ( t ) = [ X ( t ) , F G K ′ ( X ( t ) ) ] \hat{X}^{(t)}=[X^{(t)},F_G^{K'}(X^{(t)})] X^(t)=[X(t),FGK(X(t))]
F G K ′ F_G^{K'} FGK是图卷积操作,也就是将相关区域的信息和自身的信息连接起来,作为上下文信息
z ( t ) = F p o o l ( X ^ ( t ) ) = 1 ∣ V ∣ ∑ i = 1 ∣ V ∣ X ^ i , : ( t ) z^{(t)}=F_{pool}(\hat{X}^{(t)})=\frac{1}{|V|}\sum_{i=1}^{|V|}\hat{X}^{(t)}_{i,:} z(t)=Fpool(X^(t))=V1i=1VX^i,:(t)
所有区域上的全局平均池化, z ( t ) ∈ R T × P z^{(t)}\in R^{T\times P} z(t)RT×P
s = σ ( W 2 δ ( W 1 z ) ) s=\sigma(W_2\delta(W_1z)) s=σ(W2δ(W1z))
s ∈ R T s\in R^T sRT σ \sigma σ是sigmoid函数, δ \delta δ是ReLU函数, s s s作为注意力权重
X ~ ( t ) = X ( t ) ∘ s ( t ) \tilde{X}^{(t)}=X^{(t)}\circ s^{(t)} X~(t)=X(t)s(t)
重新分配权重后,将每个区域的特征送入RNN
H i , : = R N N ( X ~ i , : ( 1 ) , . . . , . X ~ i , : ( T ) ) f o r i = 1 , . . . , ∣ V ∣ H_{i,:}=RNN(\tilde{X}^{(1)}_{i,:},...,.\tilde{X}^{(T)}_{i,:}) \quad for \quad i = 1,...,|V| Hi,:=RNN(X~i,:(1),...,.X~i,:(T))fori=1,...,V
H ∈ R V × F H \in R^{V\times F} HRV×F,再使用上述的多图卷积提取空间相关性,这里 K = 2 K=2 K=2,共3层卷积,输出维度为64,最后使用全连接层

模型:
在这里插入图片描述
上下文门控循环神经网络中的 K ′ K' K为1, ⨆ \bigsqcup 为求和

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_40019838/article/details/119900392

智能推荐

Python的包管理工具_刘经纬老师的博客-程序员ITS301_python包管理工具

【小白从小学Python、C、Java】【Python全国计算机等级考试】【Python数据分析考试必会题】● 标题与摘要Python的包管理工具pip工具● 选择题以下pip命令中哪一项没有对numpy库进行操作?A pip --versionB pip uninstall numpyC pip install numpyD pip install --upgrade numpy● 问题解析1.pip是Python的包管理工具,具有查找、下载、安装和卸载Python第

Java17 安装教程与环境配置(完整版)_浮生丶半日闲的博客-程序员ITS301_java17

Java17 安装教程与环境配置(完整版)掉坑经历安装步骤环境配置掉坑经历今天做项目的时候,发现新项目用的的spring-boot-starter-parent是最新的,一开始我使用2.5.7一直爆红,当时想着降低版本就能使用了,然后被告知,jdk需要最新版本的,才能运行项目。于是乎,开始找教程,但是我看了好几篇教程,都没正确找到最新jdk下载,这里拿个https://www.oracle.com/java/technologies/downloads/#java17别人博文给的链接,结果你发现,你打开

webBrowser1.Document.InvokeScript向js传一个数组_快板板板的博客-程序员ITS301

Form1.cspublic static string[] shuju=new string[10];private void button1_Click(object sender,EventArgs e){ for(int i=0;i<10;i++) shuju[i]=i.ToString(); Form2 form2=new Form2(); fo...

android 名片识别软件,手机名片识别工具Android名片全能王评测_雾岛诸羽的博客-程序员ITS301

人与人之间的关系是需要交流来建立的,所以难免的在职场上,官场上等各种场上会碰到这样那样的朋友,当然也会结实到新的朋友,当然也会收到很多名片!难道还要手动来一个一个存到手机的通讯录中吗?不。我们不要!接下来,小编我就为大家介绍一款在安卓端很给力的名片扫描软件--名片全能王,商务人士必备之选。首次打开软件,会看到弹出的温馨提示,这时候我们看到默认识别的语言,点击确认后,可以看到软件是黑白相间金属的风格...

Linux-Android启动之zImage生成过程详解_insoonior的博客-程序员ITS301

<br />可以看到,在顶层makefile的第278行,包含了scripts/Kbuild.include文件,在这里定义了大量的函数和变量,供顶层makefile和其他makefile文件使用。 <br />  <br />在顶层makefile文件的第412行,包含了arch/arm/Makefile。这个是体系结构相关makefile文件。它定义了体系结构相关的一些变量及规则。 <br />  <br />当执行”make”时,arch/arm/Makefile中的185行的规则将是make遇到的第

android webview里HTML5的地理位置定位_Sandy林的博客-程序员ITS301

//启用数据库 webSettings.setDatabaseEnabled(true); String dir = this.getApplicationContext().getDir("database", Context.MODE_PRIVATE).getPath(); //启用地理定位 webSettings.setGeolocationEnabled(true);

随便推点

DDR5基本功能_weixin_42238387的博客-程序员ITS301

JEDEC定义并开发了三种DDR标准-标准DDR,移动DDR和图形DDR-以帮助设计人员满足他们的内存要求。DDR5将以更低的I / O电压(1.1V)和更高的密度(基于16Gb DRAM芯片)支持更高的数据速率(高达6400 Mb / s)。DDR5 DRAM和双列直插式内存模块(DIMM)在2021年已逐步投放市场。本文概述了DDR5 DRAM的几个关键功能,设计人员可以将其部署在服务器,云计算和网络的系统级芯片(SoC)中,笔记本电脑,台式机和消费类应用程序。标准DDR —概述提供高密度和高性能的

[实测]openCV4.54版本在vs2019下的安装_samsu0108的博客-程序员ITS301_vs2019opencv版本

目录1.OpenCV 下载安装2.系统环境配置2.1查看并复制opencv安装路径的bin目录(要确保整个路径的正确性):2.2 按照以下操作添加opencv路径3. VS2019环境配置3.1打开vs2019 新建一个空的c++项目,随便起个名字.3.2 在源文件中添加一个空的c++文件,随便起个名字.3.3 视图 -&gt; 其他窗口 -&gt; 属性管理器3.4 在属性管理器中找到Microsoft.Cpp.x64.user并双击3.4.1 注: ...

xssf和hssf的区别java_POI XSSF与HSSF的 使用区别_雨诺寒雪的博客-程序员ITS301

首次写博客,希望能坚持下去,一点一滴的积累,内容不多也不深,但愿我的分享,能帮助和我一样的新人们解决问题最近给项目中添加了一个导入excel表格的功能,然而在功能开发结束后测试,发现报错。报错信息如下:The supplied data appears to be in the Office 2007+ XML. You are calling the part of POI that deals...

PHP分析.wav文件并绘制png格式的波形图_TensorFlow学习的博客-程序员ITS301

很多人可能对pack/unpack函数不熟悉;这其实是Php借用perl的,他们提供了使用脚本语言访问复杂二进制数据结构的方法。我的这段简化的程序只能处理PCM格式的RIFF音频文件(这也是最常见的wav格式) ,不限声道,但是比特率(BitsPerSample)最好是16。AD:2014WOT全球软件技术峰会北京站 课程视频发布用Php分析并绘制音频文件的波形

springboot整合RateLimiter_kill-java的博客-程序员ITS301

依赖 //guava依赖 &lt;dependency&gt; &lt;groupId&gt;com.google.guava&lt;/groupId&gt; &lt;artifactId&gt;guava&lt;/artifactId&gt; &lt;version&gt;20.0&lt;/version&gt; &lt;/dependency&gt; //AOP依赖

android最新的adt adt-bundle-mac-x86_64-20140702_小李00的博客-程序员ITS301

因为被河蟹dehttp://dl.google.com/android/adt/adt-bundle-mac-x86_64-20140702.zip  下载中