论文阅读 Estimating Node Importance in Knowledge Graphs Using Graph Neural Networks
论文阅读 Estimating Node Importance in Knowledge Graphs Using Graph Neural Networks
摘要
如何评估知识图(KG)中节点的重要性?KG是一个多关系图,已被证明在许多任务上都有价值,包括问答和语义搜索。本文提出了一种解决KGs中节点重要性评估问题的GENI方法,该方法可以用于项目推荐和资源分配等下游应用。虽然已经有了一些方法来解决一般图中的点重要性评估问题,但它们没有充分利用KGs中的可用信息,或者缺乏建模实体之间复杂关系及其重要性所需的灵活性。为了解决这些限制,我们探索了有监督的机器学习算法。特别是,在图形神经网络(GNNs)最新进展的基础上,我们开发了GENI,一种基于GNN的方法,用于处理与预测KG中节点重要性这一特殊挑战。该方法通过谓词感知注意机制和灵活的中心度调整,实现了重要度得分的聚合,而不是节点嵌入的聚合。在模型比较中,GENI的[email protected]比最新水平高5-17%。
简介
知识图谱相对于一般图包含更多异构的关系信息编码,比如边可表述多种属性而不是单一的属性。
评估点的重要性在推荐、查询、资源分配中的重要性。
评估点问题描述:已知点的重要性评分和KGs中的辅助信息(如边的谓词类型),如何描述点的重要性。
已有方法:
1、PageRank:忽略了点的重要性评分
2、Personalized PageRank:PPR考虑点重要性评分但忽略了边的类型。
3、HAR:考虑点评分和图的拓扑性来区分谓词的类型
现有模型不可训练、无可优化参数,并且固定模型由点重要性传播的先验决定。
GNN方法则是侧重于通过聚合嵌入进行图表示学习,没有解决KGs中点重要性评估问题。包括建立相邻节点之间的重要性关系、不同实体之间的评估、结合先验。
GENI:GNN for Estimating Node Importance,GENI使用基于attention的GNN来进行谓词感知的重要性评分聚合来获得相邻点重要性的关系。GENI可以根据节点的中心性调整进行灵活的评分调整。
准备工作
–问题定义
知识图谱的边和点都有多个类别,部分点给出了重要性评分(如电影的观看次数)。目标是找到点到评分的映射。给定某类点评分预测该类点评分叫in-domain,给定某类点评分预测除去该类点的评分叫out-of-domain。
评分一般是数字和类型值,统一起来也是个挑战。
–KGs中的节点重要性建模设计
- 邻接感知:邻接节点的作用
- 使用谓词:KGs中边的类型
- 中心性感知:除去其他知识,越处于中心位置的点的重要性应该越高
- 利用输入(已知)的重要性评分
- 灵活适应: 不限制一个特定类型的模型分数,可接受多种类型的输入分数。
–GNN
GNN可表示为:
包括聚合和拼接。L层GNN可理解为聚合L跳-邻接点的信息。
方法
- 领域信息:重要性评分相对其他信息更重要,将邻域的重要性评分进行聚合
- 谓词感知注意力机制
- 中心性感知:将中心性纳入评估
–评分聚合
score aggregation
如下式,GENI直接聚合本身和邻域节点的分数。alpha是一个可学习参数,由一个带共享参数和谓词嵌入的模型计算得出。
初始分数使用节点的特征向量计算,使用一个简单的全连接层
–谓词感知注意力机制
GENI使用共享的谓词嵌入将谓词合并到注意力机制
谓词融合的方式就是将谓词的嵌入表示与score拼接送入注意力机制计算。
注意力计算使用单层反馈网络
其中是i、j节点之间的谓词的嵌入表示
表示使用非线性**函数的单层网络
–中心性调整
在KGs中,很自然地假设越位于中心的节点越重要,除非与重要度分数相反。
如果给定的有分数的点较少或者只有少数类型的点有评分,那么中心性这个先验就显得重要。
入度可以代表这个点的中心性:
epsilon是一个小的正常数
中心性的度量需要和节点的评分综合考虑,因此将中心性度量进行缩放平移:
gamma和beta都是可学习参数。
最终的重要度评分的计算公式为:
其中
是最后一层的输出
–模型架构
a图为一层结构的GENI:每个节点特征经过scoring network生成s0(i),经过attention聚合后变为s1(
i),再融合中心性。
b图为两层多head的GENI:layer1有两个head,分别经由不同的scoring network输入,得到的结果为:
h表示head,l表示第l层
每一层的多个head输出会进行一次聚合(平均)
再输入第二层。
每个head中的attention因子计算公式为:
融合中心性也是每个head有自己的参数:
最后得到的结果为多个head取平均
– 训练
MSE作为损失