作者:清华大学 zhoujie 等
*表示相同的贡献。周洁,张正艳,程阳,刘志远(通讯作者),孙茂松,清华大学计算机科学与技术学院,北京100084。电子邮件:fzhoujie18, zhangzhengyan14, cheng- [email protected] a.edu.cn, fsms, liuzyg@tsinhua a.edu.cn崔甘曲,清华大学物理系,北京100084。电子邮件:[email protected]王立峰,李昌成,腾讯公司,中国深圳。电子邮件:ffandywang, [email protected]
GitHub GNN论文集 https://github.com/thunlp/GNNPapers
许多学习任务都需要处理包含丰富元素间关系信息的图数据。物理系统的建模、分子指纹的学习、蛋白质界面的预测以及疾病的分类都需要一个模型来从图形输入中学习。在从文本、图像等非结构数据学习等领域,对提取出来的结构进行推理,如句子的依赖树、图像的场景图等,是一个重要的研究课题,也需要图形推理模型。图神经网络(GNNs)是一种连接模型,它通过图节点间的消息传递来捕获图之间的依赖关系。与标准神经网络不同,图神经网络保留了一种状态,这种状态可以表示任意深度的邻域信息。虽然原始的gnn很难训练到一个固定的点,但是最近在网络架构、优化技术和并行计算方面的进展使它们能够成功地学习。近年来,基于图卷积网络(GCN)、图注意网络(GAT)、门控图神经网络(GGNN)等图神经网络变体的系统在上述许多任务上都表现出了突破性的性能。在本研究中,我们对现有的图神经网络模型进行了详细的回顾,系统地对其应用进行了分类,并提出了四个有待进一步研究的问题
1 INTRODUCTION
图是一种数据结构,它对一组对象(节点)及其关系(边)建模。最近,研究分析图表和机器学习已经收到越来越多的关注,因为图形的表达能力,即图可以作为外延大量系统在各个领域包括社会科学(社交网络)[1],[2],自然科学(物理系统[3],[4][5])和蛋白质交互网络,知识图[6]和许多其他研究领域[7]。图分析作为一种独特的机器学习非欧几里德数据结构,其研究重点是节点分类、链路预测和聚类。图神经网络是一种基于图域的深度学习方法。由于其令人信服的性能和较高的可解释性,GNN近年来已成为一种广泛应用的图分析方法。在接下来的段落中,我们将阐述图神经网络的基本动机。
卷积神经网络(CNNs)[8]中GNNs根的第一个动机。CNNs有能力提取多尺度的本地化空间特征并进行组合,构建出具有高度表达性的表征,几乎突破了所有机器学习领域,开启了深度学习[9]的新时代。随着我们对CNNs和图的深入研究,我们发现了CNNs的关键:局部连接、共享权值和多层[9]的使用。这些对于解决图域问题也具有重要意义,因为图是最典型的局部连通结构。2)与传统谱图理论[10]相比,共享权值降低了计算成本。3)多层结构是处理分层模式的关键,它捕获了不同大小的特征。然而,CNNs只能对图像(二维网格)、文本(一维序列)等常规欧氏数据进行操作,而这些数据结构可以看作是图的实例。因此,将CNNs推广到图上是很容易的。如图1所示,局部卷积滤波器和池运算符的定义比较困难,这阻碍了CNN从欧几里德域到非欧几里德域的转换。
另一个动机来自嵌入[11][15]的图,它学习在低维向量中表示图节点、边或子图。在图形分析领域,传统的机器学习方法通常依赖于手工设计的特征,并且由于其灵活性和高成本而受到限制。DeepWalk[17]是第一个基于表示学习的图形嵌入方法,它遵循表示学习的思想和单词嵌入[16]的成功,将SkipGram模型[16]应用于生成的随机游动。类似的方法如node2vec[18]、LINE[19]和TADW[20]也取得了突破。然而,这些方法有两个严重的缺点。首先,编码器中的节点之间不共享任何参数,这导致计算效率低下,因为这意味着参数的数量与节点的数量呈线性增长。其次,直接嵌入方法缺乏泛化能力,不能处理动态图或泛化到新的图。
提出了一种基于神经网络和图嵌入的图神经网络(GNNs),用于从图结构中对信息进行集合。因此,它们可以对由元素及其依赖关系组成的输入和/或输出进行建模。此外,图神经网络可以利用RNN核同时对图上的扩散过程进行建模。
在接下来的部分中,我们将解释为什么图神经网络值得研究的基本原因。首先,像CNNs和RNNs这样的标准神经网络不能很好地处理图形输入,因为它们按照特定的顺序叠加节点的特征。然而,图中没有节点的自然顺序。为了完整的表示一个图形,我们需要遍历所有可能的顺序作为模型的输入,比如CNNs和RNNs,这在计算时是非常冗余的。为了解决这个问题,gnn分别在每个节点上传播,忽略节点的输入顺序。换句话说,GNNs的输出对于节点的输入顺序是不变的。其次,图中的边表示两个节点之间的依赖关系信息。在标准神经网络中,依赖信息只是节点的特征。但是,GNNs可以在图形结构的指导下进行传播,而不是将其用作特性的一部分。一般来说,GNNs通过对节点周围状态的加权和来更新节点的隐藏状态。第三,推理是高水平人工智能的一个非常重要的研究课题,人脑的推理过程几乎是基于从日常经验中提取的图形。标准的神经网络已经显示出通过学习数据分布生成合成图像和文档的能力,而它们仍然不能从大型实验数据中学习推理图。然而,GNNs探索从场景图片和故事文档等非结构化数据中生成图形,这对于进一步的高级人工智能是一个强大的神经模型。最近,已经证明了一个未经训练的简单架构的GNN也可以很好地执行[21]。
关于图神经网络的研究已有许多综述。[22]提出了一个统一的框架MoNet,将CNN架构推广到非欧几里德域(图和流形),该框架可以推广图[2]、[23]上的几种光谱方法,以及流形[24]、[25]上的一些模型。[26]全面回顾了几何深度学习,介绍了其存在的问题、难点、解决方案、应用和未来发展方向。[22]和[26]侧重于将卷积推广到图或流形上,但本文只关注图上定义的问题,并研究了图神经网络中使用的其他机制,如门机制、注意机制和跳过连接。[27]提出了消息传递神经网络(MPNN),它可以推广几种图神经网络和图卷积网络方法。[28]提出了一种非局部神经网络(NLNN),它统一了几种自我注意方式。然而,该模型并没有在本文的图中明确定义。针对特定的应用领域,[27]和[28]只给出了如何使用其框架概括其他模型的例子,并没有对其他图神经网络模型进行综述。[29]提供了对图形注意模型的回顾。[30]提出的图形网络(GN)框架具有较强的泛化能力。然而,图网络模型高度抽象,[30]只给出了应用的粗略分类。
[31]和[32]是关于GNN的最新调查论文,主要关注GNN模型。[32]将GNNs分为五类:图卷积网络、图注意网络、图自动编码器、图生成网络和图时空网络。我们的论文对[32]有不同的分类。我们在2.2.2节中介绍了图卷积网络和图注意网络,因为它们对传播步骤有贡献。由于模型通常用于动态图,我们在2.2.1节中给出了图的时空网络。我们在第2.2.3节中介绍了图形自动编码器,因为它们是在无监督的方式下训练的。最后,我们介绍了图生成网络在图生成中的应用(见3.3.1节)。
本文对不同的图神经网络模型进行了全面的综述,并对其应用进行了系统的分类。综上所述,本文对图神经网络进行了广泛的研究,其贡献如下
1.我们对现有的图神经网络模型进行了详细的回顾。我们介绍了原始模型、它的变体和几个通用框架。我们研究了这一领域的各种模型,并提供了一个统一的表示方法来表示不同模型中的不同传播步骤。通过识别相应的聚合器和更新器,可以很容易地使用我们的表示来区分不同的模型。
2.我们系统地对应用程序进行分类,并将应用程序分为结构化场景、非结构化场景和其他场景。我们介绍了几种主要的应用程序及其对应的方法。
3.我们提出了四个有待进一步研究的问题。图神经网络存在过平滑和缩放问题。目前还没有有效的方法来处理动态图以及对非结构感测数据进行建模。我们对每个问题进行了深入的分析,并提出了未来的研究方向
调查的其余部分组织如下。在第二节中,我们介绍了图神经网络族中的各种模型。我们首先介绍原始框架及其局限性。然后我们展示了它的变体,试图释放这些限制。最后,介绍了最近提出的几种通用框架。在第3节中,我们将介绍图神经网络在结构场景、非结构场景和其他场景中的几个主要应用。在第4节中,我们提出了图神经网络的四个开放问题以及未来的研究方向。最后,我们在第5节结束了调查。
2 MODELS
图神经网络是研究非欧几里德结构的有效工具,文献中提出了多种方法来改进模型s的性能。
在sec2.1中,我们描述了[33]中提出的原始图神经网络。我们还列出了原始GNN在表示能力和训练效率方面的局限性。在Sec 2.2中,我们介绍了几种图神经网络的变体,旨在消除这些限制。这些变体对不同类型的图进行操作,利用不同的传播函数和先进的训练方法。在Sec 2.3中,我们提出了三个通用框架,它们可以概括和扩展几行工作。其中,消息传递神经网络(MPNN)[27]将各种图神经网络和图卷积网络方法相结合;非局部神经网络(NLNN)[28]统一了几种自我注意方法。而图神经网络(GN)[30]几乎可以推广本文所述的所有图神经网络变体。
在深入到不同的部分之前,我们给出了贯穿全文的符号。这些符号的详细描述见表1。
2.1 Graph Neural Networks
图神经网络(GNN)的概念最早是在[33]中提出的,它扩展了现有的神经网络来处理图域中表示的数据。在图中,每个节点都由其特性和相关节点自然地定义。GNN的目标是学习一种嵌入hv2 Rs的状态,其中包含每个节点的邻域信息。状态嵌入hv是节点v的一个s维向量,可用于生成节点标签等输出ov。设f为参数函数,称为局部过渡函数,它由所有节点共享,并根据输入邻域更新节点状态。设g是它的局部输出函数描述如何生成输出。则hv和ov定义为:
其中F、全局转换函数和G、全局输出函数分别是图中所有节点的F和G的堆栈版本。H的值是Eq. 3的不动点,在F为收缩映射的假设下唯一定义。根据巴拿赫不动点定理[34]的建议,GNN采用以下经典的迭代方案来计算状态
式中,Ht为H的第t次迭代。对于任意初值H(0),动力系统Eq. 5指数快速收敛到Eq. 3的解。注意,f和g中描述的计算可以解释为前馈神经网络。
当我们有了GNN的框架后,下一个问题是如何学习f和g的参数。对于监控的目标信息(特定节点的tv),损失可以写为
其中p为监督节点数。该学习算法基于梯度下降策略,由以下步骤组成。状态ht v由式1迭代更新,直到时间T。它们逼近式3:H(T) H的不动点解。权值W根据最后一步计算的梯度进行更新
Limitations :
虽然实验结果表明,GNN是一种强大的结构化数据建模体系结构,但是与原始GNN相比,它仍然存在一些局限性。首先,针对不动点迭代更新节点的隐藏状态是低效的。如果放松不动点的假设,我们可以设计一个多层GNN来得到节点及其邻域的稳定表示。其次,GNN在迭代中使用相同的参数,而大多数常用的神经网络在不同的层中使用不同的参数,作为分层特征提取方法。此外,节点隐藏状态的更新是一个循序渐进的过程,可以从GRU和LSTM等RNN内核中获益。第三,在原始GNN中也存在一些无法有效建模的边缘信息特征。例如,知识图中的边具有关系的类型,通过不同边的消息传播应该根据它们的类型而有所不同。此外,如何学习边缘的隐藏状态也是一个重要的问题。最后,如果我们把重点放在节点的表示上而不是图上,就不适合使用不动点,因为在不动点上表示的分布将会非常平滑,而且对于区分每个节点的信息也会更少。
在本节中,我们介绍了几种图神经网络的变体。Sec 2.2.1侧重于在不同图形类型上操作的变体。这些变体扩展了原始模型的表示能力。Sec 2.2.2列出了在传播步骤上的几个修改(卷积、门机制、注意机制和跳过连接),这些模型可以学习到更高质量的表示。Sec 2.2.3描述了使用高级培训方法的变体,这些方法提高了培训效率。图2概述了图神经网络的不同变体。
2.2.1 Graph Types
在原始的GNN[33]中,输入图由带有标签信息和无向边的节点组成,这是最简单的图形格式。然而,世界上有许多不同的图表。在这一节中,我们将介绍一些设计用来对不同类型的图建模的方法。
Directed Graphs 第一个变体是有向图。无向边可以看作是两个有向边,说明两个节点之间存在关系。然而,有向边比无向边能带来更多的信息。例如,在一个边从head实体开始到tail实体结束的知识图中,head实体是tail实体的父类,这意味着我们应该区别对待父类和子类的信息传播过程。DGP[35]采用Wp和Wc两种权值矩阵,结合更精确的结构信息。传播规则如下所示
Heterogeneous Graphs 图的第二种变体是异构图,其中有几种节点。处理异构图最简单的方法是将每个节点的类型转换为一个与原始特征相连接的单热特征向量。此外,GraphInception[36]将元路径的概念引入到异构图的传播中。使用元路径,我们可以根据邻居的节点类型和距离对它们进行分组。对于每个邻居组,GraphInception将其作为一个同构图中的子图进行传播,并将来自不同同构图的传播结果连接起来,以进行一个集合节点表示。最近,[37]提出了一种利用节点级和语义级注意的异构图注意网络(HAN)。该模型具有同时考虑节点重要性和元路径的能力。
Graphs with Edge Information 在图的另一种变体中,每条边都有额外的信息,比如边的权重或类型。我们列出两种方式来处理这类图:首先,我们可以将图转换成两偶图原边也成为节点和一个原边分成两个新的边缘这意味着有两个边缘之间的边缘节点和开始/结束节点。G2S[38]的编码器对邻居使用以下聚合函数
其中Wr和br为不同类型边(关系)的传播参数。其次,我们可以采用不同的权值矩阵在不同的边上进行传播。当关系数量非常大时,r-GCN[39]引入两种正则化来减少关系数量建模的参数数量:基分解和块对角分解。基于分解基础,每个Wr定义如下:
这里每个Wr是一个线性组合的基变换Vb 2 Rdin dout与系数arb。在块对角分解中,r-GCN通过对一组低维矩阵的直和来定义每个Wr,该矩阵比第一个矩阵需要更多的参数。
Dynamic Graphs 图的另一种变体是动态图,它具有静态图结构和动态输入信号。为了捕获这两种信息,DCRNN[40]和STGCN[41]首先通过GNNs采集空间信息,然后将输出输入序列到序列模型(sequence- To -sequence model)或CNNs中。不同的是,结构rnn[42]和ST-GCN[43]同时收集空间和时间信息。它们利用时间连接扩展静态图结构,因此可以在扩展图上应用传统的gnn。
2.2.2 Propagation Types
传播步长和输出步长对于获取节点(或边)的隐藏状态至关重要。如下所示,在原图神经网络模型的传播步骤中有几个主要的修改,而研究人员通常在输出步骤中遵循一个简单的前馈神经网络设置。不同变异GNN的比较如表2所示。变体使用不同的聚合器从每个节点的邻居和特定的更新器收集信息,以更新节点的隐藏状态。
Convolution. 将卷积推广到图域的兴趣越来越大。这方面的进展通常分为光谱方法和非光谱(空间)方法。谱方法使用图的光谱表示。
光谱的网络[45]提出了频谱网络。通过计算图拉普拉斯变换的特征分解,在傅里叶域中定义了卷积运算。操作可以定义为一个信号x 属于 RN(为每个节点一个标量)和一个过滤器gθ=诊断接头(θ)参数化RNθ2
另一篇文章