图神经网络旨在利用神经网络有效地处理图数据
图结构化数据在各个领域中都是通用的,例如分子,{社交,引文,道路}网络等示例,只是可以用图表示的大量数据中的少数。随着机器学习的进步,我们看到了在可用数据上应用智能算法的潜力。图神经网络是机器学习的一个分支,它涉及以最有效的方式为图数据构建神经网络。
尽管在具有卷积网络在计算机视觉领域中取得了巨大进步,但是图神经网络(GNN)面临着更具挑战性的问题,但它们处理了图的笨拙性质。与图像和文本不同,图形没有定义明确的结构。图的节点可能没有连接,也可能有许多,这些连接可能是有向的或无向的。数据集中的图形可能具有可变数量的节点和边,并且不能适当地"调整大小",并且它们可以是非循环,循环,联合,不相交的。总而言之,这使得处理数据的过程更具挑战性。
处理图的一种简单方法是连接节点,并建立一个更友好的结构化数据集,该数据集可以馈送到多层感知器(MLP)中,尽管这不是一个非常优雅的方法,但它可以提供良好的结果。尽管不足以处理多个可变大小和拓扑图或大型图,这些图会严重增加输入的维数。可变大小的图可以通过使用递归神经网络(RNN)处理 通过将图转换为节点序列。但是,这种策略也注定会失败,图中最重要的信息之一就是其结构,在节点序列中将不会留下任何痕迹。图形数据需要更健壮的方法,这些方法经过定制以处理其结构。
然而,处理图形的困难,卷积网络的发展激发了许多有关GNN领域的研究和新方法。卷积层具有一些有用的属性,例如:本地连通性,它们假设彼此靠近的像素高度相关。移位不变性,卷积会了解对象的特征,尽管它们具有空间位置。它们还能够在任何大小的图像上进行卷积。所有这些都是图上神经网络真正吸引人的功能,应该重视局部连通性,因为节点的邻居与节点本身相关,因此它们应该是移位不变的,因为在某种意义上邻居应该对卷积具有相同的含义。尽管在图形上所处的位置特别重要,但它们也应与图形的大小无关。
这导致了在图上应用卷积的不同方法,这些方法主要可以分为基于空间的图卷积或基于频谱的图卷积。
频谱GNN是一种更原则的卷积方法,其基础是信号预处理理论。
在没有详细讨论频谱卷积背后的理论的情况下,已经表明,空间域中的卷积等于频域中的乘法。可以将相同的定理应用于图,但是不是使用离散傅立叶变换矩阵作为基础,而是使用图拉普拉斯算子的特征向量。
图的拉普拉斯定义为:L = I — D_(-1/2) A D_(-1/2)
其中I是单位矩阵,D是对角阶矩阵,A是图的邻接矩阵。
谱卷积的主要局限性在于它们对拉普拉斯矩阵特征向量的依赖,这在每次计算中都是必需的,其向后传播的时间复杂度为O(n2),计算本征分解的时间复杂度为O(n3)。
进一步的工作通过使用Chebyshev多项式和Cayley多项式逼近方程来减少时间复杂度。
空间卷积是图卷积的一种更宽松的版本,它通过GCN在先前频谱GNN上的简化而得到普及。
空间卷积在空间上在节点上卷积的方式类似于常规卷积。卷积从像素本身(与新像素放置在相同位置的像素)及其周围的像素中生成一个新像素,空间图卷积通过将一个节点及其邻居合并到一个新节点中来进行卷积。
图解说明网格结构化图像中的规则卷积和图中的空间图卷积之间的差异的图像。
单个节点的空间图卷积可以定义为:
高=(sum(N)+ ni)* W
其中ni代表属于Rc的节点i,N代表ni的邻居,w是属于Rc x f的权重矩阵。hi是节点i的新表示形式。
我们注意到,这种卷积会将一个节点的本地信息聚合到一个新节点中。从GCN论文中我们可以得出:
与前面的方程式相似。Theta是应用于卷积的非线性激活函数。
Ã是图邻接矩阵加单位矩阵,这将使每个节点与其邻居聚合。
D是阶对角矩阵。如果在第一个等式中注意到我们正在对节点i的所有邻居求和,并且图中的节点可以具有任意数量的邻居,则应注意,我们必须对求和结果进行归一化。乘以反对角矩阵即可。
这种简单的操作是空间卷积的基础。并且将其中的几个与辍学层,L2正则化以及使用ReLU作为激活函数并将Adam作为优化器进行堆叠,GCN能够在现场实现3节点分类基准的SOTA。
注意,当今使用的事实上的方法是基于空间的卷积。这提供了一种更有效,更简单的图形卷积方法。
Graph神经网络可以处理各种各样的问题,列举一些问题,并给出如何解决的主要直觉:
节点预测,是预测一个或多个图形中的节点的值或标签的任务。例如 在引文网络中预测论文的主题。
这些任务可以简单地通过应用上述卷积来解决。大多数基准测试处于半监督设置中,其中数据集由单个图组成,其中某些节点标签用于训练/验证,而其他节点标签用于训练/验证。
图形预测,预测图形的值或标签。例如 预测特定分子的毒性。
通常,通过应用几个图卷积层以在节点之间聚合信息,然后使用某种读出操作将图中的所有节点聚合为固定大小的表示形式,然后应用MLP模型以获得最终结果,可以解决这些任务。 。
读出操作可以简单地取所有节点上的均值/平均值/最大池。
图生成,生成图。例如 产生具有所需特性(如药物样和合成可及性)的新型分子。
这些可以通过图形自动编码器解决。
边缘预测,类似于节点预测,预测边缘的值或标签,例如。预测知识库中是否有两个实体相关。
预测边缘通常通过应用图卷积层来解决,尽管大多数数据集和论文都针对节点预测,但是有一些模型专注于边缘预测,并且大多数节点预测模型都可以推广到边缘预测。
GNN也可以进行定制以处理时间预测问题或处理时变数据的预测问题(例如交通流量预测)。
时空图数据来自多个图,每个图代表一个时间步,其中图的大小可能有所不同。
通过应用RNN或CNN,有两种处理序列图的主要方法。
RNN解决方案通常将图卷积应用于聚合节点级别信息,并将RNN用于聚合时间级别信息。
卷积方法遵循相同的精神,通常将图卷积应用于聚合节点,然后针对时间级别信息应用一维卷积。
然后,根据任务是否基于图,将对图执行读出操作以生成单个输出值。
卷积神经网络的一个警告是它们不能很好地处理非局部相关性。
图卷积仅考虑一阶邻居,尽管可以将多个卷积层堆叠在一起以从更大的邻域中获取信息,但是输入图的大小是任意的,因此无法正确调整大小,因此节点不会通常获取图形的全局信息。
一个例子:考虑下图,以预测交通流量。
该图像包含几个兴趣点(POI),应该对其流量进行预测。这是一个非常适合时空GNN的任务,因为道路自然是图形结构,并且所有区域信息(例如附近学校或公园的存在)都可以嵌入到图形中。任务也与时间相关,流量会根据一天中的小时或星期几而变化。
自然地,我们看到与预测有重要的局部相关性,交通流量取决于其周围的附近事物。而且我们还注意到非局部的,上下文的相关性。特别是,我们可以假设POI 1和POI 3的流量高度相关,因为两个地点都位于附近有医院和游乐园的学校。能够识别这种上下文相关性应该可以改善模型的通用性。提出的解决方案是测量兴趣点之间的相似性,如果它们非常相似,则将考虑以下信息:
" As"是一个N x N矩阵,其作用类似于上述GCN公式中的邻接矩阵。
但是,这是一个特定于任务的问题,许多任务没有非局部相关性,在基于图形的任务中,此问题可以通过读取操作来缓解。
新研究的另一个重要灵感来源是注意力机制的发展和从头到尾的完全注意模型,这些模型在NLP的各种基准中达到了最新水平。
注意方法已成功应用于许多图卷积网络。与标准图卷积网络(如GCN)不同,GCN在执行卷积时为所有相邻节点赋予相同的权重,而GAT引入了一种关注机制,该机制将不同的权重分配给节点的邻居。
有趣的是,NLP中的原始Transformer模型也适用于处理图形数据。
它被应用于图到序列的任务中,在该任务中,模型接收一个图并输出一个序列,该模型必须从(AMR)图中生成文本。解决任务的常用方法是为图形生成嵌入(主要是通过使用GNN),然后用其训练NLP模型。
尽管图卷积通常用于生成嵌入,但作者指出,它们难以学习节点之间的远距离关系。简而言之,他们使用图自动编码器根据节点之间的最短距离创建图的嵌入。
与机器学习的其他每个领域类似,图神经网络是一个快速发展的领域。
但是与许多其他问题不同,GNN中的大多数问题都没有完善的解决方案或作为即插即用求解器的高级模型体系结构。图域中的问题肯定需要垂直思考,并且根据问题和数据,各种各样的解决方案都可以产生出色的结果。一个例子,为了预测分子在特定键中原子之间的相互作用力,第一个解决方案解决了端到端图形转换器的问题,而第二个到第四个解决方案利用图形手工制作了序列并使用了标准的NLP变形器其他方法则使用更通用的图卷积神经网络(例如GAT和GCN),或使用专门为处理领域数据而构建的GNN,这表明了领域内方法的异质性。
GNN内还有许多有趣的主题,此处未提及。未提及的一些主题包括:图形递归神经网络,图形自动编码器,图形对抗方法,图形强化学习。