图神经网络综述:模型设计、理论分析与实际应用
2021-04-20

AIopen周界.png

图神经网络(Graph neural network,GNN)是目前非常火热的研究领域。随着领域的快速发展,越来越多的图神经网络模型与变种被提出。面对众多的模型与变体,研究者如何针对自己的任务与应用选择合适的计算单元,设计高效的图神经网络模型?如何更好利用图的不同特点,从而提升模型精度?现在的图神经网络又有哪些理论支持与模型限制?

针对这些问题,研究团队中的周界、崔淦渠、胡声鼎等同学将2018年在arxiv上公开的一篇综述《Graph neural networks: A review of methods and applications》进行了相应的更新,并从设计者的角度出发,详细介绍了图神经网络的模型设计、相关分析与具体应用,文章于近期发表在期刊AI Open上。

本文的主要贡献如下:

1、文章对现有的图神经网络模型进行了详细的总结,提出了一个通用的GNN模型设计框架并且详细讨论了其中每个组件的现有实现。文章还进一步介绍了对于现有GNN模型的相关理论与实验分析。

2、文章对GNN现有的应用进行了系统地分类并且将应用划分为结构化场景应用和非结构化场景应用。文章介绍了每个场景中的典型应用与相关方法。

3、文章提出了四个开放问题。文章对每个问题进行了相应的分析并提出了一些可行的未来方向。

一、图神经网络的通用设计框架

文章从模型设计者的角度来介绍相关的GNN模型,提出了一个通用的图神经网络模型设计范式,并将现有的模型总结到设计范式中的不同模块中。具体来说,该设计范式包括四个步骤:(1)寻找图结构;(2)明确图类型与规模;(3)设计损失函数;(4)使用计算模块构建模型。

图片2.png

(1)寻找图结构

在这一步中,设计者需要明确应用中的图结构。在一些如知识图谱、分子图、物理系统等结构化场景的应用中,图结构是较为明确的;在另一些非结构化场景中(如文本和图像),设计者需要首先明确图的形式,例如为文本构建一个全连接的词图或者为图像构建一个场景图。确定了图结构之后,之后的设计过程将关注在如何将GNN应用到相应的图上。

(2)明确图类型与规模

确定图结构之后,设计者需要根据应用确定图类型与规模。对于图类型来说,不同类型的图往往蕴涵了不同的额外信息,所以在设计模型时需要特殊考虑如何利用不同图的不同性质。对于图的规模来说,目前对于“大图”和“小图”没有一个明确的划分界限,并且评判的指标也会随着计算能力的发展不断变化。文章中将计算设备能否处理和存储一个图的邻接矩阵或拉普拉斯矩阵(空间复杂度为N^2,N为节点个数)作为划分的方式。如果一个图的邻接矩阵不能被设备直接处理或存储,那么将被视为大规模的图,对该图的处理要采用相应的大规模图神经网络模型。具体来说,文章在第4章详细介绍了考虑不同图类型和规模的现有模型变体,包括有向图、异质图、动态图、其他图类型以及大规模的图模型。

图片3.png

(3)设计损失函数

在这一步中,设计者需要根据自己应用的任务类型与训练设定来设计模型的损失函数。对于任务类型来说,文章将现有的图上相关任务划分为节点级别、边级别以及图级别任务。在不同级别上的任务又可以被划分为分类与回归等不同的任务类型,模型设计者需要考虑自己关注任务的类型来设计相应的损失函数。另一个需要考虑的因素是训练设定。根据任务标注数据的情况,现有的任务可以被划分为监督学习、半监督学习和无监督(自监督)学习三种不同的训练设定。对于监督和半监督学习来说,设计者可以利用标注标签使用相应的损失函数。对于无监督(自监督)学习来说,往往需要设计者自行设计相应的无监督(自监督)任务来进行模型的表示学习。在第5章中,文章详细介绍了无监督(自监督)设定下的相关模型,包括了基于图自编码器与基于对比学习的相关方法。

图片4.png

(4)使用计算模块构建模型

在上述步骤后,模型设计者最后需要使用相应的计算模块来设计最终的模型。文章将计算模块分类为(消息)传播模块、采样模块与池化模块。其中每个模块又包含不同的模型变种,如传播模块中包括卷积算子和循环算子这两种最主要的图神经网络计算模型以及跳跃连接。采样模块中包括节点采样、层采样和子图采样等不同采样方式。池化模块中包括直接池化与层级池化等不同的方式。每种分类下又包含相应的模型介绍。文章在第3章中详细介绍了具体的计算模块。

图片5.png

二、图神经网络分析与应用

文章在第7章从理论与实验两个角度介绍了对于图神经网络进行分析的相关工作。在理论角度,文章从图信号处理、泛化能力、表达能力、不变性、迁移能力、标签效率等几个角度进行了相关介绍。在实验分析角度,文章介绍了对于图神经网络进行性能评估的相关工作以及现有的大规模评估基准。
在应用方面,文章将现有的图神经网络应用划分为结构化场景与非结构化场景,并介绍了不同场景中不同领域内的代表性模型。

图片6.png

三、结语

图神经网络在许多任务上都取得了较好的结果,然而目前还有许多没有解决的问题。文章在第9章介绍了目前图神经网络研究中的四个开放问题:鲁棒性、可解释性、图预训练与复杂图结构学习。随着领域的快速发展,越来越多的图神经网络模型与应用被提出。因为精力所限,本文无法穷尽该领域的所有方法与文献,但希望通过提出的设计框架为研究人员提供一个不同的视角,并为今后研究人员使用与设计图神经网络提供新的思路与见解。

论文名称:Graph neural networks: A review of methods and applications

论文作者:Jie Zhou, Ganqu Cui, Shengding Hu, Zhengyan Zhang, Cheng Yang, Zhiyuan Liu, Lifeng Wang, Changcheng Li, Maosong Sun

论文链接:https://arxiv.org/abs/1812.08434

AI Open简介:AI Open专注于AI的开放共享,分享 AI 理论与应用知识和前瞻性观点。所有被录用的文章将在Elsevier的ScienceDirect平台完全开放,发表后即可立即免费阅读、下载以及分享。该期刊的主题包括但不限于:深度学习与表征学习、图理论与图挖掘、知识图及其应用、自然语言处理、图像处理与分析等。此外,部分人脑研究主题也包含在内,如大脑连接和网络建模、神经免疫学等。欢迎投稿!