摘要
网络表示学习(NRL)促进了传统的社交网络、知识图以及复杂的生物医学和物理信息网络的图挖掘。文献中已经报道了几十种网络表示学习算法。大多数研究集中于同构网络的节点嵌入学习,但具体的编码方案和用于学习节点嵌入的节点语义的具体类型有所不同。本文综述了在同构网络上进行网络表示学习的设计原则和不同的节点嵌入技术。为了便于比较不同的节点嵌入算法,我们引入了统一的参考框架,将给定网络上的节点嵌入学习过程划分为预处理步骤、节点特征提取步骤和节点嵌入模型训练,用于NRL任务,如链路预测和节点聚类。在这个统一的参考框架下,我们重点介绍了在节点嵌入模型学习过程的不同阶段使用的有代表性的方法、模型和技术。该调研不仅有助于研究者和实践者深入了解不同的网络表示学习技术,而且为设计和开发下一代网络表示学习算法和系统提供了实用指南。
引言
深度学习和卷积神经网络(CNN)[52]的最新进展在许多领域取得了显著的突破,如自然语言处理(NLP)中的机器翻译[94]和阅读理解[99],计算机视觉(CV)中的目标检测[79]和图像分类[59]。除了文本、音频、图像和视频数据外,信息网络(或图形)表示另一种自然而复杂的数据结构,表示一组实体及其关系。在商业、科学和工程领域,各种各样的真实世界的数据被最好地捕捉为信息网络,如蛋白质相互作用网络、引文网络和社交媒体网络,如Facebook、LinkedIn,举几个例子。
网络表示学习(Network representation learning, NRL),又称网络嵌入(Network embedding),是训练神经网络将信息网络表示为潜在空间中节点嵌入向量的集合,从而保留所需的网络特征,使训练良好的NRL模型能够进行网络分析。如链路预测或节点聚类,如图1所示。NRL的目标是利用深度学习算法将有用的网络信息编码到潜在的语义表示中,可用于执行流行的网络分析,如节点分类、链接预测、社区检测和特定领域的网络挖掘,如社会推荐[28,91],蛋白对蛋白相互作用预测[30],疾病基因关联鉴定[43],分子自动优化[31]和比特币交易预测[92]。
NRL从传统的依赖手工统计数据提取结构信息的特征工程出发,引入了一种新的数据驱动的深度学习范式,将结构特征与非结构特征一起捕获、编码和嵌入到由密集连续向量表示的潜在空间中。通过将边缘语义嵌入到节点向量中,可以有效地进行各种网络操作,如计算一对节点之间的相似度,在二维空间中可视化网络等。此外,利用NRL学习到的节点嵌入,可以自然支持大规模网络的并行处理。现有的网络表示学习大部分是针对同构网络的学习节点嵌入,其中所有节点都是同构的,所有边都属于同一类型的节点关系,例如,当我们只考虑用户及其友谊关系时,就认为社交网络是同构的[66]。异构信息网络由异构类型的节点和边组成,分别对应不同类型的实体和不同类型的关系。知识图谱[38,47]和RDF图[101]是异构信息网络的已知例子。
DeepWalk[66]是第一个节点嵌入算法,它通过与node2vec[36]结合使用自动编码器算法学习其作用域随机游走属性的编码,从而学习对同构图中每个节点的邻域特征进行编码。受DeepWalk设计的启发,已有数十种节点嵌入算法被提出[8,14,15,17,23,25,27,36,37,41,51,55,57,67,69-72,77,81,83,87,88,93,97,102,103]。虽然大多数研究集中在同构网络的学习节点嵌入上,但它们在具体的编码方案和用于学习节点嵌入的具体节点语义类型上有所不同。本文主要介绍了在同构网络上进行网络表示学习的设计原则和不同的节点嵌入技术。为了便于比较不同的节点嵌入算法,我们引入统一的参考框架,将给定网络上的节点嵌入学习过程划分为预处理步骤、节点特征提取步骤和节点嵌入模型,用于链路预测和节点聚类。在这个统一的参考框架下,我们重点介绍了在节点嵌入模型学习过程的不同阶段使用的最具代表性的方法、模型和技术。
我们认为,深入理解不同的节点嵌入方法/模型/技术,对于建立在节点嵌入技术之上的其他类型的网络表示学习方法,如边嵌入[2,32]、子图嵌入[9,16]和全图嵌入[5,63],也是至关重要的。例如,一条边可以用它的两个相邻节点的向量的Hadamard 乘积表示。类似地,图粗化机制[19,100]可以通过将输入图中的节点依次聚类为更小的图,以分层的方式连接,从而创建一个层次,可以用来生成子图甚至整个图的表示。我们认为,本文不仅有助于研究者和实践者深入了解不同的网络表示学习技术,而且也为设计和开发下一代网络表示学习算法和系统提供了实用指南。
目前的综述[13,20,40]主要集中在提出一个分类来回顾网络表示学习的现有工作。[13]分别提出了基于问题设置和技术的图嵌入两种分类法,于2017年首次在ArXiv上出现,并于2018年发表。[20]根据保留的信息类型提出了网络嵌入的分类。[40]于2017年出现在IEEE Data Eng杂志上。本文介绍了一套传统的节点嵌入方法,重点介绍了基于成对邻近的方法和基于邻域聚合的方法。相比之下,我们统一的参考框架提供了一个更广泛、更全面的网络表示学习现状的比较综述。在我们的三个阶段的参考框架中,每个阶段都是一组专门用于这一阶段的任务的技术解决方案的分类。例如,我们不仅回顾了使用统一框架的节点嵌入模型,还描述了一组在不同的节点嵌入方法中常用的优化技术,并概述了NRL的最新进展。
为了方便参考,我们在表1中列出了整个论文中使用的数学符号。本综述的其余部分结构如下。在第2节中,我们描述了使用自动编码器方法生成节点嵌入的网络表示学习的基本步骤。在第3节中,我们概述了统一的NRL三阶段参考框架,并讨论了在每个阶段使用的代表性方法、模型和优化技术。在第四章中,我们回顾了传统NRL、分布式NRL、多分布式NRL、动态NRL和基于该参考框架的知识图表示学习的最新进展,并讨论了几个有待解决的问题。在第5节中,我们总结了我们的综述。