面向异质信息网络的表示学习方法研究综述*

2019-07-11 07:28赵中英
计算机与生活 2019年7期
关键词:异质异构向量

周 慧,赵中英,李 超

山东科技大学 计算机科学与工程学院,山东 青岛 266590

1 引言

网络是表达事物之间关联关系的有效载体,由节点和链接关系(边)组成,在日常生活中无处不在。异质信息网络是一种特殊类型的网络,由多种类型的节点、链接关系以及属性信息组成,具有大规模、异质性等特点。随着信息时代的发展,所面临的信息网络越来越复杂,各行各业对数据处理的速度和有效性也提出了更高的需求。采用邻接矩阵这种高维稀疏的编码方式来表示网络中的节点,很难被机器学习算法处理。网络表示学习(或网络嵌入)采用低维向量的形式表示网络中的组件,打破了网络固有的节点和边的形态,同时最大程度地保留原网络中的结构信息和特性。由于低维的向量很容易被机器学习算法处理,因而越来越受到学术界和产业界的广泛关注,也有效地运用到了节点分类[1-2]、链接预测[3-4]、社区发现[5-6]和推荐[7-8]等任务中。最初的网络表示学习算法注重对原网络的复现,即最大程度保留原网络中的信息。相关研究工作包括DeepWalk[9]、LINE(large-scale information network embedding)[10]、node2vec[11]和 GraRep(graph representations)[12]等。虽然这些算法越来越精确地保留了节点在原网络中的相对位置关系,但它们只是单纯地借助于拓扑结构信息,学得的表征向量缺乏对后续实验任务的区别力和推理能力。现实世界的网络中普遍存在着除拓扑信息之外的异质信息,包括节点或边上的标签信息、社区信息和属性信息等。充分利用这些异质信息有助于学得更具推理能力和区别力的表征向量。

融合异质信息的网络表示学习工作相继被提出,在很大程度上推动了该领域的发展。对这些算法进行分类梳理有助于了解和掌握该领域的学术思路和动态。在本文中,首先创建了一个统一的分类框架,并在每个类别下列举了一些代表性算法。进一步地,从横向上对各类别下的代表性算法进行了介绍,包括其主要的理论方法和思想。之后,又纵向对比了这些算法的时间复杂度、优缺点和评估实验等。此外,整理了实验中一些常用的数据集,并给出了简单的属性介绍和相关链接。在文章最后,进一步指出了该领域的挑战和未来可能的研究方向。

1.1 相关定义

1.1.1 异质信息网络

根据石川等人在文献[13]中提出的异质信息网络的定义,进一步对本文所涉及的异质信息网络给出以下形式化的定义。

1.1.2 网络表示学习

定义2(网络表示学习[14](network representation learning,NRL))给定一网络G(V,E),其中V表示网络G中的节点集,E表示网络G中的边集。目标是为网络中的节点v∈V(或边、子图等)学习一映射关系f:v→rv∈Rd,其中rv是为节点v学得的低维稠密向量,d<<|V|,转换函数f用于捕获定义在原网络中的相似度信息。

结合定义1,进一步给出异质信息网络上的表示学习的形式化定义,如下所示。

定义3(异质信息网络表示学习)给定一异质信息网络G(V,E,T,φ,ψ,H),目标是为网络中的节点v∈V(或边、子图等)学习一映射关系f:v→rv∈Rd,d<<|V|,rv是为节点v学得的低维稠密向量,其中包含了节点在原网络中的异质信息。

1.2 符号和解释

进一步总结了本文中用到的主要符号及其解释,如表1所示。

Table 1 Notations used in this paper表1 本文中的常用符号

2 算法分类介绍

Fig.1 Classification framework for algorithms(color of algorithm is corresponding to methodology)图1 算法分类框架(算法的颜色与理论相对应)

针对融合异质信息的网络表示学习算法,首先设计了一个统一的分类框架,并在每个类别下列举了一些代表性算法。如图1所示,该框架首先以信息类型作为分类依据将算法分成了四大类,即:标签/社区信息、属性信息、多种类型信息以及异构网络。其中前三类面向的是带有辅助信息的网络,第四类面向的是异构网络。接下来,在每个类别下进一步划分成有监督和无监督这两个子类,并列举了相应的代表性算法。此外,框图的最下方是这些算法用到的基础理论方法,包括矩阵分解、神经网络、自定义损失函数以及其他的综合框架。采用不同的颜色进行标注,并与相应算法的颜色相对应。在下文中,将对一些代表性算法进行分类介绍。

2.1 标签信息辅助的网络表示学习

2.1.1 基于矩阵分解的方法

MMDW(max-margin DeepWalk)[15]是基于矩阵分解的有监督的表示学习模型。该模型首先从理论上证明了DeepWalk相当于矩阵分解;然后将矩阵分解得到的表征向量输入到支持向量机[16](support vector machine,SVM)中进行训练,并根据分类边界产生有偏置的梯度方向;之后根据该方向进行向量更新,以增大表示向量在分类器中的分类间隔。总的来说,该模型共同优化最大间隔分类器和目标矩阵分解模型,使得学得的表征向量具有对后续机器学习任务的区别力。

与之类似的算法还包括DDRW(discriminative deep random walk)[17]、TLINE[18]以 及 SemNE(semisupervised network embedding)[19]等。这些算法共同的优点是能够直接优化分类损失,使学得的表征向量具有区别力,但这些算法容易产生过拟合。

2.1.2 基于神经网络的方法

Kipf等人提出了GCN(graph convolution networks)[20]算法,运用卷积神经网络来处理图结构数据。该算法首先将图的拉普拉斯矩阵的特征向量矩阵通过傅里叶变换转化到谱空间上,然后进行卷积操作。然后通过部分带标签的节点对模型进行训练,从而实现半监督学习。此外,作者还设计了一种简单有效的层级传播规则,通过这种方式可快速有效地处理图数据上的半监督分类问题。特别地,在不借助任何外部信息的情况下,该模型所学得的图节点向量表示和DeepWalk算法结果是极为相似的,这也表明了图卷积神经网络应用在网络表示学习任务中的有效性。更多关于图神经网络的内容可参阅文献[21]。

TransNet(translation-based network representation)[22]将自编码器模型与转换机制[23-24]相结合,对网络中边上的标签信息进行建模。主要方法是对边上的标签信息进行自编码,并对自编码器中间层上的边向量进行转换操作,将节点的向量表示和对应的边向量训练成平移关系。由此,可根据节点向量直接推出边向量,通过解码操作即可获得边上的标签信息。该模型被成功运用在社会关系提取任务中。

2.1.3 综合框架方法

在现实网络中,节点之间存在着不同类型的相似性,使得网络呈现出多种视图(multi-view)。传统网络表示学习模型大都是学习网络中的单一视图信息,唐建等人提出了一种可整合网络中多视图信息的鲁棒性表示学习模型MVE(multi-view network embedding)[25]。该模型基于注意力机制学习各视图的权重并进行信息整合,最终学得具有高鲁棒性的表征向量。

进一步将本小节中介绍的算法进行综合比较,包括时间复杂度、理论基础、有无监督以及评估方法等,对比结果如表2所示。

Table 2 Comprehensive comparison of algorithms assisted by label information表2 标签信息辅助的算法综合比较

2.2 社区信息辅助的网络表示学习

2.2.1 基于矩阵分解的方法

M-NMF(modularized nonnegative matrix factorization)[26]算法对网络中节点分别从微观和中观的角度学习向量表示,同时考虑节点之间的相似度和节点所属的社区信息。微观层面上,该算法主要编码节点间的一阶和二阶拓扑相似度;中观层面上,该模型运用基于模块性最大化的社区发现方法来建模网络中的社区结构。最终学得的表征向量同时包含了节点在原网络中的拓扑信息以及所属的社区信息,在后续的节点聚类和分类任务中表现优越。

2.2.2 综合框架方法

除了利用社区信息对网络中的单个节点进行表示学习之外,Cavallari等人设计了ComE(community embedding)[27]模型,可直接对整个社区进行表示学习。模型中节点嵌入、社区发现以及社区嵌入这三部分之间循环进行,并且相互促进。节点嵌入有助于增强社区发现,用于输出更好的社区,由此能够进一步拟合出更好的社区嵌入。实验证明这对社区层面上的任务有很大的帮助,包括社区发现、社区可视化和社区推荐等。结合社区信息进行表示学习的算法还包括COSINE(community-preserving social network embeddings)[28]、CARE(community aware random walk for network embedding)[29]和 GNE(galaxy network embedding)30]等无监督学习算法。

进一步将本小节中介绍的算法进行综合比较,总结如表3所示。

2.3 属性信息辅助的网络表示学习

2.3.1 基于矩阵分解的方法

Liu等人在DeepWalk算法基础之上进行改进,提出了TADW(text-associated DeepWalk)[31]算法。该算法将节点的属性信息加入到矩阵分解的过程中,主要思想如图2所示。其目标是对矩阵M(M=(A+A2)/2)进行矩阵分解,使得M≈WTHT,其中T矩阵中包含了节点的属性信息。对应的目标函数如式(1)所示,最小化目标函数并更新矩阵W和H。节点最终的向量表示由矩阵W和HT对应的列向量拼接得到。DMF(discriminative matrix factorization)[32]对 TADW算法进一步作了改进,通过增加一线性分类器进行有监督学习,从而使学得的表征向量更具区别力。

Fig.2 Framework of TADW model(from Ref.[31])图2 TADW模型框架(来源于文献[31])

AANE(accelerated attributed network embedding)[33]模型同样基于矩阵分解将网络中的拓扑信息以及属性信息整合到一起。特别地,该模型将优化过程分解成了多个子问题进行并行工作,通过这种方法大大提升了模型的工作效率。Li等人引入矩阵摄动理论,进一步设计了能够适应网络动态变化的表示学习模型 DANE(dynamic attributed network embedding)[34],在网络拓扑结构和属性信息产生变化后,该模型能够在较短时间内对网络中的节点生成新的向量表示。

2.3.2 基于神经网络的方法

Li等人提出了一深度学习模型VAE(variational AutoEncoder)[35]来学习网络中节点的嵌入。该模型整合了doc2vec[36]和深度自编码器,将属性信息和拓扑信息进行整合并映射到同一语义空间中。其中doc2vec用于将属性信息向量化,深度自编码器用于整合向量化的属性信息和拓扑信息(邻接矩阵)。特别地,在编码区的最后一层会产生两种信息新的分布,以提取两者的主要特征。最终,模型将自编码器的中间层作为节点的向量表示。学得的表征向量同时捕获了节点在原网络中的属性信息以及高度非线性的拓扑信息。

Table 3 Comprehensive comparison of algorithms assisted by community information表3 社区信息辅助的算法综合比较

GraphSAGE(graph sample and aggregate)[37]在传统图卷积神经网络上进行了延伸,通过汇聚多阶邻居节点的信息来生成向量表示。特别地,该模型对于不同阶层的邻居节点训练不同的聚合器,并可通过后续的任务进行有监督的学习。最终学得的节点的向量表示一方面汇聚了多阶邻居节点的属性信息,另一方面也捕获了原网络中的拓扑信息。EP(embedding propagation)[38]算法同样是通过汇聚邻居信息来进行表示学习。不同之处在于,EP算法属于无监督学习,且独立学习每种不同类型标签的嵌入。

Tu等人指出现实网络中节点与不同邻居节点交互时所展现的主题会有所不同,进而设计了CANE(context-aware network embedding)[39]算法。该算法通过一深度架构将节点的属性信息和拓扑信息映射到同一语义空间中,并引入注意力机制来捕获节点与不同邻居交互时所侧重的主题。

2.3.3 基于自定义损失函数的方法

Xu等人认为现实世界网络中的链接信息和属性信息大都是部分可见的,由此提出了NRCL(noiseresilient representation consensus learning)[40]算法为具有部分链接和属性信息的网络学习向量表示,并应用到链接预测任务中。该模型将网络中的节点分为三类,分别为具有连边的节点集、具有属性信息的节点集以及同时具有这两种信息的节点集,网络中的节点属于这三类中的一类或多类。对前两类节点集分别进行建模,然后通过第三类节点集相联系,由此使得链接信息与属性信息相互补充,学得的向量表示具有高鲁棒性。

进一步将本小节中介绍的算法进行综合比较,总结如表4所示。

2.4 多类别信息辅助的网络表示学习

以上介绍的表示学习模型都只结合了一种异质信息,并不适用于多种异质信息的有效融合。而如何有效地融合和平衡多种异质信息是一个极具挑战的任务。已有一些研究者针对此问题各自提出了不同的解决方法。在下文中,将对这些研究成果分别进行详细介绍。

2.4.1 基于神经网络的方法

Fig.3 Framework ofASNE model(from Ref.[41])图3 ASNE模型框架(来源于文献[41])

Table 4 Comprehensive comparison on algorithms assisted by attribute information表4 属性信息辅助的算法综合比较

ASNE(attributed social network embedding)[41]运用深层神经网络对不同类型的节点信息(离散+连续)进行综合的学习,模型的整体架构如图3所示。首先,该模型对节点的离散属性(例如id)进行onehot编码,对于连续属性(例如文本)进行TF-IDF(term frequency-inverse document frequency)编码;然后,将编码生成的向量输入到嵌入层(由两个全连接层组成)进行降维,Wid和Watt分别对应id和属性信息的全连接层中的权重矩阵;之后将降维后的向量进行拼接,并输入到隐含层中进行非线性映射;最后,在输出层上计算出目标节点与其他节点连接的概率,由此将拓扑信息与多种类别的属性信息联系起来。总的来说,该模型通过深层神经网络建模不同类型信息之间的复杂的关联关系,在后续的节点分类和链接预测的任务中表现优越。

Jacobs等人提出了一种半监督模型SEANO(semisupervised embedding in attributed networks with outliers)[42]为具有部分标签和属性信息的网络学习节点的向量表示。该模型通过深度学习架构将节点的拓扑结构信息、属性信息和标签信息关联起来。模型的整体框架如图4所示,它包含了两个输入层和两个输出层,中间通过非线性映射层将异构信息相连。其中,输入层中包含了目标节点和其邻居节点的属性信息向量;左侧的输出层作为该模型的有监督学习部分,通过带有标签信息的节点进行训练;右侧的输出层作为模型的无监督学习部分,用于捕获节点在原网络中的拓扑信息。最后,将模型嵌入层中的向量作为节点最终的向量表示。

Fig.4 Framework of SEANO model(from Ref.[42])图4 SEANO模型框架(来源于文献[42])

2.4.2 综合框架方法

Huang等人提出了一种半监督的综合框架LANE(label informed attributed network embedding)[43]来汇聚多种异构信息。该模型通过将标签信息、属性信息和拓扑信息映射到相同的语义空间中,并寻找三者之间的关联关系来获得节点的向量表示。其中,对于拓扑信息和属性信息的嵌入主要运用了谱方法;对于标签信息的嵌入,主要根据同质性原则,使具有相同标签的节点在向量空间中距离相近。最后通过相关投影将学得的这三类向量嵌入到一个新的维度空间中,最大化三者在新空间上的关联性,进而得出最终的向量表示。

将本小节介绍的算法及带有辅助信息的网络表示学习方法进行综合对比,从算法的理论基础、有无监督、时间复杂性、评测任务等方面进行比较,分别如表5和表6所示。

2.5 面向异构网络的表示学习

2.5.1 基于自定义损失函数的方法

Jacob等人在文献[44]中提出了一种半监督表示学习算法LSHM(latent space heterogeneous model),用于对异构网络中的不同类型的节点学习向量表示。该算法同时对相同类型和不同类型的节点进行平滑性约束,并将所有类型的节点映射到同一潜在空间中。此外,对于每类节点,都会进一步学习一分类函数,并对带标签的节点进行预测。最终学得的向量表示同时包含了节点在原网络中的拓扑信息和标签信息。

Table 5 Comprehensive comparison on algorithms assisted by polytype information表5 多类型信息辅助的算法综合比较

Table 6 Comparison of NRL algorithms in terms of theoretical foundation表6 网络表示学习算法的理论基础比较

PTE(predictive text embedding)[45]算法在 LINE算法的基础上进行了改进,用于在异构文本网络中学习文本的嵌入。异构文本网络中包含了单词、文档和标签这三种类型的节点。在建模过程中,首先将异构文本网络划分成了三个子网络,分别为“单词-单词”“单词-文本”和“单词-标签”子网络。然后采用改进后的LINE算法分别对这些子网络建模,捕获不同类型信息之间的相似性。最终文本的向量表示由相应单词的向量表示取平均得到。

以上介绍的算法都是将异构数据拆分成两两交互的类型分别进行建模,这种方法的缺点就是无法捕获一些强类型对象(strongly-typed objects)产生的共同作用效果。Gui等人提出了HEBE(hyperedgebased embedding)[46]算法用于解决这个问题。该算法将一类事件产生的交互集合(即强类型对象)看作一个超边,并将每个超边作为一个整体进行建模。在建模过程中,将超边中的一特定类型的节点设定为预测目标,并用该超边中剩余节点对该目标节点进行预测,从而捕获了基于事件的相似性关系。

2.5.2 基于矩阵分解的方法

CMF(coordinate matrix factorization)[47]是一种基于矩阵分解的异构网络表示学习算法,用于同时学习维基百科中实体、类别和词的向量表示。该算法通过矩阵分解的方式分别建立实体之间、实体与类别之间、实体与词之间的联系,总的损失函数如式(2)所示。通过这种方式,一方面可以克服网络稀疏问题,另一方面也方便增加更多的关系矩阵,具有可扩展性。

2.5.3 基于神经网络的方法

metapath2vec[48]算法基于随机游走和skip-gram模型来学习异构网络中节点的向量表示。该算法设计了基于元路径的随机游走方法,通过定义的对称的meta-path来控制随机游走过程。产生的节点序列可以直接输入到skip-gram模型中进行训练,不区分节点的类别。作者将skip-gram进一步作了改进,改进后的模型metapath2vec++使得不同类型的节点能够在输出层上被区别开来。Zhang等人在文献[49]中指出了基于mata-path的方法只能严格按照设定的路径类型选取节点建立联系,并不能捕获那些距离较远的节点间的相似性,而且只有一少部分节点符合设定的元路径,从而导致在训练过程中数据的稀疏。由此,作者设计一种基于元图(metagraph)的方法来引导随机游走的过程。由于每个元图中包含了多种元路径,因而在随机游走过程中能够实现更加灵活的匹配,从而捕获更加复杂的节点关系。

在文献[50]中,作者提出了一种无监督的异构网络表示学习框架AspEm(embedding learning by aspects),为异构节点学习汇聚多方面信息的向量表示。如图5所示,(a)图例可以分解成(b)中两个方面的子图。文中设计了一种不兼容信息度量方法来提取这种多方面子图。该模型进一步将不同子图通过skip-gram分别进行训练,最后将同一节点的来自不同子图的向量表示整合在一起。

Fig.5 Schema and 2 aspects of HIN(from Ref.[50])图5 异构网络的图例和两个方面(来源于文献[50])

Wang等人提出了SHINE(signed heterogeneous information network embedding)[51]模型用于预测异构情感网络中用户的潜在情感倾向。文中通过建立情感网络、社会网络和资料网络这三大网络来汇聚异构信息,并通过三个深度自编码器分别对三个网络进行信息嵌入,之后将节点在不同网络下得到的向量表示进行汇聚,产生节点最终的向量表示。最后可通过计算用户表征向量之间的相似性来进行情感预测。该模型充分借助异构信息,有效地解决了冷启动问题,进而可有效应用到链接预测和推荐任务中。

2.5.4 综合框架方法

为了整合异构网络中不同类型的信息,Chang等人设计了一深度架构HNE(heterogeneous network embedding)[52],将不同类型的信息映射到相同的语义空间中。以包含文本和图片信息的异构网络为例,该模型对不同类型的节点采用不同的处理方法(图片-卷积神经网络,文本-全连接神经网络),并将它们映射到同一潜在空间中。进一步地,该模型根据原网络中的拓扑信息对不同类型的节点对(“图片-图片”“图片-文本”和“文本-文本”)进行相似性建模。由此也证明了不同模态的数据类型能够通过这种深层架构在同一潜在空间中建立联系。

Fu等人提出了HIN2Vec(heterogeneous information network to vector)[53]模型,基于神经网络同时学习异构网络中的节点和元路径的向量表示。与上文介绍的基于metapath的算法不同,HIN2Vec是以完全随机游走的方式选取训练集,并通过预测相邻节点间的特定关系来建模异构网络中节点的关联关系。这种多任务学习方法使得表示学习过程得以高效进行。

3 常用数据集

本章主要介绍上述论文实验中常用的数据集,包括数据集的来源(Link)、节点数(|V|)、边数(|E|)、标签类别数(|y|)、是否有属性信息(attributes,Att.)等。同时对这些数据集进行分类,类别包括:社交网络(social network)、引文网络(citation network)、合著网络(collaboration network)、网页链接网络(Webpage network)和生物学网络(biological network)等。将数据集的信息总结如表7所示。

4 总结与展望

本文为融合异质信息的网络表示学习算法设计了一个统一的分类框架,并对一些代表性算法进行了概括介绍和分类对比。总的来说,复杂网络中丰富的信息越来越充分地得到挖掘和运用,这也使模型学得的表征向量更能反映网络的真实形态。随着社会发展,现实世界网络会变得更加复杂,如何有效地汇聚不同类型的信息来辅助表征向量的学习,使其更具推理能力和区别力,同时降低整个模型的复杂度是今后仍需研究的开放性问题。对此领域未来可能的研究方向做了如下总结:

(1)适应大规模复杂网络。现有的融合异质信息的网络表示学习算法仅适用于小规模数据网络,难以适用到现实应用场景中。因此,设计具有可扩展性的算法值得未来进行深入研究。

(2)适应网络的动态变化。现实网络具有动态性,节点、链接关系以及复杂的异质信息都会不断发生变化,而现有的网络表示学习算法大都不适用于在线更新。设计能够有效融合异质信息的在线网络表示算法具有很高的实用价值。

Table 7 Data sets and descriptions表7 数据集及其介绍

(3)寻找更多的应用场景。目前网络表示学习的应用场景相对局限,主要包括节点分类、聚类、社区发现、链接预测等。挖掘出更多复杂网络中的应用场景,并设计针对特定任务的网络表示学习算法是未来值得探索的方向。

猜你喜欢
异质异构向量
ETC拓展应用场景下的多源异构交易系统
试论同课异构之“同”与“异”
向量的分解
基于异质分组的信息技术差异化教学
《拉奥孔》中“诗画异质”论折射的西方写实主义传统
“对赌”语境下异质股东间及其与债权人间的利益平衡
聚焦“向量与三角”创新题
多源异构数据整合系统在医疗大数据中的研究
吴健:多元异构的数字敦煌
向量垂直在解析几何中的应用