Relational Collaborative Filtering: Modeling Multiple Item Relations for Recommendation

以下内容纯属个人见解,欢迎大家交流。

发布于2019 SIGIR

1 motivation

1.1 问题

在现实场景中,物品之间存在多种关系,如两部电影由同一位导演执导,两件产品互为补充等。不同于协作相似,从用户的角度来看隐含着交互模式,这些关系从元数据、功能等的不同角度揭示了对项目的精细知识。然而,在推荐研究中,如何结合多项关系的研究较少。

1.2解决方法

提出关系协同过滤(Relational Collaborative Filtering,RCF)来开发推荐系统中的多项目关系。开发了一个两层层次的注意机制来模拟用户偏好——第一级注意区分哪些类型的关系更重要,第二级注意考虑特定的关系值来估计历史项目的贡献。为了使项目嵌入反映项目之间的关系结构,我们进一步制定了一个任务来保存项目关系,并与用户偏好建模共同训练它。

2 相关介绍

在众多推荐方法中,基于item的协同过滤(collaborative filtering, ICF)因其可解释性和有效性而脱颖而出。ICF的关键假设是用户应该选择与其历史上交互过的物品相似的物品。相似度通常是通过用户交互来判断的——两个物品在过去被用户交互的可能性有多大。
尽管现有的ICF方法具有普遍性和有效性,但我们认为这些方法还不够充分,因为它们只考虑了宏观层面的、粗粒度的、缺乏具体语义的协同相似关系。例如,两个用户(和)观看了同一部电影《外星人》,喜欢导演,选择了《辛德勒的名单》看下一部,喜欢小说主题,看下一部《复仇者》。如果不明确地对物品之间的这种微观和细粒度的关系进行建模,从概念上讲就很难揭示用户决定背后的真正原因,更不用说推荐你想要的物品。

image.png

为了保留一个关系的细粒度特性,并便于对用户偏好进行推理,我们将一个关系表示为一个具有两层层次结构的概念:
(1)关系类型,可以在上面的电影示例中共享导演和类型,也可以在电子商务产品中共享功能和视觉相似的类型。它以抽象的方式描述了项目之间是如何相互关联的。从用户行为的宏观角度来看,协同相似度也是一种关系类型。
(2)关系值,它提供关于两个项目的共享关系的详细信息。比如,《外星人》中关系人共享导演的价值《外星人》和《辛德勒的名单》是史蒂芬·斯皮尔伯格的作品,它们的价值共享类型包括小说、动作片、爱情片等。关系值为检查用户的偏好提供了重要的线索,因为用户在做决定时可能会以不同的方式衡量关系类型的不同值

3 模型

总体框架如同所示:


给定一个项对,它们之间的关系定义为的集合,其中为关系类型,为关系值。符号如下图所示

3.1 User-Item偏好建模

在对用户偏好进行建模时,一个直观的动机是用户倾向于对不同类型的关系付出不同的权重(例如,一些用户可能更喜欢拥有相同演员的电影,一些用户可能更喜欢属于相同类型的电影)。针对由关系类型和关系值组成的多项关系,我们提出使用层次注意机制来建模用户偏好。
给定项关系数据,我们首先划分用户的交互项。根据这些项与目标项之间的关系类型,分成不同的集合。在不同的中可能会出现单一项,此时该项与之间存在多个关系,并且可能会有一些项与目标项没有明确的关系。为了处理这些项,我们引入了一个潜在关系,并将这些项放入中,这里的可以看作是协同相似度,它表示的是项目的协同交互模式。那么目标感知用户嵌入可以表示为


其中,是用户的第一级注意力,目的是计算不同关系类型对该用户和的重要性。更准确地说,我们用标准的softmax函数定义:


关系值在这一过程中占有重要的地位。例如,用户在看电影时可能会关注电影类型。然而,在所有体裁中,他最感兴趣的是浪漫主义以外的小说。因此,在对二级关注点进行建模时,既要考虑项目,也要考虑相应的关系值。从这个角度,我们定义为:



其中,其中的是(0,1)之间的平滑因子,通常设置为0.5.
现在我们完成了目标感知用户嵌入的建模。在此基础上,我们利用多层感知器(MLP)计算用户对第项的最终预测得分,结果如下

我们利用BPR逐对学习框架来定义目标函数,如下所示:

3.2 item-item关系数据建模

通常,关系数据组织为知识图(KG)。知识图是节点对应实体,边对应关系的有向异构图。可以用一组三个表示,其中为头实体,为关系,为尾实体。知识图嵌入是从关系数据中学习信号的一种常用方法,其目的是将知识图嵌入到连续向量空间中。
然而,直接使用KGE(knowledge graph embedding)存在两个挑战:(1)我们定义的关系中既有关系类型,也有关系值,KGE不能一次性对进行嵌入;(2)与用有向图表示的传统的KG不同,项目关系是可逆的(即。,关系r对(e1, e2)和(e2, e1)都成立,导致无向图结构。由于是无向结构,我们的item关系数据将同时得到e1+r≈e2和e2+r≈e1。根据这些方程优化目标函数,可以得到r≈0,e1≈e2的平凡解。
为了解决第一个挑战,我们使用两层层次结构组件的总和作为关系嵌入。更精确地,给出了特定关系的表示:


通过这样做,我们可以确保相同类型的关系在某种程度上保持相似。同时,由于值的嵌入,保证了模型的保真度。它还使模型能够处理相同的值在不同类型的关系中出现的情况。
为了解决第二个挑战,我们发现平凡解的来源是TransE中的减运算,它只适用于有向结构。对无向图建模,需要模型满足交换律(比如: ),基于DistMult,给定一个三元组,这意味着项目和具有关系,我们将此三元组的评分函数定义为

对应为对角元素等于r的对角矩阵。与推荐部分中使用的BPR损失类似,我们希望将正例的f(i, r, j)最大化,将负例的f(i, r, j)最小化。在此基础上,通过对比观察到的三元组(i, r, j)和未观察到的三元组(i, r, j−)的得分来定义目标函数:

3.3多任务学习

为了有效地学习推荐参数,并保留项目嵌入之间的关系结构,我们将推荐部分(即和关系模化部分(即)。通过多任务学习框架,以端到端的方式学习。RCF的总目标函数定义为


4 实验结果

你可能感兴趣的:(Relational Collaborative Filtering: Modeling Multiple Item Relations for Recommendation)