A Comprehensive Survey on Graph Neural Networks

A Comprehensive Survey on Graph Neural Networks

Zonghan Wu, Shirui Pan, Member, IEEE, Fengwen Chen, Guodong Long,
Chengqi Zhang, Senior Member, IEEE, Philip S. Yu, Fellow, IEEE

摘要

在本次调查中,我们提供了数据挖掘和机器学习领域中图神经网络(GNN)的全面概述。我们提出了一种新的分类法,将最先进的图形神经网络划分为不同的类别。这些学习范例包括图注意力网络,图自动编码器,图生成网络和图时空网络。我们进一步讨论了图神经网络在各个领域的应用,并总结了现有算法在不同学习任务中的开源代码和基准。最后,我们在这个快速发展的领域提出了潜在的研究方向
索引术语 - 深度学习,图神经网络,图卷积网络,图表示学习,图自动编码器,网络嵌入

1 INTRODUCTION

最近神经网络的成功推动了对模式识别和数据挖掘的重新研究。许多机器学习任务,曾经严重依赖手工特征工程来提取信息功能集,最近,各种端到端深度学习范例,即CNN,LSTM和自动编码器进行了革新。许多领域深度学习的成功部分归因于快速发展的计算资源(例如GPU)和大型训练数据的可用性,部分归因于深度学习从欧几里德数据中提取潜在表示的有效性(例如,图像,文字和视频)。以图像分析为例,图像可以表示为欧几里德空间中的规则网格。卷积神经网络(CNN)能够利用图像数据的移位不变性,局部连通性和组合性,因此,CNN可以提取与整个数据集共享的局部有意义的特征,用于各种图像分析任务。

虽然深度学习在Eu-clidean数据上取得了巨大成功,但是越来越多的应用程序从非欧几里德域生成数据并需要进行有效分析。例如,在电子商务中,基于图的学习系统能够利用用户和产品之间的交互来制作高度准确的推荐。在化学中,分子被建模为图,并且需要确定它们的生物活性以用于药物发现。在引文网络中,论文通过引用相互联系,需要将它们分为不同的组。图数据的复杂性给现有的机器学习算法带来了重大挑战。这是因为图表数据不规则。每个图都有一个可变大小的无序节点,图中的每个节点都有不同数量的邻居,导致一些重要的操作(例如卷积),这些操作很容易在图像域中计算,但不能直接应用于图域了。此外,现有机器学习算法的核心假设是实例彼此独立。然而,对于图数据不是这种情况,其中每个实例(节点)通过一些复杂的链接信息与其他(邻居)相关,这些链接信息用于捕获数据之间的相互依赖性,包括引用,友谊和交互。

最近,人们越来越关注扩展图数据的深度学习方法。 受CNN,RNN和自动编码器的启发,在过去几年中,由于深度学习,重要操作的新概括和定义已经迅速发展,以处理图数据的复杂性。 例如,图卷积可以从标准2D卷积推广。 如图1所示,图像可以被认为是图的特殊情况,其中像素由相邻像素连接。 类似于2D卷积,可以通过获取节点邻域信息的加权平均来执行图卷积。

A Comprehensive Survey on Graph Neural Networks_第1张图片
关于图神经网络(GNN)主题的现有评论数量有限。使用术语几何深度学习,Bronstein等。 [9]概述了非欧几里德领域的深度学习方法,包括图形和流形。虽然这是对GNNs的第一次审查,但这项调查主要审查卷积GNN。汉密尔顿等人。 [10]涵盖有限数量的GNN,重点是解决网络嵌入问题。 Battaglia等。 [11]位置图网络作为学习关系数据的基石,在统一的框架下审查部分GNN。李等人。 [12]对应用不同注意机制的GNN进行部分调查。总之,现有的调查仅包括一些GNN,并检查了有限数量的作品,从而忽略了GNN的最新发展。我们的调查为想要进入这个快速发展的领域的感兴趣的研究人员和想要比较GNN模型的专家提供了全面的GNN概述。为了涵盖更广泛的方法,本调查将GNN视为图数据的所有深度学习方法。

我们的贡献
我们的论文作出了显着贡献,总结如下:
1.新的分类法我们提出了一种新的图神经网络分类法。图神经网络分为四组:循环图神经网络,卷积图神经网络,图自动编码器和时空图神经网络。
2.全面审查我们为图数据提供最全面的现代深度学习技术概述。对于每种类型的图神经网络,我们提供代表性模型的详细描述,进行必要的比较,并总结相应的算法。
3.丰富的资源我们在图神经网络上收集了大量资源,包括最先进的模型,基准数据集,开源代码和实际应用。该调查可用作实践指南,用于理解,使用和开发用于各种实际应用的不同深度学习方法。
4.未来方向我们讨论图神经网络的理论方面,分析现有方法的局限性,并在模型深度,可扩展性权衡,动态性和异质性方面提出四种可能的未来研究方向。

我们的调查组织本调查的其余部分安排如下。第二部分概述了图神经网络的背景,列出了常用的符号,以及与图相关的概念。第三节阐述了图神经网络的分类第四到七节提供了图神经网络模型的概述第八节介绍了各个领域的应用程序集合第九节讨论当前挑战并提出未来方向第十节总结了论文

II 背景和定义

在本节中,我们概述了图神经网络的背景,列出了常用的符号,以及与图相关的概念。

A.Background

图神经网络简介(GNNs
Sperduti首先将神经网络应用于有向无环图,这推动了对GNNs的早期研究。最初在Gori等人中概述了图神经网络的概念。 这些早期研究属于递归图神经网络(RecGNNs)的范畴。它们通过以迭代方式传播邻居信息来学习目标节点的表示,直到达到稳定的固定点。这个过程计算成本很高,最近越来越多的努力克服这些挑战。

CNN在计算机视觉领域取得成功的鼓舞,并行开发了大量重新定义图数据卷积符号的方法。这些方法属于卷积图神经网络(ConvGNNs)的保护范围。 ConvGNN分为两个主要流,即基于谱的方法和基于空间的方法。基于谱的ConvGNN开发了基于谱图理论的图卷积。基于空间的ConvGNNs首先通过体系结构复合非递归层处理图形相互依赖,同时继承从RecGNN传递消息的思想。但是,忽略了这项工作的重要性。直到最近,出现了许多基于空间的ConvGNN。代表性RecGNNs和ConvGNNs的时间表显示在表II的第一列中。除了RecGNNs和ConvGNNs之外,在过去几年中已经开发了许多替代GNN,包括图自动编码器(GAE)和时空图神经网络(STGNN)。这些学习框架可以建立在RecGNNs,ConvGNNs或其他神经架构上,用于图建模。详细说明这些方法的类别在第III节中给出。

图神经网络与网络嵌入 GNN的研究与图嵌入或网络嵌入密切相关,另一个主题吸引了数据挖掘和机器学习社区越来越多的关注。网络嵌入旨在将网络节点表示为低维矢量表示,同时保留网络拓扑结构和节点内容信息,以便可以使用简单的现成技术轻松执行任何后续图分析任务,如分类,聚类和推荐机器学习算法(例如,用于分类的支持向量机)。同时,GNN是深度学习模型,旨在以端到端的方式解决与图相关的任务。 GNN和网络嵌入之间的主要区别在于GNN是一组神经网络模型,专为各种任务而设计,而网络嵌入则涵盖针对同一任务的各种方法。因此,GNN可以通过图自动编码器框架解决网络嵌入问题。另一方面,网络嵌入包含其他非深度学习方法,如矩阵分解和随机游走。

B. Definition

在本文中,我们使用粗体大写字符表示矩阵,粗体小写字符表示向量。除非特别说明,否则本文中使用的符号如表I所示。现在我们定义了理解本文所需的最小定义。

Table1:Commonly used notations
![Alt](https://img-blog.csdnimg.cn/20190904114543954.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1hYTVJYWFg=,size_16,color_FFFFFF,t_70) 定义1(图) 定义2(有向图) 有向图是所有边从一个节点指向另一个节点的图。无向图被认为是有向图的特例,其中如果连接了两个节点,则存在具有反向的一对边。有向图的邻接矩阵可以是不对称的,即$A \neq A^T$。无向图的邻接矩阵是对称的,即$A = A^T$。 定义3(空间-时间图) 时空图是属性图,其中节点输入随时间动态变化。时空图被定义为$G(t)=(V,E,X^{(t)})$,其中$X^{(t)}∈R^{n×d}$。
III 分类和框架
在本节中,我们提出了图神经网络(GNN)的分类,如表II所示。我们将图神经网络(GNN)分类为循环图神经网络(RecGNN),卷积图神经网络(ConvGNN),图自动编码器(GAE)和时空图神经网络(STGNN)。图2给出了各种架构模型的示例。在下文中,我们将简要介绍每个类别。

A.图神经网络(GNN)的分类
Recurrent Graph Neural Networks (RecGNNs)
主要是图神经网络的先驱作品。 RecGNN旨在通过循环神经架构学习节点表示。他们假设图中的节点不断地与其邻居交换信息/消息,直到达到稳定的均衡。 RecGNNS在概念上是重要的,并且启发了后来对卷积图神经网络的研究。特别是,信息传播/消息传递的想法最近由基于空间的卷积图神经网络继承。
A Comprehensive Survey on Graph Neural Networks_第2张图片
Convolutional Graph Neural Networks (ConvGNNs)
概括了从网格数据到图形数据的卷积运算。主要思想是通过聚合其自身的特征 x v x_v xv和邻居的特征 x u x_u xu来生成节点v的表示,其中 u ∈ N ( v ) u∈N_{(v)} uNv。与RecGNN不同,ConvGNN堆叠多个图卷积层以提取高级节点表示。 ConvGNNs在构建许多其他复杂的GNN模型中发挥着核心作用。图2a显示了用于节点分类的ConvGNN。图2b演示了用于图表分类的ConvGNN。

A Comprehensive Survey on Graph Neural Networks_第3张图片
具有多个GCN层的图卷积网络的变体。 GCN层通过聚合来自其邻居的特征信息来封装每个节点的隐藏表示。 在特征聚合之后,将非线性变换应用于结果输出。 通过堆叠多个层,每个节点的最终隐藏表示从另一个邻域接收消息。
A Comprehensive Survey on Graph Neural Networks_第4张图片
具有用于图分类的汇集模块的图卷积网络。 GCN层之后是池化层,以将图形粗化为子图形,使得粗糙图形上的节点表示代表更高的图形级别表示。 为了计算每个图形标签的概率,输出层是具有SoftMax函数的线性层。

Graph Autoencoders (GAEs)
是无监督学习框架,其将节点/图编码成潜在向量空间并从编码信息重建图数据。 GAE用于学习网络嵌入和图生成分布。对于网络嵌入,GAE主要通过重建图结构信息(如图邻接矩阵)来学习潜在节点表示。对于图生成,一些方法逐步生成图的节点和边,而其他方法一次输出图。图2c显示了用于网络嵌入的GAE。

A Comprehensive Survey on Graph Neural Networks_第5张图片
带GCN的图形自动编码器。 编码器使用GCN层为每个节点获得潜在的重新表示。 解码器计算编码器产生的节点潜在表示之间的成对距离。 在应用非线性激活函数之后,解码器重建图邻接矩阵。

Spatial-temporal Graph Neural Networks (STGNNs)
旨在从时空图中学习隐藏模式,这在各种应用中变得越来越重要,例如交通速度预测,驾驶员机动预测和人类行为识别。 STGNN的关键思想是同时考虑空间依赖性和时间依赖性。许多当前方法集成图卷积以捕获与RNN或CNN的空间依赖性以模拟时间依赖性。图2d示出了用于时空图预测的STGNN。
A Comprehensive Survey on Graph Neural Networks_第6张图片
使用GCN绘制时空网络图。 GCN层之后是1D-CNN层。 GCN层在A和 X ( t ) X^{(t)} X(t)上操作以捕获空间依赖性,而1D-CNN层沿时间轴在X上滑动以捕获时间依赖性。 输出层是线性变换,为每个节点生成预测。

IV 循环图神经网络
循环图神经网络(RecGNNs)主要是GNN的先驱作品。它们**在图中的节点上循环应用相同的参数集**,以提取高级节点表示。受计算能力的限制,早期的研究主要集中在有向无环图。由Scarselli等人提出的图神经网络。扩展先前的递归模型以处理一般类型的图,例如,非循环,循环,定向和无向图。基于信息扩散机制,GNN通过反复交换邻域信息来更新节点状态,直到达到稳定均衡。节点的隐藏状态通过以下方式反复更新:

h v ( t ) = ∑ u ∈ N ( v ) f ( x v , x ( v , u ) e , x u , h u ( t − 1 ) ) ( 1 ) h_v^{(t)}=\sum_{u\in N_{(v)}}f(x_v,x^e_{(v,u)},x_u,h_u^{(t-1)}) (1) hv(t)=uN(v)f(xv,x(v,u)e,xu,hu(t1))1

其中f(·)是参数函数, h v ( 0 ) h_v^{(0)} hv(0)随机初始化。求和操作使GNN 适用于所有节点,即使邻居的数量不同并且没有邻域排序。为了确保收敛,递归函数f(·)必须是收缩映射,它会缩小映射后两点之间的距离。在f(·)是神经网络的情况下,必须对Jacobian参数矩阵施加惩罚项。当满足收敛标准时,最后一步节点隐藏状态被转发到读出层。 GNN交替节点状态传播的阶段和参数梯度计算的阶段以最小化训练目标。该策略使GNN能够处理循环图。在后续工作中,图回声状态网络(GraphESN)扩展了回声状态网络以提高效率。 GraphESN由编码器和输出层组成。编码器随机初始化,无需培训。它实现了收缩状态转换函数,以反复更新节点状态,直到全局图状态达到收敛。然后,通过将固定节点状态作为输入来训练输出层。

GatedGraphNeuralNetwork(GGNN)
使用门循环单位(GRU)作为递归函数,将循环减少到固定数量的步骤。它的优势在于它不再需要用于协调参数以确保收敛

表III:RecGNN和ConvGNNs的总结。池化和读出层中缺少值(“ - ”)表示该方法仅在节点级/边缘级任务上进行实验。
A Comprehensive Survey on Graph Neural Networks_第7张图片
节点隐藏状态由其先前隐藏状态及其相邻隐藏状态更新,定义为
h v ( t ) = G R U ( h v ( t − 1 ) , ∑ u ∈ N ( v ) W h u ( t ) ) h_v^{(t)}=GRU(h_v^{(t-1)},\sum_{u\in N_{(v)}}Wh_u^{(t)}) hv(t)=GRU(hv(t1),uN(v)Whu(t))

其中 h v ( 0 ) = x v h_v^{(0)}=x_v hv(0)=xv。与GNN和GraphESN不同,GGNN使用反向传播时间(BPTT)算法来学习模型参数。这对于大图来说可能是有问题的,因为GGNN需要在所有节点上多次运行循环函数,要求将所有节点的中间状态存储在存储器中。

随机稳态嵌入式(SSE)提出了一种可以扩展到大规模图的学习算法。 SSE以随机和异步方式循环更新节点隐藏状态。它交替更新一批节点的状态,并对一批节点进行采样以进行梯度计算。为了保持稳定性,SSE的递归函数被定义为历史状态和新状态的加权平均值,形式为:
h v ( t ) = ( 1 − α ) h v ( t − 1 ) + α W 1 σ ( W 2 [ x v , ∑ u ∈ N ( v ) [ h u ( t − 1 ) , x u ] ] ) ( 3 ) h_v^{(t)}=(1-\alpha)h_v^{(t-1)}+\alpha W_1\sigma(W_2[x_v,\sum_{u\in N_{(v)}}[h_u^{(t-1)},x_u]]) (3) hv(t)=(1α)hv(t1)+αW1σ(W2[xv,uN(v)[hu(t1),xu]])(3)
其中α是超参数, h v ( 0 ) h_v^{(0)} hv(0)是随机初始化。虽然在概念上很重要,但SSE的稳定节点状态的收敛标准没有中具体说明。
A Comprehensive Survey on Graph Neural Networks_第8张图片
(a)循环图神经网络(RecGNNs)。 RecGNN在更新节点表示中使用相同的图循环层(Grec)。
(b)卷积图神经网络(ConvGNN)。 ConvGNN在更新节点表示时使用不同的图卷积层(Gconv)。

V 卷积图神经网络

卷积图神经网络(ConvGNNs)与递归图神经网络密切相关。 ConvGNN不是使用收缩约束迭代节点状态,而是使用每层中具有不同权重的固定数量的层在架构上解决循环相互依赖关系。这一关键区别如图3所示。由于图卷积与其他神经网络的结合更加有效和方便,因此近年来ConvGNNs的普及程度迅速提高。 ConvGNN分为两类,基于谱和基于空间。基于谱的方法通过从图信号处理的角度引入滤波器来定义图卷积,其中图卷积运算被解释为从图信号中去除噪声。基于空间的方法通过信息聚合从定义的图卷积继承RecGNN的思想。由于GCN弥合了基于谱的方法和基于空间的方法之间的差距,基于空间的方法由于其具有吸引力的效率,灵活性和通用性而最近迅速发展。

A.基于谱的ConvGNNs

Background 基于谱方法在图信号处理中具有坚实的数学基础。他们假设图是无向的。无向图的数学表示是归一化图拉普拉斯矩阵,定义为 L = I n − D − 1 2 A D − 1 2 L = I_n-D^{-\frac{1}{2}}AD^{-\frac{1}{2}} L=InD21AD21,其中D是节点度的对角矩阵, D i i = Σ j ( A i , j ) D_{ii}=\Sigma_j(A_{i,j}) Dii=Σj(Ai,j)。归一化图拉普拉斯矩阵具有实对称正定性质。利用这个性质,归一化拉普拉斯矩阵可以被解释为 L = U Λ U T L= UΛU^T L=UΛUT,其中 U = [ u 0 , u 1 , . . . , u n − 1 ] ∈ R n × n U = [u_0,u_1,...,u_{n-1}]∈R^{n×n} U=[u0u1...un1]Rn×n是由特征值排序的特征向量矩阵,Λ是特征值(谱)的对角阵, Λ i i = λ i Λ_{ii}=λ_i Λii=λi。归一化拉普拉斯矩阵的特征向量形成正交空间, U T U = I U^TU = I UTU=I.在图信号处理中,图信号 x ∈ R n x∈R^n xRn是图的所有节点的特征向量,其中 x i x_i xi是第i个节点的值。 。对信号x的图傅里叶变换被定义为 F ( x ) = U T x F(x)= U^Tx Fx=UTx,并且逆图傅立叶变换被定义为 F − 1 ( x ) = U x F^{-1}(x)= U x F1x=Ux,其中x表示来自图傅立叶变换的结果信号。图傅里叶变换将输入图信号投影到标准化空间,其中空间基由标准化图拉普拉斯算子的特征向量形成。变换信号x的元素是新空间中的图信号的坐标,使得输入信号可以表示为 x = Σ i x ^ i u i x=\Sigma_i\hat{x}_iu_i x=Σix^iui,这恰好是逆图傅立叶变换。现在,输入信号x与滤波器 g ∈ R N g∈R^N gRN的图卷积被定义为
x ∗ G g = F − 1 ( F ( x ) ⨀ F ( g ) ) = U ( U T x ⨀ U T g ) , ( 4 ) x*Gg=F^{-1}(F(x)\bigodot F(g)) =U(U^Tx\bigodot U^Tg),(4) xGg=F1(F(x)F(g))=U(UTxUTg),(4)
其中 ⨀ \bigodot 表示Hadamard乘积。如果我们将滤波器表示为 g θ = d i a g ( U T g ) g_θ= diag(U^Tg) gθ=diagUTg,那么谱图卷积就会简化为
x ∗ G g θ = U g θ U T x , ( 5 ) x*Gg_\theta =Ug_\theta U^Tx,(5) xGgθ=UgθUTx,(5)
基于谱的ConvGNN都遵循这个定义。关键的区别在于过滤器 g θ g_θ gθ的选择。

谱卷积神经网络(Spectral CNN)假设滤波器 g θ = Θ i , j ( k ) g_θ=Θ_{i,j}^{(k)} gθ=Θi,jk是一组可学习的参数,并且是具有多个通道的图信号。 Spectral CNN的图卷积层定义为
H : , j ( k ) = σ ( ∑ i = 1 f k − 1 U Θ i , j ( k − 1 ) U T H : , i ( k − 1 ) ) ( j = 1 , 2 , . . . , f k ) , ( 6 ) H_{:,j}^{(k)}=\sigma (\sum_{i=1}^{f_{k-1}}UΘ_{i,j}^{(k-1)}U^TH_{:,i}^{(k-1)})(j=1,2,...,f_k),(6) H:,j(k)=σ(i=1fk1UΘi,j(k1)UTH:,i(k1))(j=1,2,...,fk),(6)
其中k是层的索引, H ( k − 1 ) ∈ R n × f k − 1 H_{(k-1)}∈R^{n×f_{k-1}} H(k1)Rn×fk1是输入图信号, H ( 0 ) = X H^{(0)}=X H(0)=X f k − 1 f_{k-1} fk1是输入通道的数量,fk是输出通道的数量, Θ i , j k − 1 Θ_{i,j}^{k-1} Θi,jk1是填充有可学习参数的对角矩阵。由于拉普拉斯矩阵的特征分解,谱CNN面临三个局限。首先,对图的任何扰动都会导致特征基 U T U^T UT的变化。其次,学习过滤器是依赖于域的,这意味着它们不能应用于具有不同结构的图。第三,特征分解需要 O ( n 3 ) O(n^3) O(n3)计算复杂度。在后续工作中,ChebNet和GCN通过进行多次近似和简化将计算复杂度降低到 O ( m ) O(m) O(m)
切比雪夫谱CNN(ChebNet)通过特征值对角矩阵的切比雪夫多项式逼近滤波器 g θ g_θ gθ,即 g θ = Σ i = 0 K − 1 θ i T k ( Λ ~ ) g_θ= \Sigma_{i=0}^{K-1}\theta_iT_k(\widetilde{Λ}) gθ=Σi=0K1θiTk(Λ ),其中 Λ ~ = 2 Λ / λ m a x − I N ∈ [ − 1 , 1 ] \widetilde{Λ}= 2 Λ /λ_{max} - I_N∈[ -1,1] Λ =2Λ/λmaxIN[1,1]。切比雪夫多项式由 T k ( x ) = 2 x T k − 1 ( x ) − T k − 2 ( x ) T_k(x)= 2xT_{k-1}(x)-T_{k-2}(x) Tkx=2xTk1xTk2x递归地定义,其中 T 0 ( x ) = 1 T_0(x)= 1 T0x=1 T 1 ( x ) = x T_1(x)= x T1x=x。结果,图信号x与定义的滤波器gθ的卷积是
A Comprehensive Survey on Graph Neural Networks_第9张图片
其中 L ~ = 2 L / λ m a x − I N \widetilde{L}=2L /λ_{max}-I_N L =2L/λmaxIN 。作为对谱CNN的改进,ChebNet定义的滤波器在空间中定位。学习的权重可以在图中的不同位置共享。 ChebNet的谱线性映射到[-1,1]。 CayleyNet [23]进一步应用Cayley多项式,它是参数有理复合函数,用于捕获窄频带。 CayleyNet的谱图卷积定义为
Alt
其中Re(·)返回复数的实部, c 0 c_0 c0是实数系数, c j c_j cj是复数系数,i是虚数,h是控制Cayley滤波器谱的参数。在保留空间局部性的同时,CayleyNet显示ChebNet可以被视为CayleyNet的特例。
图卷积网络(GCN)引入了ChebNet的一阶近似。假设K = 1且λmax= 2,则公式7简化为
Alt
为了限制参数的数量并避免过拟合,GCN进一步假设 θ = θ 0 = − θ 1 θ=θ_0=-θ_1 θ=θ0=θ1,导致图卷积的以下定义
Alt
为了允许多通道输入和输出,GCN将公式10修改为组合层,定义为
Alt
其中 A ‾ = I n + D 1 2 A D 1 2 \overline{A}=I_n + D^{\frac{1}{2}}AD^{\frac{1}{2}} A=In+D21AD21= 和f(·)是激活函数。使用 I n + D 1 2 A D 1 2 I_n + D^{\frac{1}{2}}AD^{\frac{1}{2}} In+D21AD21导致GCN的数值不稳定。为了解决这个问题,GCN采用归一化技巧将 A ‾ = I N + D 1 2 A D 1 2 \overline{A}=I_N+D^{\frac{1}{2}}AD^{\frac{1}{2}} A=IN+D21AD21替换为 A ‾ = D ~ 1 2 A ~ D ~ 1 2 \overline{A}=\widetilde{D}^{\frac{1}{2}}\widetilde{A}\widetilde{D}^{\frac{1}{2}} A=D 21A D 21,其中 A ~ = A + I N \widetilde{A}=A+I_N A =A+IN D ~ i i = Σ j A ~ i j \widetilde{D}_{ii}=\Sigma_j\widetilde{A}_{ij} D ii=ΣjA ij。作为基于谱的方法,GCN也可以被解释为基于空间的方法。从基于空间的角度来看,GCN可以被视为聚合来自节点邻域的特征信息。等式11可表示为
Alt

最近的几项工作通过探索替代对称矩阵对GCN进行了逐步改进。自适应图卷积网络(AGCN)学习由图邻接矩阵未指定的隐藏结构关系。它通过可学习的距离函数构造所谓的残差图邻接矩阵,该函数将两个节点的特征作为输入。双图卷积网络(DGCN)引入了双图卷积结构,其具有两个并行的图卷积层。虽然这两个层共享参数,但它们使用归一化邻接矩阵 A ‾ \overline{A} A以及随机游走中节点共现导出的归一化正向点互信息(PPMI)矩阵。通过对来自双图卷积层的输出进行集成,DGCN捕获局部和全局结构信息,而无需堆叠多个图卷积层。

B. Spatial-based ConvGNNs
由于传统CNN在图像上的卷积运算,基于空间的方法基于节点的空间关系来定义图卷积。图像可以被视为图的特殊形式,每个像素代表一个节点。每个像素直接连接到其附近的像素,如图1a所示。对于3×3窗口,每个节点的邻域是其周围的八个像素。然后通过在每个通道上取中心节点及其邻居的像素值的加权平均值,将滤波器应用于该3×3 patch。类似地,基于空间的图卷积卷绕中心节点表示与其邻居的表示,以导出中心节点的更新表示,如图1b所示。从另一个角度来看,基于空间的ConvGNN与RecGNN共享信息传播/消息传递的概念相同。空间图卷积运算实质上沿边缘传播节点信息。
图的神经网络(NN4G)是基于空间的ConvGNN的第一个工作。 NN4G通过直接汇总节点的邻域信息来执行图卷积。它还应用残差连接和跳过连接来记忆每层的信息。结果,NN4G导出其下一层节点状态通过
Alt
其中f(·)是激活函数, h v ( 0 ) = 0 h_v^{(0)}=0 hv(0)=0。等式13也可以用矩阵形式写出:
Alt
它类似于GCN的形式。主要区别在于NN4G使用非标准化邻接矩阵,这可能会导致数值不稳定性问题。语境图马尔可夫模型(CGMM)提出了一种基于NN4G的概率模型。在保持空间局部性的同时,CGMM具有概率可解释性的好处。
扩散卷积神经网络(DCNN)将图卷积视为扩散过程。它假设信息以一定的转移概率从一个节点传输到其相邻节点之一,以便信息分布在几轮之后达到平衡。 DCNN将扩散图卷积定义为
Alt
其中f(·)是激活函数,概率转移矩阵 P ∈ R n × n P∈R_{n×n} PRn×n P = D − 1 A P = D^{-1}A P=D1A计算。在DCNN中,隐藏表示矩阵 H ( k ) H^{(k)} Hk保持与输入特征矩阵X相同的维度,并且不是其先前隐藏表示矩阵 H ( k − 1 ) H^{(k-1)} Hk1的函数。 DCNN将 H ( 1 ) , H ( 2 ) , . . . , H ( K ) H^{(1)},H^{(2)},...,H^{(K)} H(1),H(2),...,H(K)连接在一起作为最终模型输出。由于扩散过程的平稳分布是概率转移矩阵的幂级数的和,扩散图卷积(DGC)是在每个扩散步骤而不是级联中求和输出。它定义了扩散图卷积
Alt
其中 W ( k ) ∈ R D × F W^{(k)}∈R^{D×F} WkRD×F和f(·)是激活函数。使用转移概率矩阵意味着远程邻居向中心节点贡献非常少的信息。 PGC-DGCNN基于最短路径增加远距离邻居的贡献。它定义了最短路径邻接矩阵 S ( j ) S^{(j)} Sj。如果从节点v到节点u的最短路径长度为j,则 S v , u = 1 ( j ) , S^{(j)}_{v,u = 1}, Svu=1j否则为0.使用超参数r来控制接收域大小,PGC-DGCNN引入如下图卷积操作
Alt
其中 D ~ i i ( j ) = Σ l S i , l ( j ) , H ( 0 ) = X \widetilde{D}_{ii}^{(j)}=\Sigma_lS_{i,l}^{(j)},H^{(0)}=X D ii(j)=ΣlSi,l(j),H(0)=X,并且||表示向量的串联。最短路径邻接矩阵的计算高代价的, O ( n 3 ) O(n^3) O(n3)最大。分区图卷积(PGC)基于不限于最短路径的某些标准将节点的邻居划分为Q组.PGC根据每个组定义的邻域构造Q邻接矩阵。然后,PGC将GCN 与不同的参数矩阵应用于每个邻居组并对结果求和:
A Comprehensive Survey on Graph Neural Networks_第10张图片
消息传递神经网络(MPNN)概述了基于空间的ConvGNN的一般框架。它将图卷积视为消息传递过程,其中信息可以直接沿着边缘从一个节点传递到另一个节点。 MPNN运行K步消息传递迭代以使信息进一步传播。消息传递函数(即空间图卷积)定义为
Alt
其中 h v ( 0 ) = x v h_v^{(0)}=x_v hv(0)=xv U k U_k Uk(·)和 M k M_k Mk(·)是具有可学习参数的函数。在导出每个节点的隐藏表示之后,可以将 h v ( K ) h_v^{(K)} hv(K)传递到输出层以执行节点级预测任务或传递到读出函数以执行图级别预测任务。读出函数基于节点隐藏表示生成整个图的表示。它通常被定义为
Alt
A Comprehensive Survey on Graph Neural Networks_第11张图片
其中R(·)表示具有可学习参数的读出函数。 MPNN可以通过假设不同形式的Uk(·),Mk(·)和R(·)来覆盖许多现有的GNN。然而,图同构网络(GIN)发现MPNN框架下的方法无法根据它们产生的图嵌入来区分不同的图结构。为了修正这个缺点,GIN通过可学习的参数(k)调整中心节点的权重。它通过执行图卷积
Alt

由于节点的邻居数量可以从一到一千甚至更多,因此无法获取节点邻域的全部大小。 GraphSage 采用抽样来获得每个节点固定数量的邻居。它通过执行图卷积
Alt
其中 h v ( 0 ) = x v , f k ( ⋅ ) h_v^{(0)}=x_v,f_k(·) hv(0)=xv,fk()是聚合函数, S N ( v ) S_{N_{(v)}} SN(v)是节点v的邻居的随机样本。聚合函数应该对节点排序的排列不变,例如均值,和或最大函数。
图注意力网络(GAT)假设相邻节点对中心节点的贡献既不像GraphSage 那样相同,也不像GCN那样预先确定(这种差异如图4所示)。 GAT采用注意力机制来学习两个连接节点之间的相对权重。根据GAT的图形卷积运算定义为
Alt
其中 h v ( 0 ) = x v h_v^{(0)}=x_v hv(0)=xv,注意权重 a v u a_{vu} avu测量从节点v到其邻居u的连接强度,并由
Alt
其中g(·)是LeakReLU激活函数,a是可学习参数的向量。 softmax函数确保注意力权重在节点v的所有邻居上总和为1。 GAT进一步注重多头注意力,以提高模型的表现能力。这显示了GraphSage在节点分类任务上的显着改进。虽然GAT假设注意力头的贡献相等,但门控注意力网络(GAAN)引入了一种自注意力机制,该机制计算每个注意力头的额外注意力得分。除了在空间上应用图注意力外,GeniePath进一步提出了一种类似LSTM的门控机制来控制图卷积层的信息流。还有其他图注意力模型可能会引起关注。但是,它们不属于ConvGNN框架。

混合模型网络(MoNet)采用不同的方法为节点的邻居分配不同的权重。它引入节点伪坐标以确定节点与其邻居之间的相对位置。一旦知道两个节点之间的相对位置,权重函数就将相对位置映射到这两个节点之间的相对权重。通过这种方式,图形滤波器的参数可以在不同的位置共享。在MOS框架下,有几种现有的流形方法,如Geodesic CNN(GCNN),各向异性CNN(ACNN),Spline CNN ,以及通过构造非参数权重函数,可以将诸如GCN ,DCNN 之类的图一般化为MoNet的特殊实例。 MoNet还提出了一个具有可学习参数的高斯核函数,以自适应地学习权重函数。
另一个不同工作通过基于特定标准对节点的邻居进行划分等级并将每个等级与可学习的权重相关联来实现跨不同位置的权重共享。PATCHY-SAN 根据图标签对每个节点的邻居进行排序,并选择前q个邻居。图标签本质上是节点score,可以通过节点度,中心性,Weisfeiler-Lehman颜色等得出。由于每个节点现在都有固定数量的有序邻居,因此图结构数据可以转换为网格结构数据。 PATCHY-SAN应用标准的1D卷积滤波器来聚合邻域特征信息,其中滤波器权重的顺序对应于节点邻居的顺序。 PATCHY-SAN的等级标准仅考虑图结构,这需要大量的数据处理计算。大规模图卷积网络(LGCN)基于节点特征信息对节点的邻居进行排序。对于每个节点,LGCN组装一个特征矩阵,该矩阵由其邻域组成,并沿每列对此特征矩阵进行排序。排序的特征矩阵的前q行作为中心节点的输入数据。
提高训练效率 训练像GCN 这样的ConvGNN通常需要将整个图数据和所有节点中间状态保存到内存中。 ConvGNNs的完整训练算法受到内存溢出问题的严重影响,特别是当图包含数百万个节点时。为了节省内存,GraphSage 提出了一种针对ConvGNN的批量训练算法。它通过以固定的样本大小递归K步递增扩展根节点的邻域来对以每个节点为根的树进行采样。对于每个采样树,GraphSage通过从下到上分层聚合隐藏节点表示来计算根节点的隐藏表示。
图卷积网络快速学习(Fast-GCN)为每个图卷积层采样固定数量的节点,而不是像GraphSage那样为每个节点采样固定数量的邻居。它将图卷积解释为概率测度下节点嵌入函数的整体变换。采用蒙特卡罗近似和方差减少技术来促进训练过程。由于FastGCN为每个层独立地采样节点,因此层间连接可能是稀疏的。Huang提出了一种自适应的逐层采样方法,其中下层的节点采样以最上层的为条件。与FastGCN相比,该方法以采用更复杂的采样方案为代价实现了更高的精度。
在另一项工作中,随机训练图卷积网络(StoGCN)使用历史节点表示作为控制变量,将图卷积的感受野大小减小到任意小的比例。即使每个节点有两个邻居,StoGCN也能实现相当的性能。但是,StoGCN仍然必须保存所有节点中间状态,这对于大型图形来说是耗费内存的。
Cluster-GCN 使用图聚类算法对子图进行采样,并对采样子图中的节点执行图卷积。由于邻居搜索也在采样子图中受到限制,因此Cluster-GCN能够在更短的时间内以更少的内存处理更大的图并同时使用更深层的体系结构。 Cluster-GCN显着地为现有的ConvGNN训练算法提供了时间复杂度和存储器复杂性的直接比较。我们根据表IV分析其结果。
在表IV中,GCN是进行全批量训练的baseline。 GraphSage以牺牲时间效率为代价来节省内存。同时,随着K和r的增加,GraphSage的时间和内存复杂度呈指数增长。 Sto-GCN的时间复杂度最高,内存的瓶颈仍未得到解决。然而,Sto-GCN可以用非常小的r实现令人满意的性能。 Cluster-GCN的时间复杂度与baseline保持一致,因为它不引入冗余计算。在所有方法中,Cluster GCN实现了最低的内存复杂度。
谱与空间模型的比较 谱模型在图信号处理中具有理论基础。通过设计新的图信号滤波器(例如,Cayleynets ),理论上可以构建新的ConvGNN。然而,由于效率,一般性和灵活性问题,**空间模型优于谱模型。**首先,谱模型的效率低于空间模型。谱模型要么需要执行特征向量计算,要么同时处理整个图。空间模型对大规模图更具可扩展性,因为它们通过信息聚合直接在图域中执行卷积。可以在一批节点中执行计算而不是整个图。其次,依赖图傅立叶基的谱模型对新图的泛化较差。他们假设一个固定的图。图的任何扰动都会导致特征基的变化。另一方面,基于空间的模型在每个节点上本地执行图卷积,其中权重可以容易地在不同的位置和结构上共享。第三,基于谱的模型仅限于在无向图上运行。基于空间的模型更灵活地处理多源图输入,如边输入,有向图,有符号图和异构图,因为这些图输入可以很容易地合并到聚合函数中。
A Comprehensive Survey on Graph Neural Networks_第12张图片

C.图池化模块
在GNN生成节点功能之后,我们可以将它们用于最终任务。但是直接使用所有这些特征在计算上具有挑战性,因此需要采样下采样策略。根据目标及其在网络中扮演的角色,该策略给出了不同的名称:(1)池化操作旨在通过对节点进行下采样来减小参数的大小,以生成更小的表示,从而避免过度配置,排列不变性和计算复杂性问题; (2)读出操作主要用于基于节点表示生成图级表示。他们的机制非常相似。在本章中,我们使用池来指代应用于GNN的各种下采样策略。在一些早期的工作中,图形粗化算法使用特征分解来基于其拓扑结构粗化图形。然而,这些方法遭受时间复杂性问题。 Graclus算法[100]是特征分解的替代方案,用于计算原始图的聚类版本。最近的一些作品[23]将其用作粗化图的汇集操作。如今,平均值/最大值/总和池是实现下采样的最有效和最有效的方法,因为计算池化窗口中的均值/最大值/总和值很快:
Alt
其中K是最后一个图卷积层的索引。在网络开始时执行简单的最大/均值池对于降低图中的维数并降低昂贵的图傅里叶变换操作的成本尤为重要。此外,一些作品也使用注意力机制来增强均值/总和。即使有注意力机制,减少操作也是无效的,忽略了节点排序的影响。 提出Set2Set方法来减少顺序影响。它首先将输入数据嵌入到存储器向量中,然后将该向量馈送到LSTM中以进行更新。在几次迭代之后,将生成对输入不变的置换的最终嵌入。

通过优化最大/最小池并在他们的方法ChebNet中设计有效的池化策略以另一种方式解决这个问题。输入图表首先由Graclus算法处理。在粗化之后,输入图的节点及其粗化版本在平衡二叉树中重新形成。任意地对最粗糙级别的节点进行排序,并将这种排序传播到平衡二叉树中的较低级别,最终在最好的级别中产生规则排序。汇集这样的重新排列的信号比汇集原始信号要有效得多。
提出DGCNN使用一个名为SortPooling的类似池化策略,它通过将节点重新排列为有意义的顺序来执行池化。与ChebNet 不同,DGCNN根据图中的结构角色对节点进行排序。来自空间图卷积的图的无序节点特征被视为连续的WL颜色,然后它们用于对节点进行排序。除了对节点特征进行排序之外,它还通过截断/扩展节点特征矩阵将图大小统一为q。如果n> q则删除最后的n-q行,否则添加q -n零行。该方法对于节点排列是不变的,因此增强了ConvGNN的性能。
上述池化方法主要考虑图特征,忽略图的结构信息。最近,提出了一种可微分池化(DiffPool),它可以生成图的层次表示。与之前的所有粗化方法相比,DiffPool不是简单地在图中聚类节点,而是在k层学习聚簇分配矩阵S,称为 S ( k ) ∈ R n k ∗ n k + 1 S^{(k)} \in R^{n_k*n_{k+1}} S(k)Rnknk+1,其中 n k n_k nk是第k层的节点数。矩阵 S ( k ) S^{(k)} S(k)中的概率值是基于节点特征和拓扑结构生成的
Alt
其核心思想是学习综合节点分配,同时考虑图的拓扑和特征信息,因此可以使用任何标准ConvGNN实现等式25。然而,DiffPool的缺点是它在合并后生成密集图,此后计算复杂度变为 O ( n 2 ) O(n^2) O(n2)。最近,提出了SAGPool 方法,该方法考虑节点特征和图拓扑,并以自注意力的方式学习池化。
总体而言,池化是减少小规模的基本操作。如何提高池化的有效性和计算复杂性仍然是一个悬而未决的问题。

D.理论方面的讨论
我们从不同的角度讨论了图神经网络的理论基础。
感受野的形状 节点的感受野是有助于确定其最终节点表示的节点集。当合成多个空间图卷积时,节点的感受野每次向其远端邻居前进一步。 证明存在有限数量的空间图卷积层,使得对于每个节点v∈V,节点v的感受野覆盖图中的所有节点。结果,ConvGNN能够通过堆叠局部图卷积来提取全局信息。

VC维度 VC维度是模型复杂性的度量,被定义为模型可以破碎的最大点数。关于分析GNN的VC维度的工作很少。给定模型参数p的数量和节点数n。推导出GNN 的VC维数如果使用sigmoid或tanh激活函数则为 O ( p 4 n 2 ) O(p^4n^2) Op4n2,如果使用分段多项式激活函数则为 O ( p 2 n ) O(p^2n) Op2n。这个结果表明,如果使用sigmoid或tanh激活函数,GNN 的模型复杂度随p和n迅速增加。

图同构 如果它们在拓扑上是相同的,则两个图是同构的。鉴于两个非同构图G1和G2。证明如果GNN将G1和G2映射到不同的嵌入,这两个图可以通过同构的Weisfeiler-Lehman(WL)检验被识别为非同构​​的。他们表明,常见的GNN如GCN 和GraphSage无法区分不同的图结构。进一步证明了GNN的聚合函数和读出函数是否是单射的,GNN在区分不同图时最多与WL测试一样强大。

等效性和不变性 GNN在执行节点级任务时必须是一个等变函数,在执行图级任务时必须是一个不变函数。对于节点级任务,令 f ( A , X ) ∈ R n ∗ d f(A,X) \in R ^{n*d} f(A,X)Rnd为GNN,Q为任何改变节点顺序的置换矩阵。如果满足 f ( Q A Q T , Q X ) = Q f ( A , X ) f(QAQ^T,QX) = Qf(A,X) f(QAQT,QX)=Qf(A,X),则GNN是等变的。对于图级任务,设 f ( A , X ) ∈ R d f(A,X) \in R^d f(A,X)Rd。如果满足 f ( Q A Q T , Q X ) = f ( A , X ) f(QAQ^T,QX) = f(A,X) f(QAQT,QX)=f(A,X),则GNN是不变的。为了实现等价或不变性,GNN的组件必须对节点排序不变。 理论上研究了图数据的置换不变和等变线性层的特征。

通用近似 众所周知,具有一个隐藏层的多感知器前馈神经网络可以近似任何Borel可测量函数[105]。 GNN的通用逼近能力很少被研究。 Hammer等人。 [106]证明级联相关可以近似函数与结构化输出。 Scarselli等。 [107]证明RecGNN [15]可以近似任何保持展开等价的函数,达到任何精度。 如果两个节点的展开树相同,则通过在某个深度迭代地扩展节点的邻域来构造节点的展开树,则两个节点展开等效。 徐等人。 [57]表明在消息传递框架下的ConvGNNs [27]并不是在多重集合上定义的连续函数的通用逼近器。 Maron等人。 [104]证明了一个不变图网络可以逼近图上定义的任意不变函数。

VI. GRAPH AUTOENCODERS
图自动编码器(GAE)是深度神经架构,其将节点映射到潜在特征空间并解码来自潜在表示的图形信息。 GAE可用于学习网络嵌入或生成新图形。 表5总结了所选GAE的主要特征。在下文中,我们从网络嵌入和图形生成两个角度对GAE进行了简要回顾。

A.网络嵌入 网络嵌入是节点的低维矢量表示,其保留节点的拓扑信息。 GAE使用编码器学习网络嵌入以提取网络嵌入并使用解码器强制网络嵌入以通过重建正向点互信息矩阵(PPMI)[59],邻接矩阵[61]等来保存节点的拓扑信息。
早期的方法主要采用多层感知器来构建用于网络嵌入学习的GAE。用于图形表示的深度神经网络(DNGR)[59]使用堆叠去噪自动编码器[108]来通过多层感知器对逐点互信息矩阵(PPMI)进行编码和解码。所学习的潜在表示能够保持数据背后的高度非线性规律性,并且特别是在存在缺失值时是稳健的。 PPMI矩阵通过从图中采样的随机游走本质上捕获节点共现信息。形式上,PPMI矩阵定义为
Alt
其中v1,v2∈V,| D | = Pv1,v2 count(v1,v2)和count(·)函数返回节点v和/或节点u在采样随机游走中共同出现/发生的频率。
同时,结构深度网络嵌入(SDNE)[60]使用堆叠自动编码器来共同保持节点的一阶接近度和二阶接近度。 SDNE分别在编码器的输出和解码器的输出上提出两个损耗函数。 第一个丢失功能使学习的网络嵌入通过最小化节点的网络嵌入与其邻居的网络嵌入之间的距离来保持节点的接近度。 第一个损失函数L1st定义为
Alt
其中xv = Av,:和enc(·)是一个由多层感知器组成的编码器。 第二个损失函数使得学习的网络嵌入通过最小化节点的输入与其重建的输入之间的距离来保持节点二阶接近度。 具体地,第二损失函数L2nd被定义为
Alt
其中bv,u = 1如果Av,u = 0,bv,u =β> 1如果Av,u = 1,则dec(·)是由多层感知器组成的解码器。
A Comprehensive Survey on Graph Neural Networks_第13张图片
DNGR [59]和SDNE [60]仅考虑节点结构信息。 他们忽略节点可能包含功能信息。 图自动编码器(GAE * 3)[61]利用GCN [22]同时编码节点结构信息和节点特征信息。 GAE *的编码器由两个图形卷积层组成,它采用的形式
Alt
其中Z表示图的网络嵌入矩阵,f(·)是ReLU激活函数,Gconv(·)函数是由公式11定义的图卷积层.GAE *的解码器旨在解码其中的节点关系信息。 嵌入通过重建图形邻接矩阵,定义为
Alt
其中zv是节点v的嵌入。通过在给定真实邻接矩阵A和重构邻接矩阵的情况下最小化负交叉熵来训练GAE *
由于自动编码器的容量,简单地重建图形邻接矩阵可能导致过度拟合。 变分图自动编码器(VGAE)[61]是GAE的变分版本,用于学习数据的分布。 VGAE优化变分下界L:
Alt
是高斯先验p(Z)= QN i = 1 p(zi)= QN i = 1 N(zi | 0,I),p(Aij = 1 | zi,zj)= dec(zi,zj)=σ (zT i zj),q(Z | X,A)= QN i = 1 q(zi | X,A),q(zi | X,A)= N(zi |μi,diag(σ2i))。平均向量μi是由等式29定义的编码器输出的第i行,并且logσi与用另一编码器的μi类似地导出。根据等式31,VGAE假设经验分布q(Z | X,A)应该与先前分布p(Z)一样接近。为了进一步强制经验分布q(Z | X,A)近似于先验分布p(Z),逆向正则化变分图自动编码器(ARVGA)[62],[109]采用生成对抗网络(GAN)的训练方案[110]。 GAN在训练生成模型中在发生器和鉴别器之间进行竞赛游戏。生成器试图生成“假样本”以尽可能真实,而鉴别器试图将“假样本”与真实样本区分开来。受GAN的启发,ARVGA努力学习产生经验分布q(Z | X,A)的编码器,其与先前分布p(Z)无法区分。除了优化重建误差之外,GraphSage [42]还表明,两个节点之间的关系信息可以通过负采样来保留:
Alt
其中节点u是节点v的邻居,节点vn是节点v的远节点,并且从负采样分布Pn(v)采样,并且Q是负样本的数量。此丢失函数实质上强制关闭节点具有类似的表示,而远程节点具有不同的表示。 DGI [56]通过最大化本地互信息来驱动本地网络嵌入以捕获全局结构信息。它在实验上显示出对GraphSage [42]的明显改进。对于上述方法,损失函数都与图邻接矩阵有关,无论是隐式还是显式。然而,图的稀疏性导致邻接矩阵的正条目的数量远小于零的数量。为了减轻数据稀疏性问题,另一行工作通过随机排列或随机遍历将图形转换为序列。以这种方式,可以直接使用那些适用于序列的深度学习方法来处理图形。深度递归网络嵌入(DRNE)[63]假设节点的网络嵌入应该近似于其邻域网络嵌入的聚合。它采用Long ShortTerm Memory(LSTM)网络[7]来聚合节点的邻居。 DRNE的重建误差定义为
Alt
其中zv是通过字典查找获得的节点v的网络嵌入,并且LSTM网络采用按节点度排序的节点v的邻居的随机序列作为输入。 如等式33所示,DRNE通过LSTM网络隐式地学习网络嵌入,而不是使用LSTM网络来生成网络嵌入。 它避免了LSTM网络对节点序列的排列不变的问题。 具有异常正则化自动编码器的网络表示(NetRA)[64]提出了具有一般损失函数的图编码器 - 解码器框架,定义为
Alt
其中dist(·)是节点嵌入z与其构造的z之间的距离度量.NetRA的编码器和编码器是LSTM网络,随机遍历每个节点v∈V作为输入。 与ARVGA [62]类似,NetRA通过对抗性训练将学习的网络嵌入规范化为先前的分布。 尽管NetRA忽略了LSTM网络的节点置换变异问题,但实验结果验证了NetRA的有效性。
B. Graph Generation 通过多个图形,GAE能够通过将图形编码为隐藏表示并解码给定隐藏表示的图形结构来学习图形的生成分布。用于图生成的大多数GAE旨在解决分子图生成问题,其在药物发现中具有高实用价值。这些方法或者以顺序方式或以全局方式提出新图。
顺序方法通过逐步提出节点和边来生成图。戈麦斯等人。 [111],Kusner等。 [112],戴等人。 [113]分别以深CNN和RNN作为编码器和解码器,对名为SMILES的分子图的串表示的生成过程进行建模。虽然这些方法是特定领域的,但是通过将节点和边缘迭代地添加到增长图中直到满足某个标准,替代解决方案适用于一般图。深度生成图模型(DeepGMG)[65]假设图的概率是所有可能节点排列的总和:
Alt
其中π表示节点排序。它捕获图中所有节点和边的复杂联合概率。 DeepGMG通过做出一系列决策来生成图形,即是否添加节点,要添加哪个节点,是否添加边缘以及连接到新节点的节点。生成节点和边缘的决策过程以节点状态和由RecGNN更新的增长图的图形状态为条件。在另一项工作中,GraphRNN [66]提出了图级RNN和边缘级RNN来模拟节点和边缘的生成过程。图形级RNN每次向节点序列添加新节点,而边缘级RNN产生指示新节点与先前在序列中生成的节点之间的连接的二进制序列。全局方法一次输出一个图表。图变分自动编码器(GraphVAE)[67]将节点和边的存在建模为独立的随机变量。通过假设由编码器定义的后验分布qφ(z | G)和由解码器定义的生成分布pθ(G | z),GraphVAE优化变分下界:
Alt
其中p(z)遵循高斯先验,φ和θ是可学习的参数。使用ConvGNN作为编码器和简单的多层感知层作为解码器,GraphVAE输出生成的图形及其邻接矩阵,节点属性和边缘属性。控制生成的图形的全局属性具有挑战性,例如图形连接性,有效性和节点兼容性。规则化图变分自动编码器(RGVAE)[68]进一步对图变分自动编码器施加有效性约束,以规范解码器的输出分布。分子生成性对抗网络(MolGAN)[69]整合了convGNN [114],GAN [115]和强化学习目标,以生成具有所需属性的图。 MolGAN由发电机和鉴别器组成,相互竞争以提高发电机的真实性。在MolGAN中,生成器试图提出伪图及其特征矩阵,而鉴别器旨在区分假样本和经验数据。另外,与鉴别器并行地引入奖励网络,以根据外部评估者鼓励所生成的图具有某些属性。 NetGAN [70]将LSTM [7]与Wasserstein GAN [116]结合起来,从基于随机游走的方法生成图形。 NetGAN训练发电机通过LSTM网络产生合理的随机行走,并强制执行鉴别器识别真实随机行走。在训练之后,通过归一化基于由生成器产生的随机游走计算的节点的共生矩阵来导出新图。
虽然顺序方法和全局方法从两个不同的角度解决了图生成问题,但它们都遭受了大规模问题。一方面,顺序方法将图形线性化为序列。如果图形很大,结果序列将相应地过长。用RNN模拟长序列是无效的。另一方面,由于全局方法一次性生成图形,GAE的输出空间达到O(n2)。
七。空间 - 时间图形神经网络 许多实际应用中的图形在图形结构和图形输入方面都是动态的。时空图神经网络(STGNN)在捕捉图的动态性方面占据重要地位。此类别下的方法旨在模拟动态节点输入,同时假设连接节点之间的相互依赖性。例如,交通网络由放置在道路上的速度传感器组成,其中边缘权重由传感器对之间的距离确定。由于一条道路的交通条件可能取决于其相邻道路的条件,因此在进行交通速度预测时必须考虑空间依赖性。作为解决方案,STGNN同时捕获图的空间和时间依赖性。 STGNN的任务可以是预测未来的节点值或标签,或预测空间时间图标签。 STGNN遵循两个方向,基于RNN的方法和基于CNN的方法。大多数基于RNN的方法通过使用图形卷积过滤输入和隐藏状态来捕获时空依赖性[48],[71],[72]。为了说明这一点,假设一个简单的RNN采用这种形式
Alt
其中X(t)∈Rn×d是时间步长t的节点特征矩阵。 插入图形卷积后,等式37变为
Alt
其中Gconv(·)是图卷积层。图形卷积递归网络(GCRN)[71]将LSTM网络与ChebNet [21]结合起来。扩散卷积递归神经网络(DCRNN)[72]将提出的扩散图卷积层(等式15)合并到GRU网络中。此外,DCRNN采用编码器 - 解码器框架来预测节点值的未来K步。另一项并行工作使用节点级RNN和边缘级RNN来处理时间信息的不同方面。 Structural-RNN [73]提出了一个循环框架来预测每个时间步的节点标签。它包括两种RNN,即节点-RNN和边缘-RNN。每个节点和每个边缘的时间信息分别通过节点-RNN和边缘-RNN。为了合并空间信息,节点-RNN将edgeRNN的输出作为输入。由于假设不同节点和边缘的不同RNN显着增加了模型复杂性,因此它将节点和边缘分成语义组。同一语义组中的节点或边共享相同的RNN模型,这节省了计算成本。基于RNN的方法遭受耗时的迭代传播和梯度爆炸/消失问题,特别是在结合ConvGNN时。作为替代解决方案,基于CNN的方法以非递归方式处理时空图,具有并行计算,稳定梯度和低存储器要求的优点。如图2d所示,基于CNN的方法将1DCNN层与图形卷积层交织以学习时间和空间依赖性。假设图形时空网络的输入是张量X∈RT×n×d,1D-CNN层沿时间轴滑过X [:,i,:]以聚合每个节点的时间信息而图形卷积层在X [i,:,]上运行,以在每个时间步骤聚合空间信息。 CGCN [74]将1D卷积层与ChebNet [21]或GCN [22]层相结合。它通过按顺序堆叠门控1D卷积层,图卷积层和另一门控1D卷积层来构造空间 - 时间块。 ST-GCN [75]使用1D卷积层和PGC层组成空间 - 时间块(等式17)。以前的方法都使用预定义的图形结构。他们假设预定义的图形结构反映了节点之间的真正依赖关系。但是,在空间 - 时间设置中有许多图形数据快照,可以从数据中自动学习潜在的静态图形结构。为了实现这一点,Graph WaveNet [76]提出了一种自适应邻接矩阵来执行图形卷积。自适应邻接矩阵定义为
Alt
其中E1表示源节点嵌入,E2表示嵌入可学习参数的目标节点。通过将E1与E2相乘,可以获得从源节点到目标节点的依赖性权重。利用复杂的基于CNN的时空神经网络,Graph WaveNet在没有给出邻接矩阵的情况下表现良好。学习潜在的静态空间依赖性可以帮助研究人员发现网络中不同实体之间的可解释和稳定的相关性。然而,在某些情况下,学习潜在的动态空间依赖性可以进一步提高模型精度。例如,在交通网络中,两条道路之间的行程时间可能取决于它们当前的交通条件。 GaAN [48]采用注意机制通过基于RNN的方法学习动态空间依赖性。注意功能用于在给定其当前节点输入的情况下更新两个连接节点之间的边缘权重。 ASTGCN [77]还包括空间注意功能和时间注意功能,以通过基于CNN的方法来学习潜在的动态空间依赖性和时间依赖性。学习潜在空间依赖性的共同缺点是它需要计算每对节点之间的空间依赖性权重,这需要花费O(n2)。
八。应用
由于图形结构数据无处不在,GNN具有广泛的应用程序。在本节中,我们总结了文献中经常使用的基准图数据集。然后我们分别报告节点分类和图分类任务的基准性能。我们提供GNN的可用开源实现。我们详细介绍了GNN在各个领域的实际应用。
A.数据集
数据集对于评估GNN在不同任务(如节点分类和图表分类)中的性能是必不可少的。我们主要将数据集分为四组,即引文网络,生化图,社交网络等。在表VI中,我们总结了文献中常用的数据集。更详细的信息见附录A.
B.基准和开源实现
节点分类和图分类是测试RecGNN和ConvGNN性能的常见任务。在表VII中,我们报告了五种数据集上节点分类的基准性能,即Cora,Citeseer,Pubmed,PPI和Reddit。在表VIII中,我们报告了五种数据集上图形分类的基准性能,即NCI-1,MUTAG,D&D,PROTEIN和PTC。开源实现有助于深度学习研究中的基线实验工作。由于存在大量的超参数,很难在不使用公开的代码的情况下获得与文献中报道的相同的结果。在附录B中,我们提供了本文中评论的GNN模型的开源实现的超链接。值得注意的是,Fey等人。 [92]在PyTorch中发布了一个名为PyTorch Geometric 4的几何学习库,它实现了许多GNN。最近,Deep Graph Library(DGL)5发布,它提供了在PyTorch和MXNet等流行的深度学习平台上快速实现的许多GNN。
C.实际应用
GNN在不同的任务和域中有许多应用程序。尽管可以直接处理每类GNN的一般任务,包括节点分类,图分类,网络嵌入,图生成和时空图预测,但其他一般的图相关任务,如节点聚类[129],链接预测[130] ]和图分区[131]也可以通过GNN来解决。我们基于以下研究领域详细介绍了一些应用程序。计算机视觉GNN在计算机视觉中的应用包括场景图生成,点云分类和分割,动作识别等。识别对象之间的语义关系有助于理解视觉场景背后的意义。场景图生成模型旨在将图像解析为由对象及其语义关系组成的语义图[132],[133],[134]。另一个应用程序通过在给定场景图形的情况下生成逼真的图像来反转过程[135]。由于自然语言可以被解析为语义图,其中每个单词代表一个对象,因此在给定文本描述的情况下合成图像是一种很有前景的解决方案。对点云进行分类和分段使LiDAR设备能够“看到”周围环境。点云是由LiDAR扫描记录的一组3D点。 [136],[137],[138]将点云转换为k-最近邻图或超点图,并使用ConvGNN来探索拓扑结构。识别视频中包含的人工操作有助于从机器方面更好地理解视频内容。一些解决方案检测视频剪辑中人体关节的位置。通过骨架链接的人体关节自然形成图形。鉴于人类关节位置的时间序列,[73],[75]应用STGNN来学习人类行为模式。此外,计算机视觉中GNN的适用方向数量仍在增长。它包括人 - 物交互[139],几拍图像分类[140],[141],[142],语义分割[143],[144],视觉推理[145],问答[146]等。
自然语言处理GNN在自然语言处理中的常见应用是文本分类。 GNN利用文档或单词的相互关系来推断文档标签[22],[42],[43]。尽管自然语言数据表现出顺序,但它们也可能包含内部图形结构,例如句法依赖树。句法依赖树定义句子中单词之间的句法关系。 Marcheggiani等人。 [147]提出在CNN / RNN语句编码器之上运行的语法GCN。 Syntactic GCN基于句子的句法依赖树聚合隐藏的单词表示。 Bastings等。 [148]将Syntactic GCN应用于神经机器翻译的任务。 Marcheggiani等人。 [149]进一步采用与Bastings等人相同的模型。 [148]处理句子的语义依赖图。在给定抽象词的语义图(称为抽象意义表示)的情况下,图 - 序列学习学习生成具有相同含义的句子。宋等人。 [150]提出了一个图形LSTM来编码图形级语义信息。贝克等人。 [151]将GGNN [17]应用于图形到序列学习和神经机器翻译。逆任务是序列到图形学习。生成给定句子的语义或知识图在知识发现中非常有用[152],[153]。交通准确预测交通网络中的交通速度,交通量或道路密度在智能交通系统中至关重要。 [48],[72],[74]使用STGNN解决了交通预测问题。他们将交通网络视为时空图,其中节点是安装在道路上的传感器,边缘通过节点对之间的距离来测量,并且每个节点在窗口内具有作为动态输入特征的平均交通速度。另一个工业级应用是出租车需求预测。根据历史出租车需求,位置信息,天气数据和事件特征,Yao等人。 [154]结合了由LINE [155]训练的LSTM,CNN和网络嵌入,以形成每个位置的联合表示,以预测在一个时间间隔内对位置所需的出租车的数量。推荐系统基于图形的推荐系统将项目和用户作为节点。通过利用项目和项目,用户和用户,用户和项目以及内容信息之间的关系,基于图形的推荐系统能够产生高质量的推荐。推荐系统的关键是将项目的重要性评分给用户。结果,它可以被转换为链接预测问题。为了预测用户和物品之间缺失的联系,Van等人。 [156]和Ying等人。 [157]提出了一种使用ConvGNN作为编码器的GAE。 Monti等人。 [158]结合ConvGNNs和RNNs来学习产生已知评级的基础过程。
A Comprehensive Survey on Graph Neural Networks_第14张图片
表VII:五种常用数据集上节点分类的基准性能。 列出的方法使用相同的列车/有效/测试数据拆分。 Cora,Citeseer和Pubmed通过分类准确性进行评估。 通过微观平均F1评分评估PPI和Reddit。
A Comprehensive Survey on Graph Neural Networks_第15张图片
化学在化学领域,研究人员应用GNN来研究分子/化合物的图形结构。在分子/化合物图中,原子被认为是节点,化学键被视为边缘。节点分类,图分类和图生成是目标分子/复合图的三个主要任务,以学习分子指纹[85],[86],预测分子特性[27],推断蛋白质界面[159],并合成化合物[65],[69],[160]。其他GNN的应用不仅限于此
上述领域和任务。最初的探索将GNN应用于各种各样的问题,如程序验证[17],程序推理[161],社会影响预测[162],对抗性攻击预防[163],电子健康记录建模[164], [165],脑网络[166],事件检测[167],组合优化[168]等。
IX。未来方向尽管GNN已经证明了它们在学习图形数据方面的能力,但由于图形的复杂性,仍然存在挑战。在本节中,我们建议GNN的四个未来方向。模型深度深度学习的成功在于深层神经架构[169]。但是,李等人。表明随着图卷积层数的增加,ConvGNN的性能急剧下降[53]。由于图形卷积推动相邻节点的表示彼此更接近,理论上,利用无限数量的图卷积层,所有节点的表示将收敛到单个点。 [53]。这提出了一个问题,即深入研究是否仍然是学习图形数据的好策略。可扩展性权衡GNN的可扩展性是以破坏图完整性为代价获得的。无论使用采样还是聚类,模型都将丢失部分图形信息。通过采样,节点可能会错过其中的邻居。通过聚类,图表可能被剥夺了不同的结构模式。如何权衡算法可扩展性和图形完整性可能是未来的研究方向。异质性当前的大多数GNN都假设是齐次图。很难直接将当前GNN应用于异构图,这些图可能包含不同类型的节点和边,或不同形式的节点和边输入,如图像和文本。因此,应该开发新的方法来处理异构图。动态图本质上是动态的,节点或边可能出现或消失,节点/边输入可能会随时间变化。需要新的图形卷积来适应图形的动态性。尽管STGNN可以部分地解决图的动态性,但是很少有人考虑如何在动态空间关系的情况下执行图卷积。
A Comprehensive Survey on Graph Neural Networks_第16张图片
十,结论
在本次调查中,我们对图神经网络进行了全面的概述。 我们提供了一种分类法,将图神经网络分为四类:循环图神经网络,卷积图神经网络,图自动编码器和时空图神经网络。 我们对类别内或类别之间的方法进行全面的审查,比较和总结。 然后我们介绍了图神经网络的广泛应用。 总结了数据集,开源代码和图形网络的基准。 最后,我们建议图形神经网络的四个未来方向。

你可能感兴趣的:(GNN)