AKGE:面向个性化推荐的注意力知识图谱嵌入

核心问题:

 基于路径的方法通过从知识库中提取线性路径来建立用户-物品连接的模型,因此不能充分利用知识库丰富的语义和拓扑结构。 基于传播的方法迭代地将用户偏好传播到整个kg中,这不可避免地会引入与特定用户-项目交互无关的噪声(就是与用户项目相关性不大的entity也会被聚合在内)从而限制了性能。

具体实现:

 我们利用连接用户-项目对的子图来表征它们的连接性:

 (1)子图作为独立路径的非线性组合,既包含了kg的丰富语义,又包含了kg的拓扑结构,因此比线性路径更具有表达性;(2)子图只保留了与特定的用户-物品交互相关的实体和关系;因此,它可以有效地避免来自整个KG的噪音。

 针对(1)通过组合采样路径来构造子图,设计了一种新的距离感知采样策略来帮助选择用户-物品对之间的显著路径,从而消除子图中可能引入的噪声:

 我们认为距离较短的本地邻居有助于反映更可靠的连接。因此,在我们的策略中,步行者的下一步是由当前实体和候选实体之间的距离决定的。 将所有实体以嵌入的形式投射到欧几里得空间中,并通过相应的嵌入层的欧几里得距离来测量它们的距离,该方法遵循三角形不等式。我们通过TransR预先训练了KG中实体的嵌入。通过这样做,我们可以计算路径上任意两个连续实体的成对距离,并将所有这些距离之和作为整个路径的距离,最后,只保留距离最短的K条路径来构造语义子图。

 针对(2)为了区分不同邻域的影响,我们设计了一种具有关系感知传播和注意聚合的注意图神经网络,以帮助注意聚合来自邻域的更可靠的信息,以更好地进行嵌入学习。

An attentive graph neural network (AGNN):

包含四个组件:namely entity projection, relation- aware propagation, attentive aggregation and gated update

第一步:Entity projection(得到type- enhanced 的实体嵌入,作为传播第一步的hidden state)

不同于传统GNN,将entity embedding (e_l)与 its type embedding (e_l')聚合在一起达到type- enhanced entity embedding:

然后将得到的type-enhanced的实体嵌入作为t=0时的hidden state h_0,使用transR预训练初始化e_l的embedding

第二步:Relation-aware Propagation (得到每一步邻居e_k考虑与实体e_l的关系下的hidden state)

给定h_0,AGNN通过传播和聚合实体的邻居来更新实体e_l的embedding

一个实体可以通过不同的关系(例如友 谊、交互、位置)与多个邻居连接,表示不同的语义。把关系考虑在内对语义的编码是对于理解不同的用户意图至关重要(意思就是说,在不同关系下的实体embedding是不一样),这里对实体邻居的hidden state实现如下,其将邻居在传播第t步是的隐藏状态与对应的邻居与实体的关系r_l,k串联后送入神经网络后输出得到的就是增强的邻居的hidden state(hˆkt),这就是邻居e_k的关系感知隐藏状态,它浓缩了从邻居ek沿关系 rl,k向el传播的信息, 然后将其聚合来更新嵌入的目标实体el

第三步:Attentive Aggregation(得到实体e_l基于注意力权重聚合邻居信息的表示) 

上一步已经完成了来自邻居传播的信息的表示,接下来AGNN通过一种注意机制将信息聚集给实体el,即在每一个传播步骤t,目标实体el聚集了它的邻居的关系感知隐藏状态,表示如下:

a_lt就是实体e-l的邻居们注意力聚合后的隐藏状态;A_sl表示G_s中所有实体与实体e_l的连接性(即有连接为1,无为0),Q是注意力权重向量,可以用来表示本地邻居对实体e_l的影响力;然后两者元素积后就能得到e_l与其邻居的注意力权重连接表示,「」括号内的是知识图谱中所有实体的关系感知隐藏状态(聚合了该实体的t-1步之前的邻居信息)

这里A_sl中只有与实体e_l相连接的实体才会等于1,与Q中元素相乘才有结果,得到的就是与实体e_l相连接的实体的注意力权重,然后再与该实体的关系感知隐藏状态相乘,就得到了该实体的邻居隐藏状态的拥有注意力权重后的表示

对于Q的计算,即本地邻居对实体e_l的影响力使用双层神经网络实现:

这里的h_k^t-1 是e_l的邻居e_k的关系感知隐藏状态,h_l t-1就是实体e_l的以前的隐藏状态,然后soft Max函数归一化得到权重矩阵Q。通过为具有信息性邻居分配更高的 权重,注意机制能够建议关注哪些邻居, 从而捕获显著的语义关系。然后利用邻居信息alt的注意聚合作为输入状态来更新el的嵌入,如下所述

第四步:Gated Update:

给定第三步得到的a_lt作为e_l邻居们的隐藏状态聚合,再结合实体e_l t-1 的隐藏状态,作为输,更新步骤同GRU,就得到了最终的实体e_l在t步传播后的隐藏状态h_lt

AGNN通过递归聚合 来自邻居的信息, 不仅能更好地利用单个传播步骤(t = 1) 下实体的一阶连通 性,而且能更好地 利用多个传播步骤(t > 1)下实体的高阶连通性。 在迭代传播T步之 后,最终的隐藏状态融合了T跳距离以上的实体及其邻居的信息,作为实体嵌入,用于预测用户偏好。

这里实体不分用户和项目,直接丰富其表示,然后送入MLP得到用户偏好得分。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值