知识图谱论文阅读(十五)【arxiv】A Survey on Knowledge Graph-Based Recommender Systems

在这里插入图片描述
论文题目: A Survey on Knowledge Graph-Based Recommender Systems
论文链接:
论文代码:

想法

  • 出现Refine就是用某些方法更好的优化特征表示
  • embed的意思就是变成低维向量!

论文

摘要

难点:
当今推荐系统的难点 : 数据稀疏和冷启动;
而基于KG的推荐系统不仅能减轻上面的两个问题,同时能提供可解释性。

全文内容:
全文将介绍两个方面: 一方面,我们通过研究论文如何利用知识图进行准确和可解释的推荐来研究提出的算法。另一方面,我们介绍了在这些工作中使用的数据集。最后,提出了该领域的几个潜在研究方向

1. Introduction

recommender systems分为三类:1. CF 2. Content-based recommender systems 3. hybrid recommender ;
CF是基于user或者item的相似性, Content-based则是发掘item的内容属性。所以也就是的CF有自己的优点是能有效的捕获用户的喜好,但是存在着冷启动和数据稀疏问题。 所以第三种横空出世!

KG-based recommender systems可以分为三种: Embedding-based method、path-based method和unified method。

KG可以是一个异构图,包含了更多的side information,比如用户的社会关系、item属性等。

全文我们将讨论这些方法的不同, KG-based recommendation 的可解释性以及通过它们的应用场景进行分类

2. Related work(和introduction是一样的)

2.1 Knowledge Graphs

描述KG的常用方法就是使用RDF(Resource Description Framework)!
而KG可以被分为两类: 1. cross-domain KGs 2. domain-specific KGs

像Google’s Knowledge Graph和Satori都被嵌入到了搜索引擎,前者是Google的,后者是Bing的; CN-DBPedia是复旦大学出的,是目前中文最大的一个!

2.2 Recommender Systems

推荐系统就是给定user u和item i,最后来个得分函数,查看该item值不值得推送! 所以主要目标就是学习user、item的表示以及得分函数的选择。 到目前为止有三种方式:

CF:CF主要是将拥有相同交互记录的用户看做是相似的,从而进行推荐。 交互记录可以是显性的(购买、评分)和隐形的(浏览和点击)。
CF可以为了两种方式: memory-based CF 和 model-based CF。 1. memory-based CF就是从交互信息中学习user-user之间的相似性,然后彼此推荐内容; 2. model-based CF通过建立一个inference model来减轻稀疏问题,一种常见的实现是潜在因素模型, 从高维度的user-item交互矩阵中提取用户与物品的潜在表示,然后通过内积或其他方法计算用户与物品之间的相似度。

Content-based Filtering: 这里我们是学习user和item的特征表示的,其中user的特征表示是由其历史交互信息(items)得到的,而item更多是其属性。 所以Content-based Filtering更多是推荐一些过去的相似的items!

Hybrid Method
user-item的交互数据的稀疏同样导致了冷启动问题,因为没有数据来学习user和item的特征表示! 所以我们可以添加side information(content-based Filtering)! 基于user side information主要可以有人口的统计信息,包括职业、性别、爱好、用户网络; 基于item side information主要可以有item attributes,包含品牌、类别; 项目多媒体信息,如文本描述、图像特征、音频信号、视频特征; 项目评论。

3 OVERVIEW

我们首先给出文中使用的符号和概念,以消除误解。

在这里插入图片描述

Heterogeneous Information

V和E是实体和链接; 而A和R是实体类型和链接类型
这其中需要注意的是: 有两个函数 ϕ \phi ϕ ψ \psi ψ可以映射出实体和关系的类型!但是并未在图中展示

Knowledge Graph (KG)

RDF

Meta-path:

用来提取图中的连接性特征,用在HIN!A是实体类型,R是关系类型!

Meta-graph

是meta-path的多种组合版! 更有结构性

知识图嵌入(KGE)
将图中的实体和关系用一个低维d向量来表示,低维嵌入仍然保持了图的固有属性,可以通过图的语义或者高阶接近程度来量化!

User Feedback

如果是1,那么就表示有隐式的交互! 但是隐式的交互不一定就是对该东西有好感,除非有特殊的说明。 有些情况下这种显示反馈能表达用户的喜好,比如电影的评分很高或者低!

H-hop邻居

相关的实体
给出交互矩阵R和知识图谱 G k n o w \mathcal{G}_{know} Gknow k − h o p k-hop khop对于用户u的相关实体可以这样表示:

其中是用户的历史交互项的集合。

User Ripple Set
用户纹波集定义为头部实体为(k−1)-hop相关实体的知识三元组 E u k − 1 \mathcal{E}_u^{k-1} Euk1

Entity Ripple Set:
一个实体的波纹集 e ∈ G e\in\mathcal{G} eG被定义为:

4 Methods of recommender systems with knowledge graphs

怎么使用KG可以被分成三部分:embedding-based methods, path-based methods, and unified methods.
最近,可解释性推荐成为了热门话题,如果给用户提供适当的解释,有助于用户采纳推荐系统产生的建议
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.1 Embedding-based Methods

基于嵌入的方法一般是直接利用KG中的信息来丰富物品或用户的表示。为了挖掘KG信息,需要应用知识图嵌入(KGE)算法将KG编码为低秩嵌入。KGE算法可分为两类[98]:翻译距离模型,如TransE[99]、TransH[100]、TransR[101]、TransD[102]等,语义匹配模型,如DistMult[103]。

而基于嵌入的方法又可以分为两种: 有user的KGs和无user的KGs!

4.1.1 无User的KGs

无User的KGs:KGs中只有items,该items graph可以从数据集或者外部知识众包中获得! 之后通过KGE丰富每个item的内容得到一个低维向量,最后融合到我们的推荐系统中。 总体而言,通过多种来源的特征的融合我们得到item和user的最终向量 V j V_j Vj U i U_i Ui,之后我们通过一个函数得到 u i u_i ui v j v_j vj的选择概率:

其中 f ( ⋅ ) f(·) f()可以是inner product,DNN,etc,最后我们通过得分来进行Top-N推荐。

举例: CKE模型,该模型中一个item V j V_j Vj的向量由各种向量aggregated而成:

其中,第一项从user-item交互矩阵中提取; 第二项是item的在KGs中通过TransR得到的结构向量,第三项是文本特征(text),第四项是视觉特征(visiable)

在获得user U i U_i Ui的潜在向量后,最终的喜好分数 y ^ i , j \hat{y}_{i,j} y^i,j通过inner product得到 u i T v j u_i^Tv_j uiTvj,之后我们通过分数来给用户推荐物品。

DKN模型, 同样是如何获得item 和 user的特征表示。 在该模型中,item j的特征由新闻的textual feature和通过TransD得到的knowledge-level feature组成,这也就是获得了其高级语义特征 V j V_j Vj对于user i的特征, 则是通过一个注意力机制聚合它的历史点击新闻 { V 1 , V 2 , . . . , V N i } \left \{ V_1, V_2, ..., V_{N_i} \right \} {V1,V2,...,VNi}获得! 这个注意力权重通过下面的式子获得:

其中 V j V_j Vj就是我们前面求出的候选新闻的特征; g ( ⋅ ) g(·) g()是DNN层。 最后的user embedding u i u_i ui通过点击新闻的嵌入的权重和得到:

最后,我们再通过前面的公式得到对该候选新闻的兴趣,这里 f ( ⋅ ) f(·) f()是DNN层

KSR模型

XXXXX有个图

4.1.2 User-item graph

其它的方法中则是构建异构图,也就是建立user-item graph,其中users、items和他们相关的属性函数作为结点,其中attribute-level relation(牌子、类别,etc)和user-related relations(co-buy,co-view,etc)都作为边。 既然有了图,那么就可以获得KG中实体的嵌入,那么user i和item j的embedding也可以获得,既可以直接通过公式一得到结果! 也可以添加relation得到分数:

CFKG模型: 这里也是创建一个user-item graph,其中user behaviors(purchase、mention)会被认为是 一种关系类型; 而item side information的多种类型(比如review,brand, category,bought-together,etc)也都包含在里面; 为了学习图中的关系和实体的embedding,模型中定义了一个metric function d ( ⋅ ) d(·) d()来测量给定关系下两个实体的距离。

最后在推荐阶段,也是通过距离的上升顺序来进行推荐。 其中 r b u y r_{buy} rbuy是’buy’关系

SHINE模型: 将名人推荐任务(社交网络中对某个明星的喜爱)作为图中实体之间的情感链接推荐任务,在该模型中将users和targets(名人)都嵌入到情感网络 G s G_s Gs中,并利用了他们的社会关系 G r G_r Gr和档案信息网络 G p G_p Gp作为辅助信息,这三个网络被auto-encoder 技术embedded了(分析,形成向量),之后aggregate后作为user和target的向量,最后使用公式一判断兴趣点; 其中 f ( ⋅ ) f(·) f()是一个DNN层。

DKFM模型:POI推荐,在一个city KG上使用TransE丰富了目的地的特征表示,提高了POI效果。

原来的工作只是使用经过KGE后的raw vector,现在更多的工作在refine 得到的实体的和关系的raw vector:

KTGAN:A GAN-based model。 第一阶段, 获取初始user 和 movie的latent vector! 其中对于movie v j v_j vj,其潜在向量可以这样得到: V j i n i t i a l = V j k ⊕ V j t V_j^{initial} = V_j^{k} \oplus V_j^{t} Vjinitial=VjkVjt

其中 V j k V_j^{k} Vjk通过在movie’s KG进行 Metapath2Vec model得到的; 而 V j t V_j^{t} Vjt则是通过在movie’s attributes上进行Word2Vec model得到的;

同理,用户 u i u_i ui的潜在向量可以这样得到:
U j i n i t i a l = U j k ⊕ U j t U_j^{initial} = U_j^{k} \oplus U_j^{t} Ujinitial=UjkUjt

其中 U j k U_j^{k} Ujk u i u_i ui的最喜欢的电影的知识嵌入的平均; 而 U j t U_j^{t} Ujt u i u_i ui的tag 嵌入。

第二步: 生成器G和辨别器D被引入来更好的更新user和item的初始向量表示,生成器通过得分函数 p θ ( v j ∣ u i , r ) p_{\theta}(v_{j}\mid u_i,r) pθ(vjui,r)为用户 u i u_i ui产生相关(最喜欢)的电影,其中r代表了 u i u_i ui v j v_j vj的相关性。 在测试阶段,G尝试让 p θ ( v j ∣ u i , r ) p_{\theta}(v_{j}\mid u_i,r) pθ(vjui,r)近似于其最喜欢的电影分布 p t r u e ( v j ∣ u i , r ) p_{true}(v_{j}\mid u_i,r) ptrue(vjui,r),以便G可以选择相关的用户电影对。 D是一个二分类器用来区分相关的user-movie对和不相关的user-movie对根据得分函数 f ϕ ( u i , v j ) f_\phi (u_i, v_j) fϕ(ui,vj)拍判断。 损失函数如下:

其中,

表示电影 v j v_j vj被用户 u i u_i ui喜欢的概率。 在对抗训练结束后,就可以得到
最优的 u i u_i ui v j v_j vj嵌入表示,最后使用生成器G的得分函数 p θ ( v j ∣ u i , r ) p_{\theta}(v_{j}\mid u_i,r) pθ(vjui,r)得到排名。

BEM模型: 这里使用了为items准备的两种类型的图, knowledge-related graph(item attributes、brand、category,etc)和behavior graph(interaction-related information, co-buy,co-add,co-rate to cart); 首先,BEM会首先利用TransE和GNN-based model学习初始embedding, 然后,BEM使用一个贝叶斯框架来refine这两种embedding。推荐可以通过在行为图中找到最接近交互项目的项目来生成,这是通过“共同购买”或“共同点击”的关系来衡量的。

4.1.3 multi-task

之后的趋势则是multi-task学习的策略,共同在KG-related task的引导下学习推荐任务。 第一个任务就是推荐任务,推荐任务就是寻找一个函数 f ( ⋅ ) f(·) f(),该函数可以预测user i 对 未知item j的兴趣分; 而KG-related task则是学习另一个函数 g ( e h , r , e t ) g(e_h, r, e_t) g(eh,r,et)来决定 ( e h , r , e t ) \left (e_h, r, e_t \right ) (eh,r,et)在KG中是一个有效的三元组。 这样两部分结合就是目标函数:

其中前者是推荐的loss 函数,后者是KG-related task的loss函数, λ \lambda λ是平衡参数。 多任务学习的动机是,推荐模块中的item embeddings和KG中的关联实体嵌入由相同的特征。

KTUP模型: 也是multi-task,共同学习推荐和知识图谱任务。 推荐模块的损失函数:

其中 ( u , v ) (u, v) (u,v)是被观察到的user-item对,而 ( u , v ′ ) (u, v^{'}) (u,v)是未被观察到的user-item对; p p p代表了user对给定item的喜好程度; f ( ⋅ ) f(·) f()是所提出的translation-based model,TUP,建模一个user-item对的正确性;
对于KG完成模型,hinge loss被采纳:

其中 G − \mathcal{G}^- G是替换了 G \mathcal{G} G中的 e h e_h eh e t e_t et g ( ⋅ ) g(·) g()是一个TransH模型,一个更低的 g ( e h , r , e t ) g(e_h, r, e_t) g(eh,r,et)值推断出这样一个三元组的更高正确性; [ ⋅ ] = m a x ( 0 , ⋅ ) \left [ \cdot \right ] = max\left ( 0, \cdot \right ) []=max(0,) γ \gamma γ是一个margin参数; 推荐模块是为挖掘user i对item j的偏好关系,而Knowledge completion task则是提取KG中items之间的关系; 而两者的桥梁就是他们在KG有相对应的实体。两者之间互相传递只是可以丰富item和preference的embedding!

MKR模型:也包含了一个推荐模块和一个KGE模块。前者学习users和items的潜在表示,后者则使用语义匹配KGE模型学习关联实体的item! 这两部分通过一个cross&compress单元来传递知识!

RCF模型:它引入了item的层次描述,包括关系类型嵌入和关系值嵌入。RCF利用DistMult模型作为KGE来保留items之间的关系结构! 然后后,利用注意机制分别对用户的类型级偏好和价值级偏好进行建模。通过推荐模块和KG关系建模模块的联合训练,可以做出像样的推荐。

总结:
大多数基于嵌入式的方法构建具有多种类型的商品侧信息的KGs,丰富了商品的表示,这些信息可以用来更精确地建模用户表示。有的模型通过将用户引入图中来构建user-item图,可以直接对用户偏好建模。entity embedding是基于嵌入方法的核心,一些文献利用GAN或BEM对嵌入进行细化,以便更好地推荐。基于嵌入的方法从本质上利用了图结构中的信息。有的文献采用多任务学习策略,结合图相关任务联合训练推荐模块,提高推荐质量。

4.2 Path-based Methods

Path-based methods建立了一个user-item图,并利用图中实体之间的连接模式进行推荐,同时这种方式也被称为recommendation in HIN。 这里的连接模式指的是users/items之间的连接相似性(也就是相似性高,则user/items之间或者之内相似性高)。 图中实体之间的连接相似性可以通过PathSim来度量:

其中 P m → n P_{m\to n} Pmn是实体m和n的一条路径。

4.2.1 MF与HINs提取出的元路径整合

一种基于路径的方法利用不同元路径中实体的语义相似性作为图的正则化,以细化HIN中user和item的表示。 之后就可以通过公式一来预测user i对item j的喜好程度,这里 f ( ⋅ ) f(·) f()是内积。

  • User-User Similarity:目标函数

这里的 ∥ ⋅ ∥ F \left \| \cdot \right \| _F F表明是matrix Frobenius norm Θ = [ θ 1 , θ 2 , ⋯   , θ L ] \Theta = \left [ \theta _{1},\theta _{2},\cdots ,\theta _{L} \right ] Θ=[θ1,θ2,,θL]表明了每个meta-path的权重, U = [ u 1 , u 2 , … , u m ] \mathrm {U}=[\mathrm{u}_1,\mathrm{u}_2,\dots ,\mathrm{u}_m] U=[u1,u2,,um]表明了所有用户的潜在向量; s i , j l s_{i,j}^l si,jl表明用户i和j在meta-path l l l的相似性分数; 这个相似度会迫使两个在元路径上相似的用户的潜在向量更近接近。

  • Item-Item Similarity: 目标函数

V = [ v 1 , v 2 , … , v n ] \mathrm {V}=[\mathrm{v}_1,\mathrm{v}_2,\dots ,\mathrm{v}_n] V=[v1,v2,,vn]表明所有item的潜在向量.同上,如果基于元路径的相似度很高,那么物品的low-rank表示应该是接近的。

User-Item Similarity:目标函数:

如果用户和物品的元路径相似度较高,则用户和物品的潜在向量会变得更接近。

Hete-MF:提取出了L条不同的meta-path并且在每条path中计算item-item之间的相似性; item-item正则化与加权非负矩阵分解方法相结合,细化用户和项目的low-rank表示,以便更好地推荐。Hete-CF:把user-user相似性,item-item相似性和user-item相似性聚在一起作为正则化项来找到用户对其为评分的item的亲和力。 因此,后者优于前者。

HeteRec模型:利用meta-path相似性来丰富user-item交互矩阵,从而使得更丰富的users和items被提取。首先生成L条不同类型链接item和users的meta-paths,其次计算item-item的相似性通过PathSim,形成相似性矩阵 S ( l ) ∈ R ( n × n ) S^{\left ( l \right )} \in \mathbb{R}^{\left ( n \times n \right )} S(l)R(n×n),其中 l = 1 , 2 , . . . , L l = 1,2,...,L l=1,2,...,L;之后L通过公式 R ~ ( l ) = R S ( l ) \tilde{R}^{(l)} = RS^{(l)} R~(l)=RS(l)来分散用户的偏好矩阵 R ~ ( l ) \tilde{R}^{(l)} R~(l);之后通过在这些分散的用户偏好矩阵上应用非负矩阵分解技术, L L L定义了用户和物品在不同的元路径上潜在向量。
在这里插入图片描述
最后,将用户对每个路径的偏好与评分函数结合,生成推荐:

其中 θ l \theta_l θl是在 l l l-th路径上的为了user-item潜在向量对的权重。

HeterRec-p: 认为对于不同的users,不同的meta-path的重要性是不同的。 首先将用户按照他们的历史行为划分为 c c c组并形成个性化推荐,而不是用一个全局的偏好矩阵。 得分函数如下:

其中 ( C k , u i ) \left ( \mathrm {C}_k, \mathrm{u}_i \right ) (Ck,ui)表明了用户 u i \mathrm{u}_i ui和目标用户组别 C k \mathrm {C}_k Ck的余弦相似度, θ l k \theta _l ^ k θlk表明了元路径 l l l对用户组 k k k的重要性。

FMG模型:该模型是为了克服元路径表示能力的限制而提出,它用meta-graph替换了meta-path, meta-graph有比meta-path更加丰富的连接信息。 之后模型会利用矩阵分解(MF)生成items和users的潜在向量; 下面,分解机(FM)会跨过不同的meta-graphs通过计算偏好分数 y ^ i , j \hat{y} _{i,j} y^i,j来融合users和items的特征。

4.2.2 利用外部KG中的规则

上面的局限性在于只会考虑用户喜欢的交互物品。 因此SemRec模型会考虑用户喜欢和过去讨厌的交互作用。该模型中基于加权HIN和加权元路径来聚合属性值,通过给积极的和消极的偏好模式建模,更精确的item relations和user similarity会被表示出。

RuleRec: 原来方法的缺点之一是调参很繁琐,比如元路径的数目。 因此该模型则引入了外部KG,利用外部KG中items之间的连通性,RuleRec学习了关联实体之间的关系。 模型分为了两部分:a rule Learing module和an item Recommendation module,第一步,前者会通过外部KG中的associated entities来 link items; 第二步,它会以KG中的元路径的形式总结可解释的规则(???),进一步学习每个规则权重; 第三步,推荐模块将规则和规则权重与用户购买历史结合,使用MF生成推荐。 规则和规则权重使得推荐过程更有可解释性。

最近,一些框架提出直接学习连接user-item对的路径的显性embedding,然后直接给user-item关系建模。 假如有K个连接 u i u_i ui v j v_j vj的元路径,而路径p的embedding被表示为 h p h_p hp,之后 u i u_i ui v j v_j vj的交互的最终表示为:
在这里插入图片描述
g ( ⋅ ) g(·) g()可以看做是max-pooling操作和加权合并操作。 之后 u i u_i ui的对于$v_j
$的偏好可以这样建模:
在这里插入图片描述
f是评分函数; 一个常用选择是全连接层。

MCRec模型:学习元路径的显式表示,以描述用户-项目对的交互上下文。首先,MCRec会用一个look up layer来嵌入每个user-item对; 第二步,它定义了 L L L个元路径来连接 u i u_i ui v j v_j vj,其中每条元路径又取样 K K K个路径实例。 路径实例通过CNN获得特征表示 h p h_p hp; 第三步,每个元路径嵌入由在其 K K K个路径实例上使用最大池化操作计算; 第四步,所有的元路径通过注意力机制来聚合获得交互嵌入 h h h; 最后,通过上面的公式二十得到偏好得分,其中f函数是MLP层。

RKGE模型:自动提取user i和item j之间的路径关系而不用手工定义元路径。具体而言,首先RKGE模型会枚举所有连接了 u i u_i ui v j v_j vj的不同语义的有长度限制的user-to-item对; 第二步,每个路径都会被喂到一个Recurrent Network来获得整条path;第三步,根据公式19,所有的路径的隐藏状态 h p h_p hp都会通过平均池化操作聚合;最后,根据公式二十得到评分偏好,其中 f ( ⋅ ) f(·) f()是一个全连接层。

KPRN模型:和上面的方式是一样的,只不过这里变成了LSTM。 该模型使用实体嵌入和关系嵌入来提取path sequence,之后路径被LSTM层编码, u i u_i ui v j v_j vj的偏好会被一个全连接层预测; 通过加权池化层对每条路径的得分进行汇总,最终的偏好估计可用于推荐。

EIUM模型: 它捕获用户的动态兴趣来进行sequence recommendation。 推荐模块同样跟寻公式19和20。首先,每个连接 u i u_i ui v j v_j vj的路径会被编码,并通过聚合获得user-item对( u i u_i ui v j v_j vj)的交互嵌入; 动态的偏好嵌入 p p p通过将注意机制应用于interaction sequential。偏好得分通过 y ^ i , j = f ( h , p ) \hat{y} _{i,j}=f(h,p) y^i,j=f(h,p)得到。 除了上面的path-based recommenddation module, EIUM会进一步整合多模态融合约束模型,该模块将KG结构约束引入框架,
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
该term可以细化在KG结构约束下的实体的特征。这样可以生成更准确的推荐:

PGPR模型:使用强化学习(RL)搜索user-item对之间的合理路径。他们将推荐问题表述为一个马尔可夫决策过程,以找到连接用户-项目对的合理路径。他们通过设计路径搜索算法、转换策略、终端条件和RL奖励,训练一个agent可以取样路径。 在测试阶段,PGPR可以为具有特定路径的用户生成推荐项来解释推理过程。

EKar*模型: 也是RL生成推荐。

总结:基于路径的方法是基于user-item图的,这些方法在过去也被称作HIN-based。 起初,是将MF与HINs提取出的元路径整合,这些方法利用了path的连通性,缺点是需要领域知识来定义元路径的类型和数目; 之后RuleRec尝试自动地利用外部KG中的规则来克服这一限制。 随着深度学习发展,更多的模型被提出将path embedding编码的更详细。 推荐会被path embedding生成或者发现链接user-item对的最显著的paths。

基于路径的方法自然地将可解释性引入推荐过程。对于传统的基于路径的方法,其动机是在元路径级别上匹配物品或用户的相似性,推荐结果可以从预定义的元路径中找到引用。RuleRec利用外部KG生成推荐规则。为规则和权重是明确的,所以推荐的理由也是用户可以理解的。最近的研究利用**深度学习模型来自动**挖掘用户-物品对的显著路径,这反映了图中的推荐过程。

4.3 Unified Methods

在embedding-based methods中,只是关注user/item在KG中语义表示来推荐,而path-based methods中,则是关注于语义连接信息来推荐。该类方法则是既考虑到实体、关系的语义,又能考虑到它们的连通性。The Unified Methods方法是基于embedding propagation的,这些方法会在KG的连接结构的引导下细化实体表示。 获得user i 和 item j表示后,再使用公式1.

4.3.1 聚焦于 u i u_i ui

利用历史交互信息refine用户特征表示。首先,提取multi-hop ripple sets S u i k S_{u_i}^k Suik,其中 S u i 1 S_{u_i}^1 Sui1是用户 u i u_i ui参与的items的头一个实体。 这个方法就是用交互过多额multi-hop的邻居来refine user的特征。
在这里插入图片描述
其中, g u ( ⋅ ) g_u(·) gu()是一个连接带有偏差的multi-hop的嵌入函数。 由于传播是从用户参与的项目开始的,所以可以称为是从图中传播用户的喜好。

RippleNet: 第一个提出了preference propagation偏好传播的概念。
首先,RippleNet会给KG中的实体分配初始embedding(使用KGE); 第二步,他会从KG中取样ripple sets S u i k S_{u_i}^k Suik; 为了精细化用户的表示,聚合过程在下面,从 S u i 1 S_{u_i}^1 Sui1开始,每一个头部实体会与候选item v j v_j vj的嵌入交互:
在这里插入图片描述
在这里插入图片描述
通过这个过程,候选 v j v_j vj和头部实体会在关系空间中被计算。
之后,用户的1-order历史交互的反应会被计算:
在这里插入图片描述
在这里插入图片描述
之后迭代地与在 h h h-hop的ripple set S u i k S_{u_i}^k Suik头部实体交互,最后的用户 u i u_i ui的表示可以通过

在这里插入图片描述
得到,最终,喜好分数:
在这里插入图片描述
通过这种方式,RippleNet沿着KG中的路径从历史兴趣传播用户的偏好

AKUPM模型: 与上面不同的是,在第二步中,AKUPM使用了一个自注意力层来学习实体之间的关系,在最后,来自不同order的交互items的邻居也是使用自注意力机制来聚合来获得user的表示;

RCoLM模型:联合训练KG completion 模块和推荐模块,将AKUPM当作backbone。 作者认为两个模块中同一个item应该有相似的latent表示,RCoLm将两个模块统一起来,促进了它们的相互增强。

4.3.2 聚焦于 v j v_j vj

第二组和第一组相同的理念,只不是是用一个item的multi-hop邻居 N v k \mathcal{N}_v^k Nvk来refine item的表示!
在这里插入图片描述
在这里插入图片描述
连接multi-hop邻居的嵌入有两个步骤。第一个步骤,学习候选item v j v_j vj k k k-hop邻居
在这里插入图片描述
其中 α ( e h , r , e t ) \alpha \left ( e_h, r, e_t \right ) α(eh,r,et)表示不同邻居的重要性,之后对于 e h ∈ S v j k e_h \in S_{v_j}^k ehSvjk,表示可以通过下面的更新:
在这里插入图片描述
其中agg是聚合算子。在此过程中,将 k k k-hop邻居的信息与 ( k − 1 ) (k−1) (k1)-hop邻居的信息进行聚合。常用的聚合器有四种:

  • Sum Aggregator:求和聚合器对两个表示进行求和,然后进行非线性变换。
    在这里插入图片描述

  • Concat Aggregator:concat聚合器连接两个表示,然后应用非线性变换。
    在这里插入图片描述

  • Neighbor Aggregator:邻居聚合器直接用邻居的表示替换实体的表示。
    在这里插入图片描述

  • Bi-Interaction Aggregator: 双向交互聚合器考虑实体之间的和和元素乘积关系。第二个术语允许从类似实体传递更多信息。
    在这里插入图片描述

KGCN模型:通过聚合从 v j v_j vj的遥远邻居到 v j v_j vj自身的实体在KG中的嵌入,对候选item v j v_j vj的最终表示进行建模。KGCN首先对候选item的邻居进行抽样,然后迭代地对每个实体的邻居进行固定数量的抽样。从H-hop邻居来时,它通过公式29来迭代的代替 k = H , H − 1 , . . . , 1 k=H,H-1,...,1 k=H,H1,...,1。在迭代过程中,multi-hop邻居能够在内部被传播到候选item v j v_j vj。在这个特征传播过程中,item v j v_j vj的最终表示是它的初始表示和来自multi-hop的邻居的信息的混合。

RippleNet和KGCN是两个相似的框架,不同之处在于,前者是向外传播用户的历史兴趣爱好来建模用户,而后者则从内部学习来自遥远邻居的item表示。此外,KGCN利用了GCN的思想,通过采样固定数量的邻居作为接受域,使得学习过程高效且可扩展。

KGCN-LS模型:添加了一个标签平滑(LS)机制,LS用在了用户交互的消息上并且在KG上传播用户的交互标签。 这可以引导学习进程和为候选item v j v_j vj获得一个全面的表示。

RippleNet和它的变体聚焦于item- KG上的传播机制。 最近一些论文开始探索user-item图上的传播机制。

KGAT模型:直接用embedding propagation来建立users和items的高阶关系。 首先,TransR初始化KG实体;第二步,它从实体本身向外运行实体传播。同样的,实体本身信息会被它的multi-hop邻居迭代的整合:

在这里插入图片描述
在这里插入图片描述
同理,用户的和物品的表示都可以通过其相应的邻居来得到表示。
用户的偏好将通过下面建模:
在这里插入图片描述
这两者是用户的物品的终极表示。

KNI模型: 进一步考虑了item-side(物品端)邻居和user-item(用户端)邻居之间的交互,使用户嵌入和item嵌入的refine过程不分离。

IntentGC模型:它利用图中丰富的用户相关行为来获得更好的推荐。他们还设计了一个更快的图卷积网络,以保证IntentGC的可扩展性

AKGE模型(已经看了):学习user u i u_i ui和候选item v j v_j vj的表示,通过在user-item对的子图中传播信息。AKGE首先是用KGE初始化表示,之后,取样多个路径连接 u i u_i ui v j v_j vj基于这些路径上的成对距离,这也形成了 u i u_i ui v i v_i vi的子图,接下来,AKGE在这个子图中使用一个基于注意的GNN来传播来自邻居的信息,以获得这个user-item对的最终表示。子图的构造过滤出图中关联较少的实体,便于挖掘高阶user-item关系进行推荐。

Summary for Unified Methods:就像前面所说,该方法得益于KG的语义嵌入和path pattern模式。 这些方法利用了嵌入传播的思想来refine在KG中拥有multi-hop的item或者user的表示。 这些工作一般采用GNN-based架构,并自然的适应嵌入传播的步骤。 这之后自从RippleNet被提出,有了新的进展,统一方法继承了path-based的方法的可解释性。传播过程可以被视为在KG中发现用户的偏好模式,这类似于在基于路径的方法中发现连接模式。

4.4 Summary

基于嵌入的方法利用KGE方法对item graph或user-item graph的KG进行预处理,得到实体和关系的嵌入,并进一步集成到推荐框架中。然而,在这种方法中,图中的信息连接模式被忽略了,很少有工作能够提供有原因的推荐结果。基于路径的方法利用user-item graph来发现物品的路径级相似性,方法是通过预先定义元路径或自动挖掘连接模式。基于路径的方法还可以为用户提供对结果的解释。将基于嵌入的方法与基于路径的方法相结合,充分利用双方的信息是当前研究的一个趋势。此外,统一的方法还具有解释推荐过程的能力。

5. 具有知识图的推荐系统数据集

除了准确性和可解释性的好处之外,基于kg的推荐的另一个好处是,这种类型的边信息可以自然地整合到不同应用的推荐系统中。为了证明KG作为侧信息的有效性,在不同场景下对基于KG的推荐系统进行了评估。在本节中,我们根据数据集对这些工作进行了分类,并说明了这些场景之间的区别。本节的贡献有两个方面。首先,我们提供了在各种场景下使用的数据集的概述。其次,我们将说明如何为不同的推荐任务构建知识图。本节可以帮助研究人员找到合适的数据集来测试他们的推荐系统。

我们根据表4中总结的数据集对基于KG的推荐系统进行分组。一般来说,这些工作可以分为七个应用场景,我们将说明不同的工作如何使用每个数据集构建KG。

  • Movie. 在这个任务中,推荐系统需要根据用户过去观看的电影来推断用户的偏好。最常用的两个数据集是:MovieLens和DoubanMovie。MovieLens维护着从MovieLens网站收集的一组数据集,其中最常用的三个稳定的不同评级数的基准数据集是MovieLens- 100k、MovieLens-1m和MovieLens- 20m。每个数据集包含评级、电影的属性和标签。豆瓣电影来源于中国流行的社交媒体网络豆瓣。数据集包括用户之间的社会关系以及用户和电影的属性
    电影相关的推荐KG有不同的构建方法。[2]、[14]、[44]、[45]、[69]、[70]、[73]、[88]、[89]、[91]、[92]、[93]、[95]等文献通过从Satori、DBpedia、Freebase、CN-DBPedia、IMDB中提取电影及其相关属性,构建以电影为中心的项图,丰富电影信息。通过这种方式**,电影通过类型、国家、演员、导演等属性联系在一起**。此项图作为边信息,方便协同过滤模块。另一种方法是直接将用户的评分作为一种关系,并将用户介绍到图表中。[1]、[79]、[82]等文献直接利用MovieLens数据集或DoubanMovie数据集内的电影交互数据和属性来构建用户-项目图,而[66]、[75]、[76]、[77]、[80]、[81]、[83]、[86]、[87]、[96]等文献仍然利用外部数据库来丰富电影侧信息。

  • Book 推荐书籍是另一个流行的任务。常用的数据集有五个:BookCrossing[114]、Amazon-Book[115]、DoubanBook、DBbook2014和IntentBooks[116]。Book-Crossing、DBbook2014、IntentBooks和Amazon-Book包含了用户和图书之间的二进制反馈,每个数据集的KG是通过将图书映射到Satori[2]、[14]、[45]、[88]、[89]、[91]、[92]、[93]、[95]、DBpedia[70]、[87]或Freebase[44]、[90]、[93]中对应的实体来构建的。DoubanBook数据集是从豆瓣上抓取的[117],豆瓣既包含用户-条目交互数据,也包含图书属性,如作者、出版商、出版年份等信息。这项工作[82]利用DoubanBook数据集中的这一知识构建用户-项目图,而不需要外部KG的帮助。

  • Music. Last. FM[118]是目前最流行的音乐推荐数据集。数据集包含关于用户和他们的音乐收听记录的信息。FM在线音乐系统[119]。[44],[45],[89],[90],[91]等论文通过从Freebase或Satori中提取音乐相关的子图来构建项目图。有些论文[87]、[96]利用Freebase或Satori的知识构建用户-项目图,而本文[1]则从Last构建用户-项目图。FM数据集直接。另一个流行的数据集是KKBox数据集,由WSDM杯2018挑战赛发布[120]。这个数据集包含用户-项目交互数据和音乐描述。论文[73]构建了项目图,而[83]在没有利用任何外部数据库的情况下,从该数据集构建了用户-项目图。

  • Product. 最流行的产品推荐任务数据集是Amazon product数据集[115]。该数据集包括多种类型的项目和用户信息,如交互记录、用户评论、产品类别、产品描述和用户行为。这些作品[3]、[13]、[67]、[85]、[94]仅利用该数据集构建用户-项目图,[84]利用外部Freebase数据库丰富项目信息构建项目图。也有一些论文[74]、[94]使用了阿里巴巴淘宝提供的数据。

  • POI.兴趣点(POI)推荐是对新业务和活动(餐厅、博物馆、公园、城市等),基于用户的历史签到数据。最流行的数据集是Yelp Challenge[121],它包含企业、用户、签到和评论的信息。[1]、[3]、[76]、[77]、[79]、[80]、[81]、[82]、[96]等论文利用数据集中的签到、评论和属性数据构建用户-项目图,[90]构建项目图。论文[71]利用CEM数据1推荐下一次行程。另一项研究[91]使用大众点评网[122]提供的大众点评美食数据集进行餐厅推荐。

  • News.新闻推荐之所以具有挑战性,是因为新闻本身具有时效性,而且内容高度浓缩,需要常识才能理解。此外,人们在选择阅读新闻时对话题敏感,可能更喜欢来自不同领域的新闻。传统的新闻推荐模型未能发现新闻之间的高层联系。因此,在该场景中引入KGs[14],[45],[48],[88],寻找不同新闻之间的逻辑关系,提高推荐精度。最受欢迎的数据集是Bing-News,它来源于Bing News的服务器日志[123],其中包含用户点击信息、新闻标题等。要构建新闻推荐的KG,首先要提取标题中的实体。然后,通过提取这些实体在顿悟中的邻居来构造子图。

  • 社交平台. 这个任务是向社区中的用户推荐可能感兴趣的人或会议。其中一个应用是利用收集的微博推文数据在社交平台微博上向用户推荐未被关注的名人[124][68]。虽然用用户-物品图来表示用户与名人之间的情感链接,但通过构建带有Satori知识的物品图来丰富名人的信息。另一个应用是在社交网站MeetUp[125]上为用户推荐线下会议,并提供该平台上的数据。最后一个应用是在学术领域,向使用DBLP数据的研究人员推荐会议[126]。

6 FUTURE DIRECTIONS

在上面的章节中,我们从更准确的推荐和可解释性方面展示了基于kg的推荐系统的优势。虽然已经提出了许多利用KG作为辅助信息进行推荐的新模型,但仍存在一些进一步的机会。在这一部分,我们概述和讨论一些未来的研究方向。

  • 动态推荐 尽管GNN或GCN架构的基于kg的推荐系统取得了良好的性能,但训练过程非常耗时。因此,这种模型可以看作是静态偏好推荐。然而,在某些场景中,例如在线购物、新闻推荐、Twitter和论坛,用户的兴趣可能会很快受到社会事件或朋友的影响。在这种情况下,使用静态偏好建模的推荐可能不足以理解实时兴趣。为了捕获动态偏好,利用动态图网络是一种解决方案。最近,Song等人[127]设计了一个动态的图形注意力网络,通过整合来自朋友的长期和短期兴趣来捕捉用户快速变化的兴趣。按照这种方法集成其他类型的边信息并构建动态推荐的KG是很自然的。

  • Multi-task Learning基于kg的推荐系统可以被自然地视为图中的链接预测。因此,考虑KG的性质,有可能提高基于图的推荐的性能。例如,KG中可能存在缺失的事实,这将导致缺失关系或实体。然而,用户的偏好可能会被忽略,因为这些事实是缺失的,这可能会恶化推荐结果。[70]、[95]的研究表明,联合训练KG完成模块和推荐模块对更好的推荐是有效的。其他研究则采用多任务学习的方法,将推荐模块与KGE任务[45]和项目关系调节任务联合训练[73]。为了获得更好的推荐性能,从其他kg相关任务(如实体分类和分辨率)中开发知识转移将是很有趣的。

  • Cross-Domain Recommendation:最近出现了关于跨领域推荐的研究。这样做的动机是交互数据在各个领域之间是不相等的。例如,在亚马逊平台上,图书评级比其他领域更密集。通过迁移学习技术,可以共享源领域中数据相对丰富的交互数据,以便更好地在目标领域进行推荐。Zhang等[128]提出了一种基于矩阵的跨域推荐方法。后来Zhao等人[129]引入了PPGN,将不同领域的用户和产品放在一个图中,利用user-item交互图进行跨领域推荐。虽然PPGN的性能明显优于SOTA,但user-item图只包含交互关系,不考虑用户和项之间的其他关系。通过将不同类型的用户和产品侧信息合并到用户-产品交互图中,以获得更好的跨领域推荐性能,本调查的后续工作很有前景。

  • Knowledge Enhanced Language Representation:为了提高各种自然语言处理任务的性能,将外部知识集成到语言表示模型中是一种趋势。知识表示和文本表示可以相互细化。例如,Chen等[130]提出了用于短文本分类的STCKA方法,该方法利用来自KGs(如YAGO)的先验知识来丰富短文本的语义表示。Zhang等[131]提出了ERNIE方法,该方法融合了来自Wikidata的知识来增强语言表示,这种方法在关系分类任务中被证明是有效的。虽然DKN模型[48]在新闻中同时使用了文本嵌入和实体嵌入两种方式,但这两种嵌入方式只是简单地串联起来得到新闻的最终表示,而没有考虑两个向量之间的信息融合。因此,将知识增强的文本表示策略应用于新闻推荐任务和其他基于文本的推荐任务中,可以更好地学习表示,获得更准确的推荐结果。

  • Knowledge Graph Embedding Method:根据约束条件的不同,KGE方法有翻译距离模型和语义匹配模型两种。在本调查中,这两种KGE方法被用于所有三种基于kg的推荐系统和推荐任务。然而,没有全面的工作来建议在哪些情况下,包括数据源、建议场景和模型体系结构,应该采用特定的KGE方法。因此,另一个研究方向是比较不同KGE方法在不同条件下的优势。

  • User Side Information:目前,大多数基于kg的推荐系统通过合并项目侧信息来构建图,而很少有模型考虑用户侧信息。然而,用户方面的信息,如用户网络和用户人口统计信息,也可以自然地集成到当前基于kgs的推荐系统的框架中。最近,Fan等[132]使用GNN分别表示用户-用户社交网络和用户-物品交互图,优于传统的基于cf的用户社交信息推荐系统。我们调查的最近一篇论文[96]将用户关系集成到图中,并展示了这种策略的有效性。因此,在KG中考虑用户侧信息可能是另一个研究方向。

7 CONCLUSION

在本文中,我们对基于kg的推荐系统进行了研究,并总结了该领域最近的研究成果。该调查说明了不同的方法如何利用KG作为边信息来改进推荐结果,并在推荐过程中提供可解释性。此外,还介绍了不同场景下使用的数据集。最后,提出了未来的研究方向,希望能促进该领域的发展。基于kg的推荐系统在准确的推荐和可解释的推荐方面很有前景,这得益于kg所包含的丰富信息。我们希望这份调查报告能帮助读者更好地理解这一领域的工作。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值