Introduction to Graph Neural Network翻译-第四章Vanilla Graph Neural Networks

4. Vanilla Graph Neural Networks

在本节中,我们将描述Scarselli等人提出的Vanilla GNN[2009]。
我们还列出了Vanilla GNN在表示能力和训练效率方面的局限性。
在本章之后,我们将讨论Vanilla GNN模型的几种变体。

4.1 介绍

GNN的概念最早是在Gori等人[2005],Scarselli等 [2004,2009]提出的。
为简单起见,我们将讨论Scarselli等人提出的模型[2009],其目的是扩展现有的神经网络,以处理图结构化数据。

节点自然是由其特征和图中的相关节点定义的。GNN的目标是学习状态嵌入 h v ∈ R s \mathbf{h}_v\in \mathbb{R^s} hvRs
该状态是对每个节点的邻居信息信息编码。
状态嵌入 h v \mathbf{h}_v hv用于产生输出 o v \mathbf{o}_v ov,例如预测节点标签的分布。

在Scarselli等[2009],一个典型的图如图4.1所示。
4.1

Vanilla GNN模型处理无向齐次图,其中图中的每个节点
都有它的输入特征 x v \mathbf{x}_v xv,并且每条边也可以有它的特征。
本文使用 c o [ v ] , n e [ v ] co[v],ne[v] co[v],ne[v]来代表节点 v v v的边和邻居的集合。
对于处理其他更复杂的图,例如异构图,可以在后面的章节中找到GNN的相应变体。

4.2 模型

在给定节点和边的输入特征的情况下,接下来我们将讨论模型如何获得节点嵌入 h v \mathbf{h}_v hv和输出嵌入 o v \mathbf{o}_v ov

为了根据输入领域更新节点的状态,所有节点共享一个称为局部转移函数的参数函数 f f f
为了产生节点的输出,有一个参数函数 g g g,称为局部输出函数。然后, h v , o v \mathbf{h}_v,\mathbf{o}_v hv,ov的定义如下:

h v = f ( x v , x c o [ v ] , h n e [ v ] , x n e [ v ] ) (4.1) \mathbf{h}_v = f(\mathbf{x}_v,\mathbf{x}_{co[v]},\mathbf{h_{ne[v]}},\mathbf{x}_{ne[v]}) \tag{4.1} hv=f(xv,xco[v],hne[v],xne[v])(4.1)

o v = g ( h v , x v ) (4.2) \mathbf{o}_{v}=g\left(\mathbf{h}_{v}, \mathbf{x}_{v}\right) \tag{4.2} ov=g(hv,xv)(4.2)

其中, x \mathbf{x} x表示输入特征, h \mathbf{h} h表示隐藏状态。
c o [ v ] co[v] co[v]是与节点 v v v相连的边集合, n e [ v ] ne[v] ne[v]是节点 v v v的邻居集合。
所以 x v , x c o [ v ] , h n e [ v ] , x n e [ v ] \mathbf{x}_{v}, \mathbf{x}_{c o[v]}, \mathbf{h}_{n e[v]}, \mathbf{x}_{n e}[v] xv,xco[v],hne[v],xne[v]分别代表 v v v的特征,它的边的特征,节点 v v v在图中邻居的状态和特征。
以图4.1中的 l 1 l_1 l1节点为例, x l 1 \mathbf{x}_{l_1} xl1 l 1 l_1 l1的输入特征。 c o [ l 1 ] co[l_1] co[l1]包含了边 l ( 1 , 4 ) , l ( 1 , 6 ) , l ( 1 , 2 ) , l ( 3 , 1 ) l_{(1,4)},l_{(1,6)},l_{(1,2)},l_{(3,1)} l(1,4),l(1,6),l(1,2),l(3,1)
n e [ l 1 ] ne[l_1] ne[l1]包含了节点 l 2 , l 3 , l 4 , l 6 l_2,l_3,l_4,l_6 l2,l3,l4,l6

H , O , X , X N \mathbf{H},\mathbf{O},\mathbf{X},\mathbf{X}_N H,O,X,XN是分别由所有状态,所有输出,所有特征,所有节点特征堆叠而成的矩阵。然后我们有一个紧凑的形式:

H = F ( H , X ) (4.3) \mathbf{H}=F(\mathbf{H}, \mathbf{X}) \tag{4.3} H=F(H,X)(4.3)

O = G ( H , X N ) (4.4) \mathbf{O}=G\left(\mathbf{H}, \mathbf{X}_{N}\right)\tag{4.4} O=G(H,XN)(4.4)

其中, F F F全局转换函数 G G G全局输出函数
它们分别由图中所有节点的局部转换函数 f f f局部输出函数 g g g的堆叠而成。
H \mathbf{H} H的值是方程 ( 4.3 ) (4.3) (4.3)的不动点,并且假设 F F F是压缩映射的情况下是唯一定义的。

在Banach不动点定理[Khamsi和Kirk,2011]的建议下,GNN使用以下经典迭代方案来计算状态:

H t + 1 = F ( H t , X ) (4.5) \mathbf{H}^{t+1}=F\left(\mathbf{H}^{t}, \mathbf{X}\right)\tag{4.5} Ht+1=F(Ht,X)(4.5)

H t \mathbf{H}^t Ht代表 H H H的第 t t t次迭代。动力系统方程 ( 4.5 ) (4.5) (4.5)以指数速度收敛于方程 ( 4.3 ) (4.3) (4.3)的解,对于任意初值 H ( 0 ) \mathbf{H}(0) H(0)
注意, f f f g g g中描述的计算可以解释为FNN。

在介绍了GNN的框架后,下一个问题是如何学习局部转移函数 f f f和局部输出函数 g g g的参数。
对于有监督的目标信息(对于确定的节点 t v \mathbf{t}_v tv),损失可以写为:

loss = ∑ i = 1 p ( t i − o i ) (4.6) \text {loss}=\sum_{i=1}^{p}\left(\mathbf{t}_{i}-\mathbf{o}_{i}\right)\tag{4.6} loss=i=1p(tioi)(4.6)

其中 p p p是有监督节点的数目。该学习算法基于梯度下降策略,由以下步骤组成。

  • 状态 h v t \mathbf{h}_v^t hvt由等式 ( 4.1 ) (4.1) (4.1)更新,直到时间步 T \mathbf{T} T。然后我们得到了方程 ( 4.3 ) (4.3) (4.3)的近似不动点解: H ( T ) ≈ H \mathbf{H}(T)\approx\mathbf{H} H(T)H
  • 根据损失计算权重梯度 W \mathbf{W} W
  • 根据在上一步骤中计算的梯度来更新权重 W \mathbf{W} W

运行该算法后,我们可以获得针对有监督/半监督任务以及图中节点的隐藏状态训练的模型。

vanilla GNN模型提供了一种有效的方法来对图数据进行建模,这是将神经网络纳入图域的第一步。

4.3 局限性

尽管实验结果表明,GNN是用于对结构数据进行建模的强大架构,但vanilla GNN仍然存在一些局限性。

  • 首先,通过迭代更新节点的隐藏状态来获得不动点,计算效率较低。该模型需要 T T T步计算才能逼近不动点。
    如果放宽不动点的假设,我们可以设计一个多层GNN来获得节点及其邻域的稳定表示。
  • 其次,Vanilla GNN在迭代中使用相同的参数,而大多数流行的神经网络在不同的层使用不同的参数,这是一种分层的特征提取方法。此外,节点隐含状态的更新是一个顺序的过程,可以受益于RNN中的GRU和LSTM核。
  • 第三,在边上也有一些信息量大的特征,这些特征在Vanilla GNN中不能有效地建模。例如,知识图谱中的边代表关系类型,通过不同边的消息传播应根据其类型的不同而不同。此外,如何学习边的隐藏状态也是一个重要的问题。
  • 最后,如果 T \mathbf{T} T很大,如果我们把注意力集中在节点的表示上而不是图上,则不适合使用不动点,因为不动点中的表示分布在值上要平滑得多,而且用于区分每个节点的信息量要小得多。

除了普通GNN之外,还提出了几个变体来解决这些限制。
例如,门控图神经网络(GGNN)[Li等人,2016]被提出用于解决第一个问题。
关系GCN(R-GCN)[Schlichtkrull等人,2018]被提出用于处理有向图。更多细节见以下章节。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Introduction to Graph Neural Networks》是一本介绍图神经网络的PDF。图神经网络是一类用于处理图结构数据的深度学习模型。该PDF主要介绍了图神经网络的基本概念、结构和应用。 首先,PDF简要介绍了图神经网络的起源和发展背景。它指出传统的神经网络模型无法有效地处理图结构数据中的关系和局部信息,而图神经网络的出现填补了这一空白。 接着,PDF详细解释了图神经网络的基本概念。它提到图神经网络通过将节点和边表示为向量,利用图卷积操作来更新节点的表示,从而融合了节点的邻居信息。同时,它还介绍了图神经网络在处理无向图、有向图和多图时的不同形式和应用。 然后,PDF分析了图神经网络的结构。它介绍了常见的图神经网络结构,如Graph Convolutional Networks (GCN)、GraphSAGE和Graph Attention Networks (GAT)等。对于每种结构,PDF详细解释了其原理和在实践中的应用。 最后,PDF总结了图神经网络的应用领域。它指出图神经网络在社交网络分析、化学分子表示、推荐系统和计算机视觉等领域有广泛的应用。并且,它还提供了一些成功案例和相关论文的引用。 综上所述,《Introduction to Graph Neural Networks》这本PDF全面而详细地介绍了图神经网络的基本概念、结构和应用。对于对图神经网络感兴趣的读者来说,这本PDF是一份很好的入门资料。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值