HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

论文题目:Heterogeneous Graph Attention Network (HAN)异构图注意力网络

作者:北京邮电大学Xiao Wang,Houye Ji等人

来源:WWW2019

论文链接:https://arxiv.org/pdf/1903.07293.pdf

tensorflow版代码Github链接:https://github.com/Jhy1993/HAN

介绍视频:https://www.bilibili.com/video/av53418944/

摘要

最近,深度学习中最令人兴奋的进步之一是注意机制,它的巨大潜力在各个领域。

本文首先提出了一种基于层次注意力的异构图神经网络,包括节点级注意力和语义级注意力。具体地说:

  • 节点级注意力旨在学习节点与其基于元路径的邻居之间的重要性
  • 语义级注意力能够学习不同元路径的重要性

通过从节点级和语义级两个层次上学习重要性,可以充分考虑节点和元路径的重要性。该模型通过对基于元路径的邻域特征进行分层聚合,生成节点嵌入。在三个真实世界的异质图上的大量实验结果不仅显示了我们所提出的模型比现有的模型更优越的性能,而且也显示了它潜在的良好的图分析的可解释性。

1、相关介绍

背景

现实世界中的数据通常与图表结构(如社交网络、引文网络和万维网)结合在一起。图形神经网络(GNN)作为一种强大的图形数据深度表示学习方法,在网络分析方面表现出了优异的性能,引起了广泛的研究兴趣。例如,[10,20,24]利用深度神经网络来学习基于节点特征和图结构的节点表示。一些文献[6,14,18]将卷积运算推广到图上,提出了图卷积网络。深度学习的一个最新研究趋势是注意机制,它处理可变大小的数据,并鼓励模型关注数据中最显著的部分。它在深层神经网络框架中的有效性得到了证明,并被广泛应用于文本分析[1]、知识图[25]和图像处理[38]等领域。图注意网络(GAT)[35]是一种新颖的卷积型图神经网络,它利用了只包含一类节点或链接的齐次图的注意机制。

尽管注意机制在深度学习中取得了成功,但在异构图的图神经网络框架中却没有得到考虑。事实上,现实世界中的图通常带有多种类型的节点和边,也被广泛称为异构信息网络(HIN)[28]。为了方便起见,本文统一称之为异构图。由于异构图包含的信息更加全面,语义更加丰富,因此在许多数据挖掘任务中得到了广泛的应用。元路径[32]是连接两个对象的复合关系,是一种广泛使用的语义捕获结构。根据元路径的不同,异构图中节点之间的关系可以有不同的语义。由于异构图形的复杂性,传统的图形神经网络不能直接应用于异构图形。基于以上分析,在设计具有注意机制的异构图神经网络体系结构时,需要解决以下新的需求。

以 Graph Convolutional Network,Graph Attention Network 为代表的图神经网络已经引起了学术界与工业界的广泛关注。然而,目前的图神经网络主要针对同质图(节点类型和边类型单一)设计,但真实世界中的图大部分都可以很自然地建模为异质图(多种类型的节点和边)。如图 1 所示,IMDB 数据中包含三种类型的节点 Actor、Movie 和 Director,两种类型的边 Actor-Movie 和 Movie-Director。

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

相对于同质图神经网络,异质图神经网络具有更强的现实意义可以更好的满足工业界需求。如阿里巴巴正在建设亿级节点十亿级边的异质图神经网络平台 AliGraph 来满足整个阿里集团各种商业化场景需求。因此亟需展开面向异质图的图神经网络模型研究,而异质图的异质性却又给设计图神经网络带来了巨大的挑战。

元路径 meta-path


在异构图中,两个节点可以通过不同的语义路径连接,称为元路径(meta-path),如图1中,Movie-Actor-Movie(MAM)和Movie-Year-Movie (MYM)都是不同的meta-path。不同的meta-path有不同的语义。如图1中, meta-path Movie-Actor-Movie (MAM)表示电影的演员相同, meta-path Movie-Director-Movie (MDM) 表示电影的导演相同。

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

异构图和同构图

 

  • Heterogeneous Graph(异构图):异构图是一种特殊的异构信息网络,包含了多种类型的边和节点。例如,图1中的演员节点的特征可能包括性别,年龄和国籍,而电影节点的特征可能包括情节,演员等。边的不同类型可以体现在电影与导演的拍摄关系演员与电影的角色扮演关系。
  • Homogeneous Graph(同构图):同构图的节点类型和边的类型单一。例如,引文网络中的节点都是文档。

在设计异质图神经网络的时候,从异质图的复杂结构出发,需要满足下面三个要求:

  1. 图的异质性:考虑不同节点和不同关系的差异。不同类型节点有其各自的特征,节点的特征空间也不尽相同。如何处理不同类型的节点并同时保留各自的特征是设计异质图神经网络时迫切需要解决的问题;
  2. 语义级别注意力:学习meta-path的重要性并融合语义信息。异构图涉及到不同的有意义和复杂的语义信息,这些信息通常由meta-path来反映,对于某个具体任务,不同meta-path表达的语义不同,因此对任务的贡献也不同。例如,以IMDB数据集为例,电影《终结者》要么通过Movie-Actor-Movie(MAM)的方式与《终结者2》连接(主演相同),要么通过Movie-Year-Movie (MYM) 的方式与《Irdyvia》连接(均于1984年拍摄)。在确定了电影《终结者》的类型时,连接方式MAM比MYM更有意义。平等地对待不同的meta-path是不现实的,它会削弱一些有用的meta-path所提供的信息。因此,如何设计针对meta-path的注意力机制是异质图神经网络中的一个基本问题;
  3. 节点级别注意力:学习基于meta-path的节点邻居的重要性。在异构图中,节点可以通过各种类型的关系(如meta-path)连接。给定meta-path,每个节点都有很多基于meta-path的邻居。如何区分邻居间的细微差别,选择一些信息量大的邻居是有必要的。对于每个节点,节点级注意力的目的是学习基于meta-path的邻居的重要性,并为它们分配不同的注意力值。仍然以IMDB为例,当使用meta-path为 Movie-Director-Moive,终结者将连接到《终结者2》(二者导演相同)。为了更好地确定《终结者》科幻电影的类型,模型应该更多地关注《终结者2》,而不是《泰坦尼克号》,因此,如何设计一个模型来发现邻居们之间的细微差别并正确地学习他们的权重将是一个值得研究的问题。

本文提出了一种同时考虑节点级和语义级注意的异构图注意网络HAN。特别是,给定输入的节点特征,我们使用类型特定的转换矩阵将不同类型的节点特征投影到同一空间。然后,节点级注意能够学习节点与其基于元路径的邻居之间的注意值,而语义级注意旨在学习异构图中特定任务的不同元路径的注意值。基于这两个层次的学习注意值,我们的模型能够以层次化的方式得到邻域和多个元路径的最优组合,使得学习节点嵌入能够更好地捕捉到异构图中复杂的结构和丰富的语义信息。在此之后,整个模型可以以端到端的方式进行优化,我们的工作总结如下:•据我们所知,这是基于注意机制的异构图神经网络研究的第一次尝试,我们的工作使图神经网络能够直接应用于异构图,进一步促进了异构图的应用节点级和语义级注意力。由于这种层次性的关注,被提议的HAN可以同时考虑节点和元路径的重要性。此外,我们的模型是高效的,对于基于元路径的结点对的数目具有线性复杂度,可以应用于大规模的异构图。通过与现有模型的比较,证明了该模型的优越性。更重要的是,通过分析层次注意机制,提出的HAN证明了它对异质图分析具有潜在的良好解释能力。

2、相关工作

图神经网络

图神经网络(GNNs)旨在扩展深度神经网络来处理任意图结构的数据。李玉佳等。[20] 提出了一种包含门控递归单元的跨节点信息传播模型。近年来,在图结构数据上出现了大量的广义卷积运算。图卷积神经工作一般分为两类,即谱域和非谱域。一方面,谱方法处理图的谱表示。琼·布鲁纳等人。[2] 通过寻找相应的fourier基,将卷积推广到一般图。Michaël等人。〔6〕利用K阶切比雪夫多项式在谱域中逼*滑滤波器。Kipfet等人。〔18〕提出了一种谱图卷积网络,它是通过谱图卷积的一阶近似来设计一个图卷积网络,另一方面,我们也有非谱方法,它直接在图上定义卷积,在空间上的近邻组上操作。Hamilton等人。[14] 介绍GraphSAGE,它在固定大小的节点邻居上执行基于神经网络的聚合器。它可以学习一个函数,该函数通过聚集来自节点Zs局部邻域的特征来生成嵌入。注意力 机制,如自我注意[34]和软注意[1],已经成为深度学习中最有影响力的机制之一。已有的一些工作介绍了基于图的应用的注意机制,如建议[15,16],受注意机制的启发,提出了图注意网络[35]来学习节点与其邻域之间的重要性,并融合邻域进行节点分类。然而,上述图神经网络不能处理各种类型的节点和边,只能应用于同构图。

网络嵌入

网络嵌入,即网络表示学习(NRL),是将网络嵌入到一个低维空间中,同时保留网络的结构和性质,从而将学习到的嵌入应用到下游网络任务中。例如,基于随机游走的方法[12,23]、基于深神经网络的方法[36]、基于矩阵分解的方法[22,37]和其他方法,例如LINE[33]。然而,所有这些算法都是针对齐次图提出的。一些详细的评论可以在[5,11]中找到。异构图嵌入主要关注基于元路径的结构信息的保存。

  • ESim[26]接受用户定义的元路径作为指导,以便在用户首选的相似性搜索嵌入空间中学习顶点向量。即使ESim可以利用多个元路径,它也无法了解元路径的重要性。为了获得最佳性能,ESim需要进行网格搜索,以确定hmeta路径的最优权值。很难找到特定任务的最佳组合。
  • Metapath2vec[7]设计了一种基于元路径的随机游走,并利用skip-gram(跳转图)进行异构图嵌入。但是,metapath2vec只能使用一个meta路径,可能会忽略一些有用的信息。与metapath2vec类似,本文[27]提出了一种类型约束策略来过滤节点序列并捕获异构图中反映的复杂语义。 
  • HIN2Vec[9]执行多个预测训练任务,同时学习节点和元路径的潜在向量。
  • Chen等人。〔3〕提出了一种投影度量嵌入模型,称为PME,它可以通过欧氏距离来保持节点的邻近性。PME将不同类型的节点投影到同一关系空间中,进行异构链路预测。
  • 为了研究异构图的综合描述问题,Chen等。[29]提出了一种通过边缘表示嵌入异构图的HEER算法。
  • Fan等人。(8)提出了一种嵌入模型Meta AgRAP2VEC,其中最大限度地保留了结构和语义用于恶意软件检测。             
  • Sun等人。[30]提出了基于元图的网络嵌入模型,该模型同时考虑了元图中所有元信息的隐藏关系。

综上所述,这些算法都没有考虑异构图表示学习中的注意机制。

贡献

  1. 第一次基于注意力机制的异构图神经网络研究。
  2. 提出了一种新的基于注意力机制的异质图神经网络 Heterogeneous Graph Attention Network(HAN),可以广泛地应用于异质图分析。HAN模型是高效的,相对于meta-path节点对的数目具有线性复杂度,可以应用于大规模异构图。
  3. 进行了广泛的实验,以评估HAN模型的性能。结果表明,该模型与现有模型相比具有优越性。通过分析这种分层的注意力机制,证明了HAN对异质图分析具有潜在地良好的解释能力。

3、HAN模型

HAN模型遵循一个层次注意力结构:节点级注意力→语义级注意力。图2展示了HAN的整个框架。首先,我们提出节点级注意力来学习基于元路径的邻域的权值,并对其进行聚合得到语义特定的节点嵌入,然后,HAN通过语义级注意力来区分元路径的不同,从而得到特定任务的语义特定的节点嵌入的最优加权组合。

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

  • 图2是HAN整个框架的示意图
  • 图2-a(节点级注意力):所有类型的节点都被投影到一个统一的特征空间中,通过节点级的注意力机制来学习基于meta-path的邻居节点的权重并将它们进行聚合得到特定语义的节点embedding。
  • 图2-b(语义级注意力):联合学习每个meta-path的权重,并通过语义级注意力融合前面得到的语义特定的节点embedding。
  • 图2-c :计算损失和对提出的HAN进行端到端的优化。

文中的一些相关定义如下: 

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019 

节点级别注意力

给定某条元路径,我们可以利用节点级别注意力来学习特定语义下(Semantic-specific)的节点表示。我们首先将不同类型的节点属性通过投影矩阵变换到统一的属性空间。

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

其中,HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019是投影矩阵,HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019分别是投影前后的节点特征。这里基于自注意力机制(self-attention)设计了节点级别注意力。具体来说,节点级别注意力将节点对的表示拼接起来并利用注意力向量来学习节点与其邻居间的重要性。

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019 

其中,HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019是节点对 (i, j) 的注意力权重。注意这里的注意力是非对称的,这也符合图数据的实际特性。最后,通过节点级别的聚合操作(如图 3 (a) 所示)来学习 Semantic-specific 的节点表示。每个节点的表示都是由其邻居表示加权融合得到。 

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

其中,HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019是节点在某条元路径下的表示。给定某条元路径,节点级别注意力可以学习到节点在某个语义下的表示。但是,在实际异质图中往往存在多条不同语义的元路径,单条元路径只能反映节点某一方面的信息。为了全面的描述节点,我们需要融合多条元路径的语义信息。

为了使训练过程更稳定,使用multi-head机制,即重复节点级attention K次,并将所学到的embeddings进行连接,形成特定语义的embedding:

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

给定meta-path集合{Φ0,Φ1,…,ΦP},在进行节点级别attention之后,可以得到P组特定语义的节点embedding{Z1,Z2,...,Zp}。
HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

语义级别注意力

给定元路径集合,节点级别注意力用来学习到不同语义下的节点表示。进一步,我们可以利用语义级别注意力来学习语义的重要性并融合多个语义下的节点表示。语义级别注意力的形式化描述如下:

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

其中,HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019是各个元路径的注意力权重。具体来说,我们利用单层神经网络和语义级别注意力向量来学习各个语义(元路径)的重要性并通过 softmax 来进行归一化。

为了学到每一个meta-path的重要性,使用一个线性转换(文中使用一层MLP)来转换特点语义的embedding。

文中将学到的特定语义的embeddings度量为使用一个语义级的attention向量q转换了的embedding的相似度:

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

通过对多个语义进行加权融合(融合过程如图 3 (b) 所示),可以得到最终的节点表示。需要注意的是,这里的元路径权重是针对特定任务优化的。不同任务需要的语义信息不尽相同,元路径的加权组合形式也会有所差异。

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

最后,我们基于半监督的分类 loss 来优化整个模型。

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

  • C表示分类器的参数
  • y表示有标签的节点的索引
  • Y表示有标签的节点的标签
  • Z表示有标签的节点的embedding 

整个算法模型的流程如下:

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019 

4、实验结果


本文在三个数据集上做了大量充分的实验(包括节点分类,节点聚类,可视化)来验证模型的有效性。同时为了验证节点级别和语义级别的作用,作者分别去除节点和语义级别助理并进行实验。最后,作者通过对节点和语义级别的注意力机制进行了分析来说明 HAN 的可解释性。

实验中所用的三个数据集的统计信息如下:

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

节点分类:利用k=5的KNN分类器

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

节点聚类:使用k-means聚类算法 

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019 

表 3 和表 4 分别为节点分类和聚类实验,可以看出:相对于当前最优算法,本文所提出的模型表现更好。同时,去除节点级别和语义级别注意力后,模型的效果有不同程度的降低。这验证了节点级别注意力和语义级别注意力的有效性。

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019 

我们还进一步分析了层次注意力的合理性。节点级别和语义级别注意力分析分别如图 4 和图 5 所示。可以看出:节点级别注意力赋予了同类型的邻居更高的权重。在语义级别,对较为重要的元路径,也就是该条元路径在聚类任务上具有较大的 NMI 值,HAN 会赋予他们相应较大的权重,因此 HAN 可以自动选取较为重要的节点邻居及元路径。

HAN - Heterogeneous Graph Attention Network 异构图注意力网络 WWW2019

图 6 展示了各个算法可视化结果。我们可以清楚地看到:HAN 所学习到的节点表示具有更强的表示能力,可以清晰的将不同领域的作者分为 4 类。

5、总结


异质图在真实世界无处不在,异质图的分析也是数据挖掘的热门方向。作者设计了一种异质图神经网络,同时在节点和语义级别利用注意力机制来对邻居信息和语义信息进行加权融合,进而学习到更加细致全面的节点表示。同时,通过对两层的注意力机制进行分析,所提模型具有较好的可解释性。

现实生活中,很多场景均可以被建模为异质图,如淘宝网就可以建模为用户,商品和商家交互的异质图。本文所提出的异质图注意力网络 HAN 具有广泛的适用性,可以根据不同场景(如商品推荐和异常账户检测)的需求设计不同的损失函数来学习节点表示。

按照本文的思路,未来可以进一步尝试利用 meta-graph 或者 motif 来抽取不同的结构信息或者针对不同场景的差异化需求设计相应的图神经网络。更多关于异质图分析的论文及相关代码数据见 www.shichuan.org