目录
3.1 Node Content Transformation
3.2 Intra-metapath Aggregation
3.3 Inter-metapath Aggregation
3.4 Metapath Instance Encoders
1 背景
虽然GNN获取节点嵌入的效果不错,但是大多数基于GNN的模型都假设输入是一个只有一个节点类型和一个边缘类型的同构图。大多数现实世界的图由不同类型的节点和边组成,这些节点和边与不同特征空间中的属性相关。编码异构图对GNN是个挑战。
现有的大多数异构图嵌入方法都是基于元路径的思想。元路径是在网络模式上定义的节点类型和边缘类型的有序序列,它描述了所涉及的节点类型之间的复合关系。例如,在一个由authors, papers, and venues组成的学者网络中,Author-Paper-Author (APA) and Author-Paper-Venue-Paper-Author(APVPA) 是描述作者之间两种不同关系的元路径。APA元路径将两位共同作者联系在一起,而APVPA元路径将两位在同一地点发表论文的作者联系在一起,因此可以将元路径视为两个节点之间的高阶近似。
尽管这些基于元路径的嵌入方法在节点分类和链路预测等任务上优于传统的网络嵌入方法,但它们仍然存在以下至少一个局限性。(1)该模型没有利用节点内容特征,因此在具有丰富节点内容特征的异构图上很少表现良好。(2)模型只考虑两个末端节点,丢弃了元路径上的所有中间节点,导致信息丢失。(3)模型依赖单一元路径嵌入异构图。因此,该模型需要手动选择元路径,并且会丢失来自其他元路径的信息,从而导致性能次优
现有模型通常在异构图中定义多个元路径来捕获复合关系并指导邻居选择。然而,这些模型要么忽略节点内容特征,要么丢弃元路径中的中间节点,要么只考虑一个元路径。
2 创新点
MAGNN采用了三个主要组件,即节点内容转换封装输入节点属性,元路径内聚合合并中间语义节点,元路径间聚合合并来自多个元路径的消息。
MAGNN首先应用类型特定的线性变换将异构节点属性(不同节点类型的维度可能不相等)投影到相同的潜在向量空间。接下来,MAGNN对每个元路径应用带有注意机制的内部元路径聚合。在此元路径内部聚合期间,每个目标节点从连接该节点及其基于元路径的邻居的元路径实例中提取并组合信息。通过这种方式,MAGNN从邻居节点和中间的元路径上下文捕获异构图的结构和语义信息。在元路径内聚合之后,MAGNN进一步利用注意机制进行元路径间聚合,将多个元路径获得的潜在向量融合到最终的节点嵌入中。通过整合多个元路径,模型可以学习到异构图中根深蒂固的综合语义。
3 方法
3.1 Node Content Transformation
不同的节点类型可能具有不相等的特征向量维数。即使它们恰好是相同的维度,它们也可能位于不同的特征空间中。
在将节点向量馈送到MAGNN之前,通过将特征向量投影到相同的潜在因素空间中,对每种类型的节点应用特定类型的线性变换。
3.2 Intra-metapath Aggregation
给定一个元路径P,元路径内聚合层通过对P的元路径实例进行编码,学习嵌入在目标节点、基于元路径的邻居以及它们之间的上下文中的结构和语义信息。
P(v,u)是连接目标节点v和基于元路径的邻居$u\in N_{v}^{P}$的元路径实例,进一步定义P(v,u)的中间节点为{mP(v,u)} = P(v,u) \ {u,v},元路径内部聚合使用特殊的元路径实例编码器将元路径实例上的所有节点特征转换为单个向量
简单起见,这里我们使用P (v,u)来表示单个实例,尽管可能有多个实例连接这两个节点。
将元路径实例编码为向量表示后,采用图注意层[28]对目标节点v相关的P元路径实例进行加权求和,关键思想是不同的元路径实例对目标节点表示的贡献程度不同。可以通过学习每个元路径实例的标准化重要性权重αPvu来建模,然后对所有实例进行加权求和
也可以使用多头注意力机制,然后进行每头的结果进行拼接。
A节点类型的元路径的集合PA = {P1, P2,…, PM},MAGNN的元路径内聚合生成目标节点的M个特定于元路径的向量表示
可以解释为节点v的Pi元路径实例的总结,
3.3 Inter-metapath Aggregation
现在对于节点类型A,有|VA|潜在向量集:
一种直接的元路径间聚合方法是取这些节点向量的元素均值。扩展了这种方法,利用注意机制为不同的元路径分配不同的权重。
首先,通过对所有节点v∈VA的变换后的元路径特定节点向量求平均值来总结每个元路径Pi∈PA
然后使用注意力机制混合特定元路径下的节点v的特征向量:
βPi被解释为元路径Pi对A类节点的相对重要性。使用这个注意力系数对节点v的所有针对特定元路径的向量进行加权求和。
最后,MAGNN采用附加的非线性函数线性变换将节点嵌入投影到具有期望输出维数的向量空间中
这个投影是特定于任务的。它可以被理解为用于节点分类的线性分类器,也可以被看作是用于链路预测的具有节点相似度量的空间的投影。
3.4 Metapath Instance Encoders
Mean encoder:取元路径实例P (v,u)上节点向量的元素均值
Linear encoder:上述取均值后再经过一个线性变换。
Relational rotation encoder:
上面介绍的均值和线性编码器基本上将元路径实例视为一个集合,因此忽略了嵌入在元路径的顺序结构中的信息。
RotatE为这类知识建模提供了一种方法。给定P (v,u) = (t0,t1,…,tn), t0 = u,tn = v,设Ri为节点ti−1与节点ti之间的关系,设Ri为Ri的关系向量,关系旋转编码器表示为:
h‘ ti和ri都是复向量,⊙是元素积。我们可以很容易地将d '维的实向量解释为d ' /2维的复向量,方法是将向量的前半部分作为实部,后半部分作为虚部。
3.5 Training
对于半监督学习,在一小部分标记节点的引导下,通过反向传播和梯度下降最小化交叉熵来优化模型权重,从而学习到异构图的有意义的节点嵌入。
对于无监督学习,通过负采样来最小化损失函数