【kg推荐->精读】RippleNet: Propagating User Preferences on the Knowledge Graph for Recommender Systems

RippleNet

RippleNet: Propagating User Preferences on the Knowledge Graph for Recommender Systems

Abstract

为了解决协同过滤的稀疏性和冷启动问题,通常利用side information,比如social networks,item attributes。

为了解决基于embedding和基于path的knowledge-aware recommendation的局限性,提出了RippleNet。ripple名为涟漪,模型通过自动地、迭代地延伸用户的潜在兴趣(沿着KG的links),促进 用户偏好在knowledge entities上的传播。因此,用户历史点击item的多个“ripples”(涟漪)被叠加,形成用户对候选item的偏好分布,用于预测最终点击的概率。

Keywords

  • Recommender systems
  • knowledge graph
  • preference propagation

1 Introduction

🔆基于KG的推荐的3个好处

  1. KG引入了item间的语义关系,有助于发现它们的潜在联系
  2. KG由多种类型的关系组成,有助于扩展用户兴趣、增加推荐item的多样性
  3. KG将用户的历史记录和推荐记录连接起来,为推荐带来可解释性

现有的KG分为2类:

  • 基于Embedding的方法[32,33,43]

使用knowledge graph embedding(KGE) [35]预处理KG,并将学习到的entity embedding结合到推荐框架中去。例如DKN[33], CKE[43], SHINE[32]。

这种方法灵活性高,但KGE方法更适合in-graph应用,比如link prediction,而不是推荐[35]。

  • 基于path的方法[42,45]

探索KG中items之间的各种连接模式,为推荐提供指导。例如PER[42], Meta-Graph Based Recommendation[45]将KG视为异构信息网络(HIN),并提取基于元路径/元图的潜在特征,以表示用户和项目之间沿着不同类型的关系路径/图的连通性。

这种方法更自然、直观,但是严重依赖手动设计的元路径,在实践中很难优化。或者说有些场景不可能手动设计元路径。


为了解决以上局限,提出了RippleNet

模型用于CTR预测,输入:user-item对;输出:user 点击(engaging) item的概率。

模型的关键思想:preference propagation。对于user,模型将他的历史兴趣作为KG中的seed set,然后 沿着KG的连接 迭代地 扩展用户的兴趣。,以发现他对于 候选item 的hierarchical potential interests(分层潜在兴趣)。

preference propagation与涟漪做类比,多个“涟漪”叠加,形成用户在KG上的最终偏好分布。

RippleNet的优点(结合了上述2种方法的优点):

  1. 使用KGE方法用于preference propagation。
  2. 从用户历史记录中的item到候选item,可以自动地发现可能路径,不需要手工设计。

2 Problem Formulation

user-item interaction mtrix Y

knowledge graph G \mathcal{G} G,(h, r, t)三元组

问题描述:给定Y和 G \mathcal{G} G

在这里插入图片描述

给定用户u,item v, Θ \Theta Θ是函数参数,返回u是否点击v的概率。

3 RippleNet

3.1 Framework

RippleNet框架如图2所示。输入:用户u,item v。输出:u点击v的预测概率。

对于输入用户u,他的历史兴趣集 V u \mathcal{V}_u Vu作为KG的seeds,然后沿着link扩展,形成ripple sets S u k ( k = 1 , 2 , . . . , H ) \mathcal{S}^k_u (k = 1,2,..., H) Suk(k=1,2,...,H)。ripple set S u k \mathcal{S}^k_u Suk是距离seed set V u \mathcal{V}_u Vu k-hop的set of knowledge triples。

ripple sets和item embedding(黄色块)迭代交互,以获得u对v的responses(绿色块),之后将其组合形成最终的user embedding(灰色块)。最后,使用u的embedding和v的embeddng,计算预测概率 y ^ u v \hat{y}_{uv} y^uv

在这里插入图片描述

3.2 Ripple Set

KG可以让很多实体联系在一起,如图3所示。

在这里插入图片描述

为了根据KG来描述用户的hierarchically extended preference(分层扩展偏好),RippleNet递归地定义了针对用户u的k-hop相关实体集,如下所示:

在这里插入图片描述

其中 ε u 0 \varepsilon^0_u εu0表示user点击过的item = seed set。(其实从图2就很好理解了)

在这里插入图片描述

模型借用“ripple”这个概念有两层含义:

  1. 用户对item的潜在兴趣从历史偏好开始,从近到远逐层传播
  2. 其强度随着跳数k的增加而减弱,如图3

还有一个关心的问题是,随着跳数k的增加,它们的大小可能会变得太大。如何解决?

  1. KG中大量实体是汇入实体(sink entities),无outgoing links,比如“2004”、“PG-13”。
  2. 我们还可以局限场景相关的类别,比如例子中只选择与firm相关的类别
  3. 我们不会设置太大的最大跳数H,不然会带来很多噪声
  4. 我们可以固定 邻居集的大小。

3.3 Preference Propagation

在这里插入图片描述

在这里插入图片描述

p i可以被视为在item v和 在关系R i空间中测量实体h i 的相似性。

在这里插入图片描述

t i为tail的embedding; o u 1 o^1_u ou1看成对于item v的用户u历史记录 V u \mathcal{V}_u Vu的1-order response。

通过等式4和5的操作,用户的兴趣沿着 S u 1 S^1_u Su1中的links 从其历史集合 V u \mathcal{V}_u Vu转移到set of 1-hop relevant entities ε u 1 \varepsilon^1_u εu1,这在RippleNet中称为preference propagation

在这里插入图片描述

通过迭代执行,v替换为 o u 1 o^1_u ou1,等等等等,就可以获得 S u i S^i_u Sui,i=1, …, H。则user u对于item v的embedding是通过组合所有order来计算的。理论上讲最后一跳包含了以前跳的所有信息,但是还是要加起来,因为它们可能被稀释了。

在这里插入图片描述

最后,将用户Embedding和项目Embedding结合起来,以输出预测的点击概率。 σ ( x ) \sigma(x) σ(x)是sigmoid函数。

3.4 Learning Algorithm

xxx(有关如何训练模型)

Q1. 里面有用到贝叶斯定理,具体作用?

3.5 Discussion

3.6 Links to Existing Work

Q2. 用到了很多另外的技术,比如Attention,Knowledge Graph Embedding,后面要学

  • Attention Mechanism
  • Memory Networks
  • Knowledge Graph Embedding

4 Experiments

5 Conclusion And Future Work

  • 模型通过preference propagation,克服了基于Embedding和path的局限性,自动传播用户的潜在偏好,探索KG中用户的分层兴趣。
  • 在贝叶斯框架-点击率预测中,统一偏好传播 与 KGE正则化。

我的疑问/总结

Q1-Q2

推荐理论视频:b站

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Compared with homogeneous network-based methods, het- erogeneous network-based treatment is closer to reality, due to the different kinds of entities with various kinds of relations [22– 24]. In recent years, knowledge graph (KG) has been utilized for data integration and federation [11, 17]. It allows the knowledge graph embedding (KGE) model to excel in the link prediction tasks [18, 19]. For example, Dai et al. provided a method using Wasser- stein adversarial autoencoder-based KGE, which can solve the problem of vanishing gradient on the discrete representation and exploit autoencoder to generate high-quality negative samples [20]. The SumGNN model proposed by Yu et al. succeeds in inte- grating external information of KG by combining high-quality fea- tures and multi-channel knowledge of the sub-graph [21]. Lin et al. proposed KGNN to predict DDI only based on triple facts of KG [66]. Although these methods have used KG information, only focusing on the triple facts or simple data fusion can limit performance and inductive capability [69]. Su et al. successively proposed two DDIs prediction methods [55, 56]. The first one is an end-to-end model called KG2ECapsule based on the biomedical knowledge graph (BKG), which can generate high-quality negative samples and make predictions through feature recursively propagating. Another one learns both drug attributes and triple facts based on attention to extract global representation and obtains good performance. However, these methods also have limited ability or ignore the merging of information from multiple perspectives. Apart from the above, the single perspective has many limitations, such as the need to ensure the integrity of related descriptions, just as network-based methods cannot process new nodes [65]. So, the methods only based on network are not inductive, causing limited generalization [69]. However, it can be alleviated by fully using the intrinsic property of the drug seen as local information, such as chemical structure (CS) [40]. And a handful of existing frameworks can effectively integrate multi-information without losing induction [69]. Thus, there is a necessity for us to propose an effective model to fully learn and fuse the local and global infor- mation for improving performance of DDI identification through multiple information complementing.是什么意思
最新发布
06-11

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值