Deep Learning on Graphs: A Survey(图的深度学习综述)

目录

摘要:

1.介绍

2.符号和序言

3.图递归神经网络

3.1节点级RNNs

3.2图级别的RNNs

4.图卷积网络(GCNs)

4.1卷积操作

4.1.1光谱法

4.1.2效率方面

4.1.3多图方面

4.1.4框架

4.2读取操作

4.2.1统计

4.2.2层次聚类

4.2.3其他

4.2.4总结

4.3改进与讨论

4.3.1注意力机制

4.3.2残留和跳跃链接

4.3.3边特征

4.3.4抽样方法

4.3.5归纳设定(推理?)

4.3.6理论分析

5.图自动编码器(GAEs)

5.1自动编码器

5.2变体自动编码器

5.3改进与讨论

5.3.1对抗训练

5.3.2归纳学习和GCN编码器

5.3.3相似度

6.图强化学习

7.图对抗的方法

7.1对抗训练

7.2对抗攻击

8.讨论与结论

8.1应用

8.2 Implementations

8.3未来的发展方向

8.4总结

 

待解决的问题:


论文原文地址:https://arxiv.org/pdf/1812.04202.pdf

摘要:

深度学习在许多领域都取得了成功,从声学、图像到自然语言处理。然而,由于图的独特性,将深度学习应用于普遍存在的图数据是非常重要的。近年来,人们在这一领域进行了大量的研究工作,极大地推动了图形分析技术的发展。在这项调查中,我们全面回顾了应用于图形的各种深度学习方法。我们将现有的方法分为五类:基于图的递归神经网络、图卷积网络、图形自动编码器、图形强化学习和图形对抗方法。然后,我们将以系统的方式对这些方法进行全面的概述,主要关注它们的发展历史。分析了不同建筑的差异性和组成性。最后,我们简要介绍了它们的应用,并讨论了未来可能的发展方向.

1.介绍

在过去的十年里,深度学习已经成为人工智能和机器学习领域的“王冠宝石”[1],在声学[2]、图像[3]和自然语言处理[4]等方面表现出了卓越的性能。深度学习在提取复杂模式基础数据方面的表现力得到了广泛的认可。另一方面,图形(1)在现实世界中无处不在,表示对象及其关系,如社交网络、电子商务网络、生物网络和交通网络等。图形也具有复杂的结构,包含丰富的潜在价值[5]。因此,如何利用深度学习方法进行图形数据分析成为近年来研究的热点。这个问题是非平凡的,因为传统的深度学习架构应用于图形存在一些挑战:

图的不规则结构:与图像、音频和文本具有清晰的网格结构不同,图形具有不规则的结构,因此很难将一些基本的数学运算推广到图形[6]。例如,为图数据定义卷积和池化操作并非易事(特征数据不好提取?),而卷积和池化操作是卷积神经网络(CNN)中的基本操作。这通常被称为几何深度学习问题[7]。

图的异质性:图本身可能会因类型和属性不同而变得复杂。例如,图可以是异构或同质的,加权的或未加权的,有符号的或无符号的。此外,图形的任务也有很大不同,范围从以节点为中心的问题(例如节点分类和链接预测)到以图形为中心的问题(例如图形分类和图形生成)。不同的类型,属性和任务需要不同的模型架构来解决特定问题。

大规模的图形:在大数据时代,真实的图形可以很容易地拥有数百万或数十亿个节点和边,比如社交网络或电子商务网络[8]。因此,如何设计可伸缩的模型,优选地具有相对于图形大小的线性时间复杂度,成为一个关键问题。

融合跨学科知识:图形常常与其他学科相联系,如生物学、化学或社会科学。跨学科提供了机遇和挑战:可以利用领域知识来解决特定的问题,但是集成领域知识可能会使模型设计复杂化。例如,在生成分子图时,目标函数和化学约束往往是不可微的,因此基于梯度的训练方法不易应用。

为了应对这些挑战,我们在这方面作出了巨大的努力,形成了丰富的相关文献和方法。所采用的体系结构也有很大的不同,从有监督到无监督,从卷积到递归。然而,据我们所知,很少有人注意系统地总结这些不同方法之间的差异和联系。

本文试图通过对图形深度学习方法的全面回顾来填补这一空白。具体而言,如图1所示,我们将现有的方法划分为五类,基于它们的模型体系结构:图递归神经网络(图RNNs)、图卷积网络(GCNS)、图自编码器(GAES)、图强化学习(图RL)和图形对抗方法(GAM)。基于以下高层区别,我们在表1中总结了这些类别的一些主要特征。图rnn通过在节点级或图级建模和状态来捕获图的递归和顺序模式。GCNs定义不规则图形结构上的卷积和读出操作,以捕获常见的局部和全局结构模式。GAEs采用低阶图结构,采用无监督的方法进行节点表示学习。Graph RL定义基于图的动作和奖励,以便在遵循约束的同时获得对图任务的反馈。图形对抗法采用对抗训练提高图模型的泛化能力,并通过对抗攻击测试其鲁棒性。

Deep Learning on Graphs: A Survey(图的深度学习综述)_第1张图片

图1:图上深度学习方法的分类。我们将现有的方法分为五类:图递归神经网络、图卷积网络、图自动编码器、图增强学习和图对抗方法。

                                                                 表一:图的深度学习方法的几个主要区别

分类 基本假设和目标 主要功能
GRN 图的递归和序列模式 节点或者图的状态定义
GCN 图的常见局部和结构模式 图形卷积和读取操作
GAE 图的低阶结构 无监督节点表示学习
GRL 图任务的反馈与约束 基于图的行动和奖励
GAM 图模型的泛化能力与鲁棒性 图对抗性训练与攻击

在接下来的章节中,我们将对这些方法进行详细的概述,主要关注它们的发展历史以及这些方法如何解决图形的挑战。我们还分析了这些模型之间的差异以及如何组合不同的体系结构。最后,我们简要介绍了它们的应用,介绍了几种开放式图书馆,并讨论了未来可能的发展方向。我们还提供了本文讨论的各种方法的源代码集合,并在附录中总结了一些常见的应用。

相关工作:有一些与我们的论文有关的调查。Bronstein等[7]总结了一些早期的GCN方法以及流形上的CNN,并通过几何深度学习对其进行了全面的研究。Battaglia等[9]总结了如何使用称为图网络的统一框架将GNN和GCN用于关系推理,Lee等人。[10]回顾图的注意力模型,Zhang等。[11]总结了一些GCN,Sun等。[12]简要调查了图的对抗攻击。我们与这些作品的不同之处在于,我们系统地,全面地回顾了图上不同的深度学习架构,而不是专注于一个特定的分支。在我们工作的同时,Zhou等。[13]和吴等。[14]也用不同的重点和分类调查了这个领域。具体来说,他们的工作都集中在GCN上,而没有考虑本文中涉及的图增强学习和图对抗方法。

另一个密切相关的主题是网络嵌入,试图将节点嵌入到低维向量空间中[15]–[17]。网络嵌入和本文的主要区别在于,我们关注如何将不同的深度学习模型应用到图中,并且可以使用其中一些模型(它们也使用非深度学习方法)将网络嵌入识别为一个具体的示例。

       本文的其余部分安排如下。在第二节中,我们将介绍符号和预备知识。然后,我们分别回顾了图RNNs、GCNs、GAEs、图RL和图对抗方法。我们在第八部分展望与讨论。

2.符号和序言

符号:本文将图2表示为G=(V,E),其中V={v1,…,V N}是N=| V |节点的集合,E⊆V×V是节点间M=| E |边的集合。我们使用∈RN×N来表示邻接矩阵,其中它的i列、j列和元素分别表示为A(i,:)、A(:,j)、A(i,j)。图可以是有向的/无向的和加权的/未加权的。我们主要考虑无符号图,所以A(i,j)≥0。有符号图将在以后的工作中讨论。我们分别使用 FV和FE(V和E是右上标)表示节点和边的特征。对于其他变量,我们使用粗体大写字符来表示矩阵,使用粗体小写字符来表示向量,例如X和X。矩阵的转置被表示为X,而元素相乘被表示为X1?X2个。函数用curlicue标记,例如F(·)。

预备工作:对于无向图,其拉普拉斯矩阵定义为,其中是对角度矩阵。其特征分解表示为Deep Learning on Graphs: A Survey(图的深度学习综述)_第2张图片,其中是按升序排序的特征值的对角矩阵,是相应的特征向量。转换矩阵定义为,其中表示从节点开始的随机游走在节点处的概率。节点的k步邻居被定义为,其中是从节点的最短距离,即是在k步内从节点可到达的一组节点。为了简化表示法,我们删除了邻域的下标,即

在图上学习深度模型的任务可以大致分为两个领域:

以节点为中心的任务:这些任务与图中的各个节点相关联。示例包括节点分类、链路预测和节点推荐。

以图为中心的任务:任务与整个图形相关联。示例包括图形分类,估计图形的某些属性或生成图形。

注意,这种区别在概念上比在数学上严格。一方面,存在与介观结构相关的任务,例如社区检测[21]。另外,通过将前者转换为以自我为中心的网络,有时可以将以节点为中心的问题研究为以图为中心的问题[22]。尽管如此,我们将在必要时解释这两类算法设计的差异

3.图递归神经网络

递归神经网络(RNN),例如门控递归单元(GRU)[31]或LSTM [32],是对顺序数据进行建模的事实上的标准。在本节中,我们首先回顾图递归神经网络,它可以捕获图的递归和顺序模式。图RNN可以大致分为两类:节点级RNN和图级RNN。主要区别在于模式是在节点级别上并通过节点状态建模,还是在图形级别上并通过图的公共状态建模。表3总结了所调查方法的主要特征。

3.1节点级RNNs

图的节点级RNNs,也称为图神经网络(GNNs),可以追溯到“预深度学习”时代[23],[33]。GNN的思想很简单:为了对图的结构信息进行编码,每个节点可以用一个低维状态向量si来表示,1≤i≤N。在递归神经网络[34]的激励下,采用了状态的递归定义[23]

其中F(·)是要学习的参数函数。在得到si后,应用另一个参数函数O(·)得到最终输出

对于以图形为中心(graph-focused)的任务,作者建议添加一个特殊节点,该节点具有与整个图形相对应的独特属性。要学习模型参数,采用以下半监督4方法:迭代求解方程.(1)使用Jacobi方法[35]到稳定点,使用Almeida-Pineda算法[36],[37]执行梯度下降的一个步骤,以最小化特定于任务的目标函数,例如,预测值之间的平方损失以及回归任务的真实性;然后,重复此过程,直到收敛为止。

       NN4G[24]采取了类似的方法,但在状态定义上有所不同。通过移除等式(1)右侧的Si,NN4G中的状态不会递归定义,这更容易计算。

在方程中有两个简单方程。(1)(2),GNN扮演着两个重要角色。回想起来,GNN统一了一些处理图数据的早期方法,例如递归神经网络和马尔可夫链[23]。展望未来,GNN的总体思想具有深远的启发:正如稍后将要展示的,许多最先进的GCN实际上具有与等式类似的表述。(1),遵循与直接节点邻域交换信息的框架。实际上,GNN和GCN可以统一为一些通用框架,并且GNN等同于GCN,使用相同的层来达到稳定状态。在第4节中将进行更多讨论。

虽然GNN在概念上很重要,但它有几个缺点。首先,为了确保式(1)有唯一的解,F(·)必须是“收缩图”[38],这严重限制了建模能力。其次,由于在梯度下降步骤之间需要多次迭代才能达到稳定状态,因此GNN在计算上非常昂贵。由于这些缺点和可能缺乏计算能力(例如图形处理单元GPU,在当时并没有广泛用于深度学习)和缺乏研究兴趣,GNN一开始并不是一般的研究重点。对GNN的一个显著改进是门控图序列神经网络(GGSNNs)[25],并进行了以下修改。最重要的是,作者将公式(1)的递归定义替换为GRU,从而消除了“收缩图”的要求,并支持现代优化技术。具体而言,式(1)改编为:

其中z是由更新门计算的,是更新的候选者,t是伪时间。其次,作者建议使用按顺序运行的几个这样的网络来产生顺序输出,该输出可以应用于诸如程序验证之类的应用[39]。

                                                                         表3.图RNNs的主要特征

Deep Learning on Graphs: A Survey(图的深度学习综述)_第3张图片

SSE[26]采用与公式(3)类似的方法。,SSE不使用GRU进行计算,而是采用随机定点梯度下降来加速训练,这基本上是在随机迷你批次中使用局部邻域计算节点的稳态与优化模型参数之间交替进行的。

GNN及其扩展有许多应用。例如,CommNet[40]将GNN应用于多智能体AI系统,方法是将每个智能体视为一个节点,并在采取行动之前通过与其他智能体通信几个时间步骤来更新智能体的状态。交互网络(IN)[41]使用GNN进行物理推理,将对象表示为节点,关系表示为边,并使用伪时间作为仿真系统。VAIN[42]改进了CommNet和IN,引入了衡量不同交互作用的注意事项。关系网络(RNs)[43]提出用GNN作为关系推理模块来扩充其他神经网络,并在可视化问答问题中显示出良好的效果。[44]在图生成中应用GNN对图的隐藏状态进行建模。

3.2图级别的RNNs

在本小节中,我们将回顾如何应用RNNs来捕获图级模式,例如动态图的时间模式或图的不同粒度级别中的顺序模式。在图级RNN中,状态不是每个节点的学习状态,而是在应用于整个图的单个RNN中进行编码。

YOU等[27]将图RNN应用于图生成问题。具体而言,它们采用两个RNN,一个用于生成新节点,而另一个则以自回归方式为新添加的节点生成边。他们表明,与传统的基于规则的图生成模型相比,这种分层RNN架构可以从输入图上有效学习,同时具有合理的时间复杂度。

动态图神经网络(DGNN)[28]提出使用时间感知LSTM [45]来学习节点表示,旨在捕获动态图的时间信息。建立新的边缘后,DGNN使用LSTM更新两个交互节点及其直接邻居的表示形式,即考虑单步传播效应。作者表明,具有时间意识的LSTM可以很好地建模边缘形成的建立顺序和时间间隔,从而有利于一系列图形应用.

还可以将Graph RNN与其他体系结构(如GCNs或GAEs)结合使用。例如,RMGCNN[29]将LSTM应用于GCNs的结果以逐步重建图,如图2所示,目的是解决图的稀疏性问题。通过使用LSTM,来自图的不同部分的信息可以在不需要太多GCN层的情况下扩散到很长的范围。Dynamic GCN[30]应用LSTM技术对动态网络中不同时间片的GCN进行结果采集,目的是同时获取时空图信息

Deep Learning on Graphs: A Survey(图的深度学习综述)_第4张图片

    图2. RMGCNN的框架经许可转载自[29]。RMGCNN将LSTM添加到GCN中以逐步重建图形。Xt,〜Xt和dXtre分别表示估计的矩阵(GCN的输入),GCN的输出以及RNN在迭代t处产生的增量更新。MGCNN是指多图CNN。

4.图卷积网络(GCNs)

图卷积网络(GCNs)无疑是基于图的深度学习的热门话题。现代GCN模拟CNN,通过设计卷积和读出函数,学习图形上常见的局部和全局结构模式。由于大多数gcn可以通过反向传播(除了一些例外,如[80]中的无监督训练)在特定任务丢失的情况下进行训练,因此我们将重点放在所采用的体系结构上。我们首先讨论卷积运算,然后讨论读出运算和一些其他改进。我们在表4中总结了本文调查的GCN的主要特征。

4.1卷积操作

4.1.1光谱法

对于CNNs,卷积是最基本的运算。然而,由于缺乏网格结构,图像或文本的标准卷积不能直接应用于图形[6]。(图形不具备网格结构)布鲁纳等人。[46]首先介绍利用图的拉普拉斯矩阵L[81]对来自谱域的图数据进行卷积,该矩阵扮演着与信号处理的傅里叶基础相似的角色[6]。具体地说,图形       ∗G地理信息系统上的卷积运算定义为:

其中u1,u2∈r是定义在节点上的两个信号,Q是L的特征向量。简而言之,qt将图信号u1,u2变换到谱域,Q在元素乘积后进行逆变换。此定义的有效性基于卷积定理,即卷积运算的傅里叶变换是其傅里叶变换的元素乘积。然后,滤波信号u可以得到

 

                                                                                表4

                                                               不同图卷积网络的比较。M.G.=多重图

Deep Learning on Graphs: A Survey(图的深度学习综述)_第5张图片

其中u0是输出信号,Θ=Θ(λ)∈RN×Nis是可学习滤波器的对角矩阵,∧是L的特征值。然后,通过对不同的输入和输出信号应用不同的滤波器定义卷积层,如下所示

其中l是层,ul j∈rn是第l层、Θl i、jare learnable滤波器中节点的jthhidden表示(即信号)。式(6)的思想类似于传统的卷积:将输入信号通过一组可学习的滤波器来聚合信息,然后进行一些非线性变换。利用节点特征FV  作为输入层,叠加多个卷积层,使整个体系结构与CNNs相似。

然而,直接使用式(6)需要学习O(N)参数,这在实践中可能是不可行的。此外,谱域中的滤波器可能不局限于空间域,也就是说,每个节点可以受所有其他节点的影响,而不是仅受一个小区域中的节点的影响。为了缓解这些问题,Bruna等人。[46]建议使用以下平滑过滤器:

其中K是固定的插值核和αl,i,jare可学习的插值系数。作者还将这一思想推广到图不是给定的,而是使用有监督或无监督的方法由原始特征构造的情况[47]。

然而,有两个根本性的限制仍然没有解决。首先,由于在每次计算中都需要拉普拉斯矩阵的全部特征向量,所以每次向前和向后传递时的时间复杂度至少为o(n2),更不用说计算特征分解的O(N3)复杂度,而这一特性不能扩展到大规模图。其次,由于滤波器依赖于图的特征基Q,因此参数不能在不同大小和结构的多个图之间共享

接下来,我们回顾两行尝试解决这些局限性的工作,然后使用一些通用框架将它们统一。

4.1.2效率方面

为了解决效率问题,ChebNet[48]建议使用多项式滤波器,如下所示:

其中θ0,…,θK是可学习参数,K是多项式阶。然后,作者不再进行特征分解,而是使用切比雪夫展开式重写公式(8):

其中λ=2λ/λmax-i是重刻度特征值,λmax是最大特征值,i·Rn×nIS是同一矩阵,Tk(x)是k阶的切比雪夫多项式,由于Chebyshev多项式的正交基,重新刻划是必要的。利用拉普拉斯矩阵的多项式作为其特征值的多项式,即Lk=Q∧kQT,等式(5)中的滤波运算可重写为:原文如下:

Deep Learning on Graphs: A Survey(图的深度学习综述)_第6张图片

式中,利用切比雪夫多项式Tk(x)=2xTk–-1(x)–-Tk–-2(x)和T0(x)=1,T1(x)=x的递推关系,也可以递推计算:

。现在,由于只有稀疏矩阵L和一些向量的矩阵乘法需要计算,所以时间复杂度是O(km),通过使用稀疏矩阵乘法,其中m是边数,k是多项式阶,即相对于图大小的线性。这样的多项式滤波器是严格K-局部化的:经过一次卷积后,节点vii的表示只受其K-步邻域NK(i)的影响。有趣的是,这种思想在网络嵌入中被独立地使用来保持高阶邻近度[83 ],其中我们省略了简洁的细节

Kipf和Welling[49]对ChebNet的改进进一步简化了滤波过程,只使用一阶邻域如下

Deep Learning on Graphs: A Survey(图的深度学习综述)_第7张图片

式中:A=A+I,即增加一个自连接。作者通过设置K=1并稍作改动,证明了式(13)是式(8)的特例。然后,作者认为,如图3所示,堆叠足够数量的层具有与ChebNet相似的建模能力,并且可以获得更好的结果。

ChebNet及其扩展的重要见解在于,它们将光谱图卷积与GNN中的空间体系结构联系在一起,即通过考虑节点的邻域来定义图卷积
具体来说,他们表明,当谱卷积函数是多项式或一阶时,谱图卷积等效于空间卷积。另外,等式中的卷积(12)与方程中GNN中状态的定义非常相似(1),只是用卷积定义代替了递归定义。在这方面,可以将GNN视为使用大量相同层来达到稳定状态的GCN [7],即GNN使用具有固定参数的固定函数来迭代更新节点隐藏状态直至达到平衡,而GCN具有预设数量的 每个图层包含不同的参数。

Deep Learning on Graphs: A Survey(图的深度学习综述)_第8张图片

             图3.Kipf和Welling提出的空间卷积运算的一个示例[49]。每个卷积层中的节点只受其近邻的影响。经许可转载。

值得一提的是,一些纯谱方法也被提出来解决效率问题。例如,CayleyNet[50]在定义卷积时采用Cayley多项式,而不是如等式(9)中那样使用Chebyshev展开式:

其中i=【根号-1】表示虚单位,θh是另一个光谱变焦参数。作者证明,Cayley多项式除了具有ChebNet的效率外,还可以检测出“重要的窄带”,从而获得更好的结果。图小波神经网络(GWNN)[51]进一步提出用图小波变换代替谱滤波器中的傅里叶变换(降低了计计算复杂度),即重写式(4)为:

其中ψ是图小波基。通过使用快速逼近算法来计算ψ和ψ-1,计算复杂度也为O(KM),即相对于图形大小而言是线性的

4.1.3多图方面

         同时,将卷积运算推广到任意大小的多个图,也是本文的一个重点。神经FPs[52]提出了一种同样使用一阶邻域的空间方法

由于参数Θ可以在不同的图之间共享,并且与图的大小无关,因此神经FPs可以处理任意大小的多个图。注意,式(16)与式(12)非常相似。然而,神经FPs不考虑节点度数的影响,而是提出对不同度数的节点学习不同的参数。这种策略对于小图(如分子图,即以原子为节点,以键为边)有很好的效果,但可能无法扩展到大图

PATCHY-SAN[53]采用了不同的思想,使用图标记过程(如Weisfeiler-Lehman kernel[84])分配邻居的唯一顺序,并使用此预定义顺序将节点排列成一行。此外,PATCHY-SAN通过从其k步邻域Nk(i)中选择固定数量的节点来为每个节点via定义一个“接收场”。然后采用标准的一维CNN,并进行适当的归一化处理。从现在起,不同图中的节点都有一个固定大小的“接收场”和顺序,PATCHY-SAN可以从多个图中学习,比如普通的CNNs。缺点是卷积很大程度上依赖于图标记过程,这是一个未学习的预处理步骤。【54】进一步提出通过使用排序顺序简化排序过程,即基于最后一层HL中的隐藏表示来排序邻居。作者没有使用一个单一的顺序,而是对不同的HL频道分别排序。SortPooling[55]采用了类似的思想,但是作者建议直接对所有节点进行排序,即对所有邻居进行一次排序,而不是对每个节点的邻居进行排序。尽管这些方法之间存在差异,但是对于图来说,强制执行一维顺序的节点可能不是自然选择(???)

DCNN [56]采用了另一种方法,以扩散为基础来代替卷积的本征基,即节点的“接受场”由节点之间的扩散转变概率决定。具体而言,卷积定义为

其中P K=(P)K是长度为K扩散过程(即随机游走)的转移概率,K为预设扩散长度,且Θl∈Rfl×fli为可学习参数的对角矩阵。由于pk只依赖于图的结构,所以参数可以在任意大小的图之间共享。然而,计算时间复杂度从而使该方法不能扩展到大规模图

DGCN[57]进一步提出,采用双图卷积网络,共同采用扩散基和邻接基。具体来说,DGCN使用两个卷积:一个作为式(13),另一个用转移概率的正点互信息(PPMI)矩阵[85]替换邻接矩阵,即

其中XP是PPMI矩阵,DP(i,i)=P jXP(i,j)是XP的对角度矩阵。然后,通过最小化H和Z之间的均方差,对两个卷积进行了合并,并提出了一种随机游走采样方法来加速跃迁概率的计算。实验证明,这种双重卷积即使对单图问题也是有效的。

4.1.4框架

基于以上两点工作,MPNN [58]使用消息传递函数空间域中的图卷积操作提出了一个统一框架。

其中Fl(·)和Gl(·)分别是需要学习的消息函数和顶点更新函数,它们是在节点之间传递的“消息”。从概念上讲,MPNN提出了一个框架,该框架的每个节点都根据其状态发送消息,并根据从直接邻居收到的消息来更新其状态。作者表明,上述框架包含许多现有方法,例如[25],[46],[47],[49],[52],[61]。此外,作者建议添加一个“主”节点,该节点连接到所有节点,以加速长距离消息的传递,并将隐藏的表示形式拆分为不同的“塔”,以提高泛化能力。作者表明,MPNN的特定变体可以在预测分子特性方面达到最新的性能

同时,GraphSAGE[59]采用了类似于等式(19)的思想,具有如下多个聚合函数

.其中[·,·]是连接,AGGREGA TE(·)是聚合函数。作者提出了三个聚合函数:元素平均值、长短期内存(LSTM)[32]和最大池,如下所示

           其中参数要学习,max {. }是元素最大值。对于LSTM聚合函数,由于需要一个邻域的阶数,所以采用简单的随机阶数。

            混合模型网络(MONET)〔60〕也尝试用模板匹配的方法将GCNs的现有作品和美国有线电视新闻网的歧管统一到一个共同的框架中:

其中u(i,j)是节点对的伪坐标,Fl k(u)是要学习的参数函数,hl ik是hl i的第k维,换言之,flk(u)是组合邻域的加权核。然后,MoNet建议使用高斯核

其中是平均向量和是对角协方差矩阵要学习。伪坐标设置为度,如[49]所示,即

图网络(Graph Networks,GNs)[9]为GCNs和GNNs提供了一个更通用的框架,用于学习三组表示:hl i、el ij、zlas分别表示节点、边和整个图。使用三个聚合函数和三个更新函数学习表示:

Deep Learning on Graphs: A Survey(图的深度学习综述)_第9张图片

其中FV(·)、FE(·)、FG(·)分别是节点、边和整个图的相应更新函数,G(·)是带上标表示消息传递方向的消息传递函数。注意,消息传递函数都将集合作为输入,因此它们应该采取可变数量的参数和不变的输入排列,例如元素总和、均值或最大值。与MPNNs相比,GNs引入了边缘表示和全图表示,使框架更具通用性。

总而言之,卷积运算已从频谱域发展到空间域,并从多步邻居发展到直接邻居。目前,正在从像Eq这样的直接邻居那里收集信息。(13)并遵循等式的框架。(19)(20)(25)是图卷积运算的最常见选择。

4.2读取操作

使用卷积运算,可以学习有用的节点功能来解决许多以节点为中心的任务。然而,为了解决以图形为中心的任务,需要汇总节点的信息以形成图形级表示。在文献中,这通常称为读出操作6。这个问题很重要,因为由于缺少网格结构,无法直接使用标准CNN中的跨步卷积或合并。

序不变性:图读取操作的关键要求是该操作应不依赖于节点的顺序,即,如果我们使用两个顶点集之间的双射函数来更改节点和边的索引,则整个图的表示不应更改。例如,一种药物是否可以治疗某些疾病应该与该药物以图形表示的方式无关。请注意,由于此问题与已知为NP的图同构问题有关,因此我们只能在多项式时间内找到一个阶不变的函数,反之亦然,即两个图不是同构的,可能具有相同的表示形式。

4.2.1统计

最基本的阶数不变运算是简单的统计信息,例如求和,平均或最大池化[52],[56],即

其中hg是图G的表示,hL i是最后一层L中节点vi的表示。然而,这种第一时刻的统计数据可能不足以区分不同的图.

在[61]中,作者建议使用模糊直方图考虑节点表示的分布[87]。模糊直方图的基本思想是构造几个“直方图箱”,然后计算这些箱的hL隶属度,即将节点表示作为样本并将它们与一些预定义模板匹配,然后返回最终直方图的级联。以这种方式,可以区分具有相同的总和/平均/最大但具有不同分布的节点。

收集信息的另一种常用方法是添加完全连接(FC)层作为最终层[46],即

该模型的一个优点是可以学习不同节点的不同权值,但不能保证阶不变性。

Deep Learning on Graphs: A Survey(图的深度学习综述)_第10张图片

                                                                    图4.图中节点的层次聚类结果的示例。经许可从[62]转载。

4.2.2层次聚类

已知图显示出丰富的层次结构,而不是在节点或图级别结构之间进行二分法[88],可以通过层次聚类方法进行探索,如图4所示。例如,基于密度的聚类聚类[89] 用于Bruna等。[46]和多分辨率光谱聚类[90]用于Henaff等。[47]。ChebNet [48]和MoNet [60]采用Graclus [91],这是另一种贪婪的层次聚类算法,一次可以合并两个节点,还有一种通过将节点重新排列为平衡二叉树的快速合并方法。ECC [69]通过特征分解[92]采用了另一种层次聚类方法。但是,这些分层聚类方法都与卷积操作无关,即与卷积操作无关。可以作为预处理步骤完成,而不是端到端训练。

为了解决这个问题(与卷积操作无关的问题),DiffPool [62]提出了一种与图卷积联合训练的可微分层次聚类算法。具体来说,作者建议使用隐藏表示来学习每一层中的软集群分配矩阵:

其中Sl∈RNl×Nl + 1是聚类分配矩阵,Nl是层l中的聚类数和F(·)是要学习的函数。然后,可以通过根据Sl取平均值来获得此“粗化”图的节点表示和新的邻接矩阵:

其中,ˆHl+1是通过将卷积层应用于Hl而获得的,即在卷积操作之后,将每个层中的图从Nlnodes粗化为Nl+1节点。然而,由于簇分配是软的,簇之间的连接不是稀疏的,并且该方法的时间复杂度在原则上是O(n2)。

4.2.3其他

除上述方法外,还有其他值得讨论的读出操作。
       在GNN中[23],作者建议添加一个特殊节点该节点连接到所有节点以表示整个图。类似地,GNs [9]的想法是通过从所有节点和边缘接收消息来直接学习整个图的表示。MPNN采用set2set [93],这是对seq2seq模型的一种修改,该模型不变于输入的顺序。具体而言,set2set使用读取-处理-写入模型,该模型立即接收所有输入,使用注意机制和LSTM计算内部存储器,然后写入输出。

如第4.1.3节所述,PATCHY-SAN [53]提出了使用图标记过程为节点施加顺序的想法,然后像在CNN中一样诉诸于标准1-D池。

Deep Learning on Graphs: A Survey(图的深度学习综述)_第11张图片

                                  图5    GAT[63]中提出的多头注意的图示,其中每种颜色表示一个独立的注意。经许可转载

这种方法是否可以保留顺序不变性取决于图形标注程序,这是另一个研究领域,我们请读者参考[94]进行调查。但是,为节点强加命令可能不是图的自然选择,并且可能会阻碍下游任务的执行

4.2.4总结

简而言之,像取平均值或总和之类的统计数据是最简单的读出操作,而通过图卷积联合训练的层次聚类算法则更高级,但更复杂。还存在其他方法,例如添加伪节点或施加顺序。

4.3改进与讨论

4.3.1注意力机制

在上述GCN中,节点的邻域以相等或预定义的权重聚合。但是,邻居的影响可能相差很大,应该在训练过程中了解不是预先确定。受注意力机制[95]的启发,图注意力网络(GAT)[63]通过修改等式(12)中的卷积将注意力引入GCN中,如下所示:

其中节点vi对节点vj层l的关注定义为:

Deep Learning on Graphs: A Survey(图的深度学习综述)_第12张图片

其中F(·,·)是另一个需要学习的功能,例如小型的全连接网络。作者还建议使用多个独立注意力并将其结果合并以提高模型的容量和稳定性,即[95]中的多头注意力,如图5所示。GaAN[64]进一步建议针对不同的头学习不同的权重,并使用RNN将其方法应用于交通预测问题以生成输出。

HAN [65]提出了一种针对异构图的两级关注机制。具体来说,节点级别的关注与GAT相似,但考虑的是节点的类型。结果,它可以在聚合节点的基于元路径的邻居时分配权重。然后,语义级别的注意会了解不同元路径的重要性,并输出最终结果。

4.3.2残留和跳跃链接

许多工作发现,现有GCN的最合适深度通常非常有限,例如可能是由于训练GCN的实际困难过度平滑的问题,所以是两层或三层,即所有节点在更深的层中具有相同的表示形式[68],[76]。为了解决这个问题,可以添加类似于ResNet [96]的剩余连接来跳过层。例如,[49]将剩余连接添加到公式中。(13)如下:

他们通过实验表明,添加此类残余连接可以增加网络的深度,这与ResNet的结果类似。

列网络(CLN)[66]使用以下具有可学习权重的剩余连接采取了类似的想法:

的计算方式与(13)类似,的权重计算如下:

注意,等式(33)与GGS NNs[25]中的GRU非常相似,但总体架构仍然是GCN,而不是伪时间

受到个性化PageRank的启发,PPNP [67]定义了通过隐形传送到初始层的图卷积

是超参数,注意,所有参数都在Fθ(FV)中,而不是在图卷积中。

Jumping Knowledge Networks(JK-Nets)跳跃式知识网络[68]提出了另一种体系结构,将网络的最后一层与所有较低的隐藏层连接起来,即将所有表示“跳跃”到最终输出,如图6所示。可以学习选择性地利用来自不同层的信息。正式地,JKNets可以表示为:

其中h final是节点vi的最终表示形式,AGGREGA TE(·)是聚合函数,L是隐藏层数。JK-Net使用类似于GraphSAGE [59]的三个聚合函数:串联,最大池化和LSTM注意。实验结果表明,添加跳跃连接可以提高多种GCN架构的性能(具体什么性能?)

4.3.3边特征

前面提到的GCN大多集中在利用节点特征和图结构上。在本节中,我们简要讨论如何使用边信息等另一个重要的信息源。

对于具有离散值(例如边类型)的简单边特征,简单的方法是为不同的边类型训练不同的参数并汇总结果。例如,神经FP [52]为不同程度的节点训练不同的参数,这对应于分子图中键类型的隐藏边缘特征,并对结果求和。CLN [66]为异构图形中的不同类型的边缘训练不同的参数,并对结果求平均值。边缘条件卷积(ECC)[69]还基于边缘类型训练不同的参数,并将其应用于图形分类。关系类型的GCNs(R-GCNs)[70]通过训练不同关系类型的不同权重,在知识图中采用相似的思想,并添加正则化以减少参数的数量。

DCNN [56]提出了另一种将每个边转换为连接到该边的头尾节点的节点的方法。然后,可以将边特征视为节点特征。

类似地,LGCN[71]构造了一个线图B∈R2M×2M,将边特征合并如下:

Kearnes等[61]提出了使用“编织模块”的另一种架构。具体而言,他们在具有四个不同功能的每个编织模块中学习节点和边的表示并在它们之间交换信息:节点到节点(NN),节点到边缘(NE),边缘到边缘(EE)和边缘到节点(EN)。

Deep Learning on Graphs: A Survey(图的深度学习综述)_第13张图片

其中中的边缘(vi,vj)和F(·)的el ijare表示是可学习的函数,下标表示消息传递方向。通过堆叠多个这样的模块,信息可以通过节点和边缘表示之间的交替传递来传播。注意,在节点到节点和边缘到边缘功能中,隐式添加了与JKNets [68]类似的跳转连接。GNN也建议使用第4.1.4节中讨论的消息传递功能来学习边表示并更新节点和边表示,其中不学习整个图形表示就包含“编织模块”作为特殊情况。

图7.(A)GraphSAGE [59],(B)StochasticGCN [73],(C)FastGCN [74],(D)Adapt [75]的节点采样方法,其中蓝色节点表示一批样品和箭头 指示采样方向。图(B)中的红色节点代表历史样本。经许可转载

4.3.4抽样方法

大型图形训练GCN的一个关键瓶颈是效率。如第4.1.4节所示,许多GCN遵循从社区收集信息的框架。然而,由于许多实图遵循幂律分布[97],即很少节点具有非常大的度数,因此邻居的扩展会非常快地增长。为了解决这个问题,已经提出了两种采样方法:邻域采样和逐层采样,如图7所示。

邻域采样:在邻域采样中,在计算期间对每个节点执行采样。GraphSAGE [59]在训练期间为每个节点统一采样固定数量的邻居。PinSage [72]提出使用图上的随机游走对邻居进行采样以及一些实现上的改进,例如 CPU和GPU之间的协调,映射减少推理管道等。PinSage被显示为能够处理真实的十亿比例图。StochasticGCN [73]进一步建议通过使用最后一批中的历史激活作为控制变量减少采样方差,从而在理论上保证任意小样本量。

逐层采样:FastGCN [74]没有对节点的邻居进行采样,而是采用了一种不同的策略来对每个卷积层中的节点进行采样,即逐层采样,即将节点解释为i.i.d。样本和图卷积作为概率测度下的积分变换。FastGCN还显示,通过节点的归一化程度可以减少方差并带来更好的性能。Adapt [75]进一步建议对以顶层为条件的较低层中的节点进行采样,这更具适应性,适用于显式减少方差。

4.3.5归纳设定(推理?)

GCN的另一个重要方面是应用于归纳设置,即在一组节点/图形上进行训练,并在训练期间未看到的另一组节点/图形上进行测试。

原则上,这个通过学习给定特征上的映射函数来实现,这些特征不依赖于图,并且可以在节点/图之间传递。归纳设置在GraphSAGE [59],GAT [63],GaAN [64]和FastGCN [74]中得到验证。但是,现有的归纳GCN仅适用于具有特征的图如何对没有特征的图进行归纳学习,通常被称为样本外问题[98],在文献中仍然很开放。

4.3.6理论分析

为了了解GCN的有效性,提出了一些理论分析,可以分为三类:以节点为中心的任务,以图为中心的任务和常规分析。

对于以节点为中心的任务,Li等人。 [76]首先分析了GCN作为拉普拉斯平滑的一种特殊形式的性能,这使得同一簇中顶点的特征相似。原始的拉普拉斯平滑可以表示为

其中hi和hi丿分别是节点vi的原始特征和平滑特征。我们可以看到(39)与Kipf和Welling在等式中提出的图卷积非常相似。(12)。基于这种见解,李等。还提出了GCN的联合训练和自我训练方法。

最近,Wu等[77]从信号处理的角度分析了GCNs。将节点特征视为图信号,表明Eq.(12)基本上是一个固定的低通滤波器。利用这一观点,通过去除所有非线性和将学习参数压缩到一个矩阵中,提出了一个极为简化的图卷积(SGC):

作者表明,这种“非深度学习” GCN变体在许多任务中均具有可比的性能。文献[78]通过显示低通滤波特性并未为GCN配备非线性流形学习特性来增强此结果,并进一步提出GFNN通过在图卷积层之后添加MLP来解决此问题

对于以图形为中心的任务,[49]和[55]都考虑了GCN与图形内核(例如WeisfeilerLehman(WL)内核[84])之间的关系,该关系广泛用于图形同构测试。他们表明,GCN在概念上是WL内核的概括,因为这两种方法都会迭代地聚合来自节点邻居的信息。徐等[79]通过证明WL内核在区分图结构方面为GCN提供了上限,从而使这一思想形式化。基于分析,徐等。提出了图同构网络(GIN),并显示了使用sum和MLP进行的简单读取操作可以实现可证明的最大判别能力,即在图分类任务中的训练准确性。

对于一般分析,Scarselli等[99]显示了具有不同激活功能的GCN的Vapnik Chervonenkis维度(VC-dim),与标准RNN相当。Chen等[71]分析了线性GCN的优化情况,并表明在某些简化下任何局部最小值都相对接近于全局最小值。Verma和Zhang [100]分析了GCN的算法稳定性和泛化范围。他们表明,如果图卷积滤波器的最大绝对特征值与图大小无关,则单层GCN会满足强烈的均匀稳定性概念

5.图自动编码器(GAEs)

自动编码器(Autoencoder, AE)及其变体广泛用于无监督学习[101],适合学习图数据的节点表示。隐含的假设是图具有固有的、潜在的非线性低秩结构。在这一节中,我们将首先阐述图的自动编码器,然后介绍图的变分自动编码器和其他改进。GAEs的主要特征如表5所示。

5.1自动编码器

图形的AE的使用源自稀疏自动编码器(SAE)[102]。基本思想是,通过将邻接矩阵或其变化视为节点的原始特征,可以利用AE作为降维技术来学习低维节点表示。具体来说,SAE采用以下L2重建损失:

其中P是转移矩阵,ˆ P是重构矩阵,hi∈Rdis是节点vi的低维表示,F(·)是编码器,G(·)是解码器,d?N是尺寸,Θ是参数。编码器和解码器都是具有许多隐藏层的多层感知器。换句话说,SAE尝试将P(i,:)的信息压缩为低维向量hi并重建原始特征。还添加了另一个稀疏正则化术语。在获得低维表示hi之后,k-均值[112]被应用于节点聚类任务,这在经验上证明优于非深度学习基线。但是,SAE是基于不正确的理论分析7,并且仍无法解释这种有效性的潜在机制。

结构深层网络嵌入(SDNE)[103]通过显示等式中的L2重构损失填补了这一难题。(41)实际上对应于节点之间的二阶接近度,即,如果两个节点具有相似的邻域,它们将共享相似的latten表示,这在网络科学中得到了很好的研究,例如在协作过滤或三角形闭合中[5]。受网络嵌入方法的启发,网络嵌入方法表明一阶邻近度也很重要[114],SDNE通过添加类似于拉普拉斯特征图[81]的另一个术语来修改目标函数: 

也就是说,如果两个节点是直接连接的,它们也需要共享类似的latten表示。利用邻接矩阵对l2重构损失进行修正,并对零元素和非零元素赋予不同的权值:

β是另一个超参数,SDNE的总体架构如图8所示

当代作品DNGR[104]受另一作品的启发,将式(41)中的转换矩阵P替换为随机冲浪概率的正点互信息(PPMI)[85]矩阵。这样,原始特征可以与图的某种随机游走概率相关联[115]。然而,构建输入矩阵需要O(N2)的时间复杂度,无法扩展到大规模图数据

                                                                                 表5,不同GAEs之间的比较

Deep Learning on Graphs: A Survey(图的深度学习综述)_第14张图片

Deep Learning on Graphs: A Survey(图的深度学习综述)_第15张图片

                                图8. SDNE的框架经许可从[103]转载。使用深度自动编码器保留节点的一阶和二阶接近度 

GC-MC[105]进一步采用了不同的方法,在[49]中使用GCN作为编码器:

解码器是一个简单的双线性函数:

 Θde是编码器的参数。这样,可以自然地合并节点特征。对于没有节点特征的图,可以使用节点ID的一键编码。作者证明了GC-MC在二部图推荐问题上的有效性.

代替重建邻接矩阵或其变体,DRNE [106]提出了另一种修改,以通过使用LSTM聚合邻域信息来直接重建节点的低维向量。具体地说,DRNE最小化了以下目标函数:

由于LSTM要求输入为序列,因此作者建议根据节点的程度对节点的邻域进行排序。对于度数较大的节点也采用邻居采样,以防止内存过长。作者证明,这种方法可以保留规则的等价性和节点的许多中心性度量,例如PageRank [116]。

与将节点映射到低维向量的现有工作不同,Graph2Gauss(G2G)[107]建议将每个节点编码为高斯分布hi = N(M(i,:),diag(Σ(i,:)))到捕获节点的不确定性。具体来说,作者使用从节点属性到高斯分布的均值和方差的深度映射作为编码器

调频(·)和FΣ(·)参数功能需要学习。然后,他们使用成对的约束来学习模型,而不是使用显式的解码器函数.

其中d(i, j)是节点vito vj与KL[q(·)||p(·)]之间的最短距离,是q(·)与p(·)之间的Kullback-Leibler (KL)散度[117]。换句话说,这些约束确保了节点对之间的kl散度具有与图距离相同的相对顺序。但是,由于Eq.(48)难以优化,因此采用基于能量的损耗[118]作为松弛:

        提出了一种无偏采样策略来加速训练过程

5.2变体自动编码器

      与上述自动编码器不同,可变自动编码器(VAE)是另一种深度学习方法,将降维与生成模型相结合,潜在的好处包括容忍噪声和学习平滑表示[119]。VAE在[108]中首次引入建模图形数据中,其中解码器是简单的线性乘积

hi遵循高斯后验分布,对于均值矩阵和方差矩阵的编码,作者在[49]中采用了GCN·

       然后通过最小化变分下界来学习模型参数[119]:

Deep Learning on Graphs: A Survey(图的深度学习综述)_第16张图片

图9.经许可从[109]转载的DVNE框架。DVNE使用VAE将节点表示为分布,并采用Wasserstein距离来保留节点相似性的传递性 。

       然而,由于整个图需要重构,时间复杂度为O(N2)。(不能用于大图)

受SDNE和G2G的推动,DVNE [109]还通过将每个节点表示为高斯分布,为图形数据提出了另一个VAE。与现有的采用KL发散作为度量的工作不同,DVNE使用Wasserstein距离[120]来保留节点相似性的传递性。与SDNE和G2G相似,DVNE在目标函数中还保留了一阶和二阶接近度:

Eij是两个高斯分布的距离。损失函数定义为:

      其中P是过渡矩阵,Z是从H提取的样本。该框架如图9所示。然后,可以使用重新参数化技巧将目标函数最小化为常规VAE [119]。

5.3改进与讨论

除了以上的两个类别之外,还有一些值得讨论的改进。

5.3.1对抗训练

       [110]中将对抗训练方案8作为附加的正规化术语并入GAE(图自动编码器)。总体架构如图10所示。具体地说,GAE的编码器用作生成器,鉴别器旨在区分潜在表示是来自生成器还是先验分布。这样,自动编码器被迫匹配先前的分布作为正则化。目标函数是:

       其中L2与GAE中定义的重建损失相似,而LGAN是:

是使用等式中的图卷积编码器生成的。(51)D(·)是一个具有交叉熵损失和ph先验分布的鉴别器。在本文中,采用了简单的高斯先验,实验结果证明了对抗训练方案的有效性。同时,NetRA [111]也提出使用GAN来增强图形自动编码器的泛化能力。

具体来说,作者使用以下目标函数:

           其中LLE为Laplacian特征映射目标函数,如式(42)所示。此外,采用LSTM作为编码器,对类似于Eq.(46)的邻域信息进行聚合。作者使用随机游走来生成LSTM的输入序列,而不是像DRNE[106]那样只对近邻进行采样并对节点进行排序。NetRA将GAEs作为ground-truth,采用随机高斯噪声加小全连通网络作为发生器,与ARGA正好相反。5.

5.3.2归纳学习和GCN编码器

与GCN相似,如果将节点属性合并到编码器中,则GAE可以应用于归纳设置。这可以通过使用GCN作为编码器来实现,例如[105],[108],[110],或者直接从节点特征中学习映射功能,如[107]。由于边信息仅用于学习参数,因此该模型可以应用于训练期间看不到的节点。这些工作还表明,尽管GCN和GAE基于不同的体系结构,但可以将它们组合使用,我们认为这是一个有希望的未来方向。(作者建议将GCN与GAE相结合

5.3.3相似度

在GAE中,采用了许多相似性度量,例如L2重建损失,Laplacian特征图,GAE的等级损失以及图VAE的KL散度和Wasserstein距离。尽管这些相似性度量基于不同的动机,但是如何为给定的任务和模型体系结构选择合适的相似性度量仍未研究。需要进行更多研究以了解这些指标之间的根本差异。

6.图强化学习

到目前为止,尚未讨论的深度学习的一个方面是强化学习(RL),它已被证明在AI任务(例如玩游戏)中有效[127]。众所周知,RL善于从反馈中学习,尤其是处理不可区分的目标和约束。在本节中,我们回顾了Graph RL方法,其主要特征总结在表6中。

GCPN [121]利用RL生成目标导向的分子图,以处理非微分的目标和约束。具体而言,将图生成建模为添加节点和边的马尔可夫决策过程,并将生成模型视为在图生成环境中运行的RL代理。通过类似于代理人的行为作为链接预测,使用特定领域以及对抗性奖励以及使用GCN来学习节点表示,可以使用策略梯度来端到端地训练GCPN [128]。

一个并发的工作,MolGAN[122],采用了类似的思想,使用RL生成分子图。代替通过一系列动作生成图,MolGAN建议直接生成完整的图形,对小分子很有效。

GTPN [123]采用RL预测化学反应产物。具体来说,该代理用于选择分子图中的节点对并预测其新的键类型,而奖励则根据预测是否正确而立即和最终给出。GTPN还采用GCN学习节点表示,并采用RNN记忆预测序列。

GAM [124]通过使用随机游走对图进行分类,并将随机游走的生成建模为部分可观察的马尔可夫决策过程,将RL应用于图的分类。
代理执行两个操作:预测图的标签和选择随机游走中的下一个节点。奖励仅仅是代理是否正确地对图形进行分类,即 

其中,rt= 1表示预测正确,rt= - 1表示不正确,T表示总的时间步长,表示环境。

DeepPath [125]和MINERVA [126]都采用RL进行知识图(KG)推理。具体来说,DeepPath旨在寻路,即在两个目标节点之间找到最有用的路径,而MINERVA则负责问题解答,即在给定问题节点和关系的情况下找到正确的答案节点。两种方法中的RL代理都需要通过在每一步预测路径中的下一个节点来在KG中输出推理路径,并在路径到达正确的目的地时获得奖励。DeepPath还添加了一个正则化术语来鼓励路径的多样性。

7.图对抗的方法

在过去的几年中,诸如生成对抗性网络(GAN)[136]或对抗性攻击之类的对抗方法在机器学习社区中引起了越来越多的关注。
在本节中,我们回顾了如何将对抗性方法应用于图,其主要特征总结在表7中。

Deep Learning on Graphs: A Survey(图的深度学习综述)_第17张图片

                                                  图10.ARGA / ARVGA的框架经许可转载自[110]。对抗训练计划已纳入GAE

                                                                                   表6.图强化学习的主要特点

Deep Learning on Graphs: A Survey(图的深度学习综述)_第18张图片

7.1对抗训练

GAN的基本思想是建立两个链接的模型:鉴别器和生成器。生成器的目标是通过生成假数据来“欺骗”鉴别器,而鉴别器的目的是区分样本是来自真实数据还是由生成器生成。然后,两个模型可以通过使用minimax游戏进行联合训练而彼此受益。对抗训练在生成模型中被证明是有效的,并且增强了判别模型的泛化能力。在第5.3.1节和第6节中,我们分别回顾了如何在GAE和Graph RL中使用对抗训练方案。在这里,我们详细回顾了图上的其他几种对抗训练方法。

GraphGAN [129]提出使用GAN来增强具有以下目标函数的图形嵌入方法[17]:

其中dv和 gv分别是鉴别器和生成器中节点v的低维嵌入向量。结合以上等式,鉴别器实际上具有两个目标:原始图中的节点对应具有较大的相似性,而生成器生成的节点对应具有较小的相似性。除了我们使用生成器G(·)生成负节点对而不是随机采样之外,这种体系结构类似于诸如LINE [114]之类的网络嵌入方法。作者表明,对抗训练可以增强节点嵌入向量的推理能力

同时,对抗性网络嵌入(ANE)[130]也提出利用对抗性训练来改进网络嵌入方法。与ARGA类似[110],ANE使用GAN作为对现有的网络嵌入方法进行额外的正则化,如DeepWalk[137],将先验分布作为真实数据,将嵌入向量作为生成的样本。

GraphSGAN [131]提出使用GAN来增强图的半监督学习。具体来说,GraphSGAN观察到应该在子图之间的密度差距中生成假节点,从而削弱了现有模型在图中不同簇之间的传播效果。为了实现这一目标,作者设计了一个具有多个复杂损耗项的新优化目标,以确保生成器在平衡时在密度间隙中生成样本。

NetGAN[132]采用GAN生成图形。具体地,作者把生成图看作是学习有偏随机游动的分布,并提出了一个利用LSTM生成和判别随机游动的GAN框架。实验表明,这种通过随机游动生成的模型也可以学习全局网络模式。

7.2对抗攻击

对抗性攻击是另一类通过在数据中添加小扰动来故意“愚弄”目标方法的对抗性方法。研究对抗性攻击可以加深我们对现有模型的理解,并激发更健壮的体系结构。接下来,我们回顾一下基于图表的对抗攻击。

Nettack[133]首先提出通过修改图结构和节点属性来攻击节点分类模型,如GCNs。其中,表示目标节点为v0,其真实类为ctrue,目标模型为F(A,FV),其损失函数为LF(A,FV),采用目标函数为:

其中A丿、FV 丿为修改后的邻接矩阵和节点特征矩阵,Z为F(·)预测的分类概率,P为攻击约束确定的空间。简单来说,优化的目标是找到最好的合法的图结构的变化和节点属性,这样是不是v0和θ∗表明攻击是使役动词,即攻击之前培训目标模型。作者为这些攻击提出了几个约束条件。最重要的限制是攻击应该是“不可察觉的”,即只添加很小的更改。具体来说,作者建议保留数据特征,包括节点度分布和特征共现。

还提出了两种攻击方案,即直接攻击(直接攻击v0)和影响攻击(仅攻击其他节点,从而影响v0?),并提出了几种放松措施以使优化易于处理。

同时,Dai等。[134]还研究了目标函数与方程类似的图的对抗攻击。(61),但只关注仅更改图结构的情况。作者并没有假设攻击者拥有所有信息,而是考虑了具有不同可用信息量的几种设置。最有效的策略RL-S2V采用structure2vec [138]来学习节点和图形表示,并使用强化学习来解决优化问题。实验结果表明,该攻击对节点和图分类任务均有效

前面提到的两种攻击是针对性的,即对某些目标节点v0进行错误分类。Zugner和Gunnemann [135]首先研究非目标攻击,即通过将图结构视为要优化的超参数并在优化中使用元梯度来降低模型的整体性能。利用了几种技术来近似亚梯度。

8.讨论与结论

到目前为止,我们已经回顾了基于图的深度学习方法的不同架构以及它们之间的区别和联系。接下来,在总结本文之前,我们将简要讨论它们的应用、实现和未来的发展方向.

8.1应用

除了诸如节点或图形分类之类的标准图形推理任务之外,基于图形的深度学习方法还被广泛应用于各种学科,例如建模社会影响力[139],建议[29],[72],[105]。,[140],化学和生物学[52],[58],[61],[121],[122],物理学[141],[142],疾病或药物预测[143]-[145],基因表达式[146],自然语言处理(NLP)[147],[148],计算机视觉[149]-[153],流量预测[154],[155],程序归纳[156]和求解基于图的NP问题[157],[158]。

尽管由于这些应用程序的多样性,对这些方法进行彻底的审查超出了本文的范围,但我们列出了一些主要的启发。首先,将领域知识纳入模型非常重要,例如在构造图形或选择架构时。例如,基于相对距离构建图形可能适用于交通预测问题,但由于地理位置也很重要,因此可能不适用于天气预报问题。其次,基于图的模型通常可以建立在其他架构之上,而不是单独工作。

例如,计算机视觉社区通常采用CNN来检测对象,然后将基于图的深度学习用作推理模块[43]。另一方面,可以将GCN用作NLP问题的语法约束[147],[148]。因此,如何集成不同的模型通常是关键的挑战。这些应用程序还表明,基于图的深度学习不仅使我们能够挖掘现有图数据的丰富价值,而且还通过将关系数据自然地建模为图来帮助推进其他学科,从而大大拓宽了基于图的深度学习的适用范围。

8.2 Implementations

最近,有几个用于图的深度学习的开放库,我们在表8中列出。我们还在附录中收集了本文讨论的论文的源代码列表,这些源代码大多由原始作者组成。这些开放的实现使学习,比较和改进不同方法变得容易。一些实现也解决了分布式计算的问题,我们不在本文中讨论。

8.3未来的发展方向

以下有几个未来的方向:

未研究的图结构的新模型:由于图数据的结构极为不同,因此现有方法无法处理所有这些方法。例如,大多数方法集中于同构图,而很少研究异类图,特别是那些包含不同模态的图,如[162]。签名网络中的负边缘代表节点之间的冲突,它也具有独特的结构,并对现有方法提出了额外的挑战[163]。还研究了代表两个以上对象之间复杂关系的超图[164]。下一步的重要步骤是设计特定的深度学习模型,以处理这些不同类型的图。

现有模型的组合型:如许多部分所示,许多现有架构可以协同工作,例如,将GCN用作GAE或Graph RL中的一层。除了设计新的构建块之外,如何系统地组合这些体系结构是一个有趣的未来方向。在这个过程中,如何以有原则的方式而不是个案的方式整合跨学科知识也是一个悬而未决的问题。Graph Networks [9]是最近的工作,迈出了第一步,并着重于将GNN和GCN的通用框架用于关系推理问题。通过减轻组装不同组件并选择超参数的人的负担,AutoML也可能会有所帮助[165]。

动态图:现有的大多数方法都集中在静态图上。但是,许多实际图形本质上是动态的,节点,边线及其特征可以随时间变化。
例如,在社交网络中,人们可能建立新的社交关系,消除旧的边缘,他们的爱好和职业等特征会随着时间而改变。新用户可以加入网络,而旧用户可以离开。在很大程度上,如何对动态图的演变特征进行建模并支持增量更新模型参数仍然是文献中尚待解决的问题。一些初步的工作试图使用Graph RNN架构解决这个问题,并获得令人鼓舞的结果[28],[30]

可解释性和健壮性:由于图通常与其他风险敏感的场景有关,因此解释图上的深度学习模型对于决策问题至关重要。例如,在医学或与疾病相关的问题中,可解释性对于将计算机实验转化为临床用途至关重要。但是,基于图的深度学习的可解释性甚至比其他黑盒模型更具挑战性,因为图中的节点和边之间紧密相连。此外,由于许多现有的图上深度学习模型对攻击敏感,如第7.2节所示,如何增强现有方法的鲁棒性是另一个重要问题。分别在[166]和[167],[168]中可以找到关于解释性和鲁棒性的一些开创性著作。

8.4总结

综上所述,图上深度学习是一个很有发展前景的研究领域,充满了令人兴奋的机遇和挑战。研究图数据的深度学习为关系数据建模提供了关键的基础,是迈向更好的机器学习和人工智能时代的重要一步。

                                                                                   表8.图的深度学习库

 

 

 

 

 

 

待解决的问题:

1.图像的网格结构清晰,图形具有不规则的结构:(图形和图像具体什么区别?)图像是类似于照片的那种平面?图形立体不规则?

2.图的异构和同质:

3.以节点为中心的任务和以图为中心的任务:

4.门控神经网络:还没具体了解过

5.什么是自回归方式:

6.切比雪夫展开式:

7.几阶邻域的意思:

8.高斯核:

9.频谱域与空间域:

10.二分法:

11.什么是剩余链接:

12.伪时间:

13.高斯分布:

14.相似度:

你可能感兴趣的:(综述,深度学习)