image.png
时间:28 Feb 2020
作者:中科院计算所、百度、微软等学者
论文链接:https://arxiv.org/pdf/2003.00911.pdf
A Survey on Knowledge Graph-Based Recommender.pdf

作者 单位 研究方向 主页
Fuzhen Zhuang (庄福振) Chinese Academy of Sciences 中科院 迁移学习,模式识别、并行分类、数据挖掘 http://www.intsci.ac.cn/users/zhuangfuzhen/index.htm
Hui Xiong (熊辉) Baidu Talent Intelligence Center 百度人才智库 数据挖掘、知识工程 http://datamining.rutgers.edu/
Xing Xie (谢幸) Microsoft Research Asia 亚洲微软研究院 社交网络,数据挖掘、移动设备、移动交互 https://www.microsoft.com/en-us/research/people/xingx/

Abstract

为了解决信息爆炸问题和提高各种在线应用中用户的体验,推荐系统被提出来进行用户偏好建模。尽管人们已经做出了许多努力来实现更加个性化的推荐,但是推荐系统仍然面临着一些挑战,比如数据稀疏性和冷启动。近年来,以知识图谱作为附加信息生成的推荐引起了人们的极大兴趣。这种方法不仅可以缓解上述问题,而且为推荐的物品提供了可解释性。 本文对基于知识图谱的推荐系统进行了系统的研究。文本收集了这一领域近期发表的论文并从两个角度进行了总结。一方面,我们通过论文中所提出的算法研究如何利用知识图谱进行准确和可解释的推荐。另一方面,我们总结了这些论文中使用过的数据集。最后,提出了几个可能的研究方向。

Background 背景

  • solve the information explosion problem 解决信息爆炸
  • enhance user experience 提高用户体验

Recommder System 推荐系统

  • data sparsity 数据稀疏
  • cold start 冷启动

knowledge graph 知识图谱

  • alleviate the abovementioned issues for a more accurate recommendation 缓解上述推荐系统的问题
  • provide explanations for recommended items 为推荐结果提供可解释性

main content 主体内容

  • systematical survey of knowledge graph-based recommender systems, summarize them from two perspectives 从两个角度总结了基于知识图谱的推荐系统
    • proposed algorithms by focusing on how the papers utilize the knowledge graph for accurate and explainable recommendation 关注如何利用知识图谱提高准确率和可解释性的算法
    • introduce datasets used in these works 总结过去用过的数据集
  • propose several potential research directions in this field 展望,提出该领域有潜力的研究方向

1.Introduction

  • 推荐算法是推荐系统的核心元素,主要分为:基于CF的推荐系统,基于内容的推荐系统,混合推荐系统

    • collaborative filtering (CF)-based recommender systems
    • content-based recommender systems
    • hybrid recom-mender systems
  • 基于CF的推荐模型通过交互数据中用户的偏好基于用户相似度或物品相似度进行推荐,基于内容的推荐系统利用了物品的内容特征。其中基于CF的推荐算法运用的更广泛,因为用户偏好建模和适配多场景。不管是CF还是content仍旧面临着推荐系统的两大挑战(数据稀疏和冷启动),因此为了解决这一问题,混合两种算法的混合推荐系统被提出用于统一交互层相似度和内容层相似度。在这一过程中,探索了多种类型的附加信息(side information),如物品属性(item attributes)、物品评论(item reviews)以及用户社交网络(User’s Social Networks)。

  • 知识图谱作为推荐系统的side information 越来越受到关注。KG是一个异构(heterogeneous)图,物品和其属性可以映射到KG中,用户和其用户附加信息,与物品的联系也可以集成到KG中,就能更精准地捕获偏好。

image.png

  • 这几年来提出很多种类的知识图谱,如 Freebase、DBpedia、YAGO、Google’s Knowlegde Graph

  • 现存的KG-based Recommender systems 主要分为:

    • the embedding-based method 基于embedding的方法
    • the path-based method 基于路径的方法
    • and the unified method 基于统一的方法
  • 将说明上述三种方法细节中的相同点和不同点,并描述为什么实用KG来解释推荐比较难,并且探讨多情境下的知识图谱作为附加信息的服务能力。
  • 分类领域内论文使用的数据集。

  • 篇章结构:Section 2 介绍the foundations of KGs and recommender systems ;Section 3 介绍概念和符号;Section 4 approaches方法;Section 5 evaluated datasets数据集 ;Section 6 potential research directions展望发展方向 ; Section 7 总结

    2.Related Work

2.1 KG

KG是一种表示来自多个域的大规模信息的实用方法[19]。 描述KG的一种常见方法是遵循资源描述框架(RDF)标准[20],其中节点代表实体,而图中的边用作实体之间的关系。 每个边以三元组(头部实体,关系,尾部实体)的形式表示,在图中也称为事实,表示头部实体和尾部实体之间的特定关系。 例如,(美国总统唐纳德·特朗普)表明唐纳德·特朗普是美国总统这一事实。 KG是异构网络,因为它在图中包含多种类型的节点和关系。这样的图具有很强的表示能力,因为可以通过跟随图中的不同边来获得实体的多个属性,并且实体的高级关系可以通过这些关系链接被发现。 知识图的概念是在1980年代提出的[21],当时将KG集成到医学和社会科学专家系统的框架中。 后来,该应用程序扩展到了语言和逻辑领域。 2012年,Google将KG引入了搜索框架,以更好地了解查询并使搜索结果更加人性化[18]。 迄今为止,已经创建了KG并将其应用于多种场景,包括搜索引擎,推荐系统,问答系统[22],关系检测[23]等。
我们在表1中列出了一些流行的KG。根据所涵盖知识的范围,这些KG可分为两类。 第一组是跨领域KG,例如Freebase [15],DBpedia [16],YAGO [17]和NELL [24],而第二组是域特定的KG,例如Bio2RDF [25]。 本次调查的推荐系统中使用了六个跨域KG,我们对其进行了简要介绍:Freebase [15]由Metaweb于2007年推出,于2010年被Google收购。它包含30亿个事实和 到2015年,将有近5000万个实体[26]。 尽管它是一个跨域的KG,但大约77%的信息属于媒体[27]。目前,该数据可通过Google的数据转储[28]获得。DBpedia [16]是一个开放社区项目,由柏林自由大学和莱比锡大学的研究人员与OpenLink Software合作启动。第一个版本于2007年发布,并且每年更新一次。主要知识是从Wikipedia的不同语言版本中提取的,DBpedia将它们组合成大规模的图形结构。 马克斯·普朗克研究所(Max Planck Institute)在2007年引入了YAGO [17](又是另一种伟大的本体论)。它包含超过500万个事实,例如人,地点和组织。 它会自动从Wikipedia和多个来源(包括WordNet [29]和GeoNames [30])中提取并统一知识,然后将它们统一为RDF图。 Satori [31]是Microsoft提出的KG。 与支持Google搜索引擎的Google知识图类似,Satori也已集成到搜索引擎Bing中。 尽管有关Satori KG的公开文件数量有限,但众所周知,2012年Satori由3亿个实体和8亿个关系组成[32]。 CN-DBPedia [33]是最大的中文知识图谱,是复旦大学于2015年开始构建,拥有超过1600万的实体和超过2.2亿的关系。 它会自动从百度百科,互动百科和中文维基百科中提取知识,然后将它们集成到中文数据库中。 该系统无需人工即可连续更新。
image.png

2.2 RS

推荐系统已应用于许多领域,包括电影[2],[44],音乐[1],[45],兴趣点[46],[47],新闻[14],[48],教育[49] ,[50]等。推荐任务是向给定用户推荐一个或一系列未观察到的项目,可以将其制定为以下步骤。 首先,系统学习用户1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图4和项目1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图5的表示给出用户1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图6矩阵和项目1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图7矩阵。 然后,它学习一个评分函数1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图8,该函数通过1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图91 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图10的偏好进行建模。最后,通过对项目的偏好评分进行排序进而生成推荐。 要学习用户/项目表示形式和评分功能,有以下三种主要方法。
协同过滤(Ccollaborative Filtering)。CF假定用户可能会对与他们共享相似交互记录的人选择的项目感兴趣。 交互可以是诸如评分之类的显式交互[51],[52],也可以是诸如单击和查看之类的隐式交互[53],[54]。 为了实现基于CF的推荐,需要来自多个用户和项目的交互数据,这进一步形成了用户-项目交互矩阵。 基于CF的方法包含两种主要技术,基于内存的CF(memory-based)和基于模型的CF(model-based ) [5]。 详细地,基于存储器的CF首先从用户-项目交互数据中学习用户-用户相似性。 然后,根据与特定用户相似的人的交互记录,将未观察到的项目推荐给给定用户。 另外,某些模型可以了解商品之间的相似性,并根据用户的购买历史为用户推荐相似的商品。基于模型的CF方法尝试通过构建推理模型来缓解稀疏性问题。 一种常见的实现方式是潜在因子模型[55],[56],该模型从高维用户-项目交互矩阵中提取用户和项目的潜在表示,然后计算用户和项目与内部产品之间的相似度 或其他方法。
内容过滤(Content-based Filtering)。与基于CF的模型(该模型从全局用户项交互数据中学习用户和项的表示)相比,基于内容的方法从物品项的内容中描述了用户和项。基于内容过滤的假设是,用户可能对与其过去交互的项目相似的项目感兴趣。 通过从项目的辅助信息中提取属性(包括文本,图像等)来获得项目表示,而用户表示则基于个人交互项目的特征。 比较候选项目与用户个人资料的过程实质上是将其与用户以前的记录进行匹配。因此,这种方法倾向于推荐与用户过去喜欢的项目相似的项目[57]。
混合方法(Hybrid Method)。混合方法是利用多种推荐技术,以克服仅使用单一方法的局限性。 基于CF的推荐的一个主要问题是用户项目交互数据的稀疏性,这使得从交互的角度很难找到相似的项目或用户。此问题的一个特例是冷启动问题,这意味着很难推荐新用户或新项目,因为没有任何交互记录就无法确定用户-用户和项目的相似性。 通过将用户和项目的内容信息(也称为用户方信息和项目方信息)合并到基于CF的框架中,可以实现更好的推荐性能[6]。 一些常用的物品附带信息包括物品属性[7],[8],[58],[58],例如品牌,类别; 项目多媒体信息,例如文本描述[59],图像特征[60],音频信号[61],视频特征[62]; 和项目评论[9],[10]。 用户端信息的常见选项涉及用户的人口统计信息[63],包括职业,性别和爱好; 和用户网络[11],[12]。 在本次调查中,基于KG的推荐系统利用KG作为辅助信息,结合了基于CF的技术以获得更准确的推荐。

3.Overview

在研究利用KG作为辅助信息进行推荐的SOTA方法之前,我们首先介绍本文中使用的符号和概念,以消除误解。 为了方便起见,我们在表2中列出了一些符号及其说明。
image.png

  • 异构信息网(Heterogeneous Information Network (HIN))

HIN是一个有向图1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图12,具有实体类型映射函数φ:V→A和链接类型映射函数ψ:E→R。每个实体v∈V都属于实体类型φ(v)∈A,并且每个链接e∈E都属于关系类型ψ(e)∈R。此外,实体类型的数量1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图13和/或关联类型的数量1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图14

  • 知识图谱(Knowledge Graph (KG))

KG 1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图15是一个有向图,其节点是实体,而边是主体-属性-对象三元组。 每个边的形式(头实体,关系,尾实体)(表示为1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图16)表示r是从实体1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图17到实体1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图18的关系。 它可以看作是HIN的一个实例。

  • 元路径 (Meta-path)

元路径 1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图19是在网络模式1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图20的图上定义的路径,该路径定义了类型1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图211 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图22之间的新复合关系1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图23,其中1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图241 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图25。它是在HIN中用于连接对象的关系序列,可用于提取图形中的连通性特征。

  • 元图 (Meta-graph)

类似于元路径,元图是连接HIN中两个实体的另一个元结构。不同之处在于,元路径仅定义一个关系序列,而元图则是不同元路径的组合[64]。 与元路径相比,元图可以在图中的实体之间包含更具表达性的结构信息。

  • 知识图谱嵌入(Knowledge Graph Embedding (KGE))

KGE将KG 1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图26嵌入到低维空间[65]。嵌入过程之后,每个图组件(包括实体和关系)都以d维向量表示。 低维嵌入仍然保留了图形的固有属性,可以通过语义或图形中的高阶邻近度对其进行量化。

  • 用户反馈(User Feedback)

在m个用户U = {u 1,···,u m}和n个项目V = {v 1,···,v n}的情况下,我们定义二进制用户反馈矩阵1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图27如下:
image.png
请注意,1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图29的值为1表示用户1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图30与项目1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图31之间存在隐式交互,例如单击,观看,浏览等行为。此类隐式交互并不一定意味着1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图321 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图33的偏爱。除非另有说明,否则本文中使用的用户反馈是指隐式反馈。 但是,在某些特定情况下,也可以使用明确的反馈来显示用户的偏好。 例如,在电影推荐中,用户明确地将电影的评分范围定为1-5。 在这种情况下,一些论文提取了得分为5的数据,以表明用户的偏好。

  • H-跳邻点(H -hop Neighbor)

图中的节点可以通过多跳关系路径连接:1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图34,在这种情况下,1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图351 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图36的H跳邻点 ,可以表示为1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图37。 注意,1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图38就是1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图39本身。

  • 相关实体(Relevant Entity)

给定交互矩阵R和知识图1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图40,用户u的k跳相关实体集可以表示为
image.png
其中1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图42是用户的历史交互项的集合。

  • 用户扩散集(User Ripple Set)

用户的扩散集定义为三类知识,头部实体为(k-1)跳关系实体1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图43
image.png

  • 实体扩散集(Entity Ripple Set)

实体e∈G的扩散集定义为
image.png

4. Methods of Recommender Systems with knowledge graphs

我们将它们分为三类:基于嵌入的方法,基于路径的方法和统一方法。介绍不同的方法是如何应用知识图谱来改善推荐结果的,为了方便读者查阅文献,我们在表3中汇总了这些论文,列出了他们的出版信息,利用KG进行推荐的方法以及这些作品中采用的技术和框架。
可解释性是另一个人们研究热点。如何为用户推荐的物品提供适当的解释是很有帮助的。与传统的推荐系统相比,基于KG的推荐使得推理的过程变得可用。在本节中还将展示不同的工作如何利用KG进行可解释的推荐。
image.png

4.1 Embedding-based Methods

基于嵌入的方法主要是使用KG中的丰富用户或者物品表示信息,最常使用的是KGE算法,通过KGE算法将知识图谱完成低阶稠密嵌入编码。
KGE算法主要分为两类:翻译距离模型(如 TransE、TransH、TransR、TransD等)、语义匹配模型(如DistMult )

  • 基于用户是否包含在KG种,把基于嵌入的方法分为两类:

【1】KG只使用item和item side information 组成项目图,不包括用户的方法,其核心思路是:可以用以下公式计算1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图47选择1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图48的概率,其中1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图49表示将用户和物品的嵌入映射到偏好的分的函数,该得分函数可以是内部产品、DNN等,在推荐阶段,结果将按照偏好得分的降序生成1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图50
image.png
**

序号 作者 年份 论文名 主要框架和思路
1 Zhang等 2016 Collabora-tive knowledge base embedding for recommender systems 提出CKE框架,采用三种策略提取特征,CF framework ,TransR算法,autoencoder(AE),集成得到表示向量。再计算用户对每个物品的评分函数,通过预测策略生成推荐标准。实验表明,结合结构知识可以提高推荐的效果。
2 Wang等 2018 Dkn: Deep knowledge-aware network for news recommendation 提出DKN框架,TransD算法,CNN,针对新闻场景的特点,需要捕获user’s dynamic interest(用户动态兴趣)通过 attention mechanism(注意力机制)学习historical clicked(历史行为)
3 Huang等 2018 Improving sequential recommendation with knowledge-enhanced
memory networks
提出KSR框架,GRU(RNN),TransE,知识增强的键值内存网络knowledge-enhanced key-value memory network (KV-MN),序列推荐

【2】另一种基于嵌入的方法直接构建用户-项目图,其中用户,项目及其相关属性充当节点。 在用户-项目图中,属性级关系(品牌,类别等)和用户相关关系(共同购买,共同浏览等)均充当边。在获得实体在图表中的嵌入后,可以使用公式1或通过进一步计算用户的偏好考虑通过以下方式嵌入图形中的关系。其中 1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图52 映射用户表示1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图53、项目表示1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图54以及将r嵌入标量的关系。
image.png

序号 作者 年份 论文名 主要框架和思路
1 Zhang等 2018 Learning over knowledge-base embeddings for recommendation 提出 CFKG框架,仅使用矩阵进行得分运算,没有用到Framework
2 Wang等 2018 Shine: Signed heterogeneous information network embedding for sentiment link prediction 提出 SHINE框架,社交网络场景,预测情感链接,AE算法
3 Dadoun等 2019 Location embeddings for next trip recommendation 提出 DKFM框架,用户兴趣点(POI)场景,TransE算法
早期研究通常将KGE转化为低阶稠密特征,近年来,一些研究希望通过实体/关系补全来提高推荐的 performance。
4 Yang 等 2018 A knowledge-enhanced deep recommendation framework incorpo-
rating gan-based models
提出KTGAN框架,GAN, Metapath2Vec model(元路径向量模型)
5 Ye等 2019 Bayes embedding (bem): Refining representation by integrating knowl-
edge graphs and behavior-specific networks
提出BEM框架,双图(用户物品关系图,行为图),TransE, GNN(图神经网络),使用Bayesian framework(贝叶斯框架)来反复优化Eembedding
另一个趋势是采用多任务学习策略,通过联合学习推荐任务来引导KG-ralated task 知识图谱关系任务
6 Cao等 2019 Unifying knowledge graph learning and recommendation: Towards a bet-
ter understanding of user preferences
提出 KTUP框架, jointly learn(联合学习)
7 Wang等 2019 Multi-task feature learning for knowledge graph enhanced recommen-
dation
提出MKR框架, semantic matching KGE model(语义匹配KGE框架),两个部分: cross & compress unit(交叉压缩单元)和share regularization of items(共享item的正则化)
8 Xin等 2019 Relational collaborative filtering: Modeling multiple item relations for recommendation 提出RCF框架,DistMult model(语义匹配模型的一种)
  • 总结
  • 大多数基于嵌入的方法[2],[44],[45],[48],[69],[70],[72],[73],[74]构建具有多种类型的项目边信息的KG来丰富项目的表示形式,并且此类信息可用于更精确地建模用户表示形式。 一些模型[13],[66],[67],[68],[71]通过将用户引入图表来构建用户-项目图,从而可以直接对用户偏好进行建模。实体嵌入是基于嵌入的方法的核心,一些论文使用GAN [69]或BEM [74]完善了嵌入,以提供更好的建议。 基于嵌入的方法本质上利用了图结构中的信息。 文献[45],[70],[73]应用多任务学习策略来联合训练推荐模块以及与图相关的任务,以提高推荐质量。

4.2 Path-based Methods

【1】基于路径的方法构建一个用户-项目图,并利用图中实体的连接模式进行推荐。基于路径的方法在2013年就已经开发出来了,传统的论文将这种方法称为HIN中的推荐方法。通常,这些模型利用用户和/或项目的连接相似性来增强推荐。如何衡量图种两个实体的链接相似度呢?我们采用PathSim(路径相似)公式衡量,公式定义如下:
image.png
其中其中1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图57是实体m和n之间的路径。

【2】另一种基于路径的方法利用不同元路径中实体的语义相似性作为图形正则化来完善HIN中用户和项的表示。然后,可以通过以下等式1预测1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图581 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图59的偏好,其中1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图60表示内积。
通常使用三种类型的实体相似性:
①User-User Similarity(用户 - 用户 相似性):其目标函数如下
image.png
其中||·||F表示矩阵Frobenius范数(F-范数,Frobenius范数定义为矩阵A各项元素的绝对值平方的总和开根,类比L2范数),Θ=[θ1,θ2,···,θL]表示每个元路径的权重,U=[u1,u2,···,um]表示所有用户的隐向量,1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图62表示用户i和j在元路径1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图63中的相似度。如果用户共享有高相似度的元路径,用户-用户相似度将会迫使用户的嵌入在隐空间更加中接近相似度高的元路径。

②Item-Item Similarity (物品 - 物品 相似性):其目标函数如下
image.png
其中,V=[v1,v2,…,vn]表示所有项目的隐向量。 与用户-用户相似度相似,项目的低阶稠密表示更接近元路径相似度高的路径。

③User-Item Similarity (用户 - 物品 相似性):其目标函数如下
image.png
如果用户和项目的基于元路径的相似度很高,则用户-项目相似度项将强制用户和项目的隐向量彼此接近。

不包含用户的项目图的相关研究:**

序号 作者 年份 论文名 主要框架和思路
1 Yu 等 2013 Collaborative filtering with entity similarity regularization in heterogeneous information networks 提出Hete-MF框架,提取不同meta-paths 计算每个paths的 item-item相似度,集成(项目正则化和 non-negative matrix factorization method(加权非负矩阵分解))提取低阶稠密表示。
2 Luo等 2013 Hete-cf: Social-based collaborative filtering recommendation using heterogeneous relations 提出Hete-CF框架,通过找到近似用户的未评分项通过user-user相似度,item-item相似度和user-item相似度,一起正则化表示,因此,Hete-CF 模型优于 Hete-MF 模型
3 Yu 等 2013 Recommendation in heterogeneous information
networks with implicit user feedback
提出HeteRec框架,使用user-item交互矩阵,从而更全面的进行user-item表示的提取。
4 Yu 等 2014 Personalized entity recommendation: A heterogeneous information network approach 提出HeteRec-p框架,为了满足不同meta-path对应不同的users,首先根据用户的历史行为进行聚类,再根据额对应Rec策略进行个性化推荐
5 Zhao 等 2017 Meta-graph based recommendation fusion over heterogeneous information networks 设计了一种FMG框架,为了克服元路径表示能力的限制,使用meta-graph替换 meta-path with。由于元图包含比元路径更丰富的连通性信息,因此FMG可以更准确地捕获实体之间的相似性。
之后,在使用MF生成用户在每个元图上的隐向量,接下应用FM融合不同元图上的user-item表示,以计算偏好得分。FM考虑不同图元之间实体的相互作用,这可以进一步利用连通性模式。
上述基于路径的方法仅利用了用户喜欢的交互数据,为了更好的建模用户的偏好。
6 Shi 等 2015 Semantic path based personalized recommendation on weighted
heterogeneous information networks
提出SemRec框架,考虑了用户喜欢和不喜欢的历史行为。该框架利用加权的HIN和加权的元路径将属性值集成到链接中。 通过对肯定和否定偏好模式进行建模,可以通过这些路径描述更准确的项目关系和用户相似度,以传播真实的用户偏好。
先前方法的另一个缺点是调整超参数的要求繁重,如,the number of selected meta-paths(元路径数目),为了减轻负担。
7 Ma 等 2019 Jointly learning explainable rules for recommendation with knowledge graph 提出RuleRec框架,通过利用外部KG中项目的关联性(如,共同购买,共同浏览等)来学习关联项目之间的关系。RuleRec分为训练规则学习模块和项目推荐模块。规则学习模块首先将项目与外部KG中的关联实体链接。 接下来,它总结了可解释的规则,这些规则以KG中的元路径形式出现。 进一步了解每个规则的相应权重。 然后,项目推荐模块将学习到的规则和规则权重与用户购买历史进行集成,以使用MF技术生成推荐。 由于规则和规则权重是明确的,因此该模型使推荐过程变得可解释。
8 Hu 等 2018 Leveraging meta-path based context for top-n recommendation with a neural co-attention model 提出 MCRec框架,学习元路径的显式表示,路径实例嵌入CNN中,以获得每个路径实例h p的表示。 然后,通过将max-pooling操作应用于属于每种类型的元路径的路径实例的嵌入,来计算元路径嵌入。再经过注意力机制汇总后得到偏好得分
9 Sun 等 2018 Recurrent knowledge graph embedding for effective recommendation 提出 knowledge graph embedding (RKGE)框架,可以自动挖掘用户与项目之间的路径关系,而无需手动定义元路径。
10 Wang 等 2019 Explainable reasoning over knowledge graphs for recommendation 提出 knowledge-aware path recurrent network (KPRN)框架,这些路径使用LSTM层进行编码,并且通过全连接层来预测用户i对物品j的优先级。 通过加权池层汇总每个路径中的分数,可以将最终的偏好估算用于推荐。
11 Huang 等 2019 Explainable interaction-driven user modeling over knowledge graph
for sequential recommendation
设计 EIUM 框架,可捕获用户的动态兴趣以进行顺序推荐。
12 Xian 等 2019 Reinforcement knowledge graph reasoning for explainable recommendation 提出 Policy-Guided Path Reasoning (PGPR) 框架,reinforcement learning (RL,强化学习),以使用强化学习(RL)来搜索用户-项目对之间的合理路径。 他们将推荐问题表述为马尔可夫决策过程,以找到连接KG中用户项对的合理路径。精心设计了路径搜索算法,过渡策略,最终条件和RL奖励,从而训练了代理对用户和物品之间的10条路径进行采样。
13 Song 等 2019 Explainable knowledge graph-based recommendation via deep
reinforcement learning
提出a similar model, EKar*框架,也采用RL技术来产生推荐。
  • 总结
  • 基于路径的方法基于用户-项目图生成推荐,并且在过去,此类方法也称为基于HIN的推荐。 传统的基于路径的方法[3],[75],[76],[77],[78],[79],[82]通常将MF与HIN中提取的元路径集成在一起。 这些方法利用路径连通性来规范化或丰富用户和/或项目表示。 这些方法的缺点是它们通常需要领域知识来定义元路径的类型和数量。 RuleRec [84]试图通过自动利用外部KG中的规则来克服限制。 随着深度学习技术的发展,已经提出了不同的模型[1],[81],[83],[85],[86],[87]来明确编码路径嵌入。 可以使用路径嵌入或通过发现连接用户项对的最优路径(RL,DNN)来生成建议。
  • 基于路径的方法自然会将可解释性带入了推荐过程。 对于传统的基于路径的方法,其动机是在元路径级别上匹配项目或用户的相似性。 推荐结果可以从预定义的元路径中找到参考。 RuleRec利用外部KG生成推荐规则。 由于规则和相应的权重是明确的,因此推荐原因也可供用户使用。 最近的工作利用深度学习模型为用户-项目对自动挖掘显着路径,这在图中反映了推荐过程。

    4.3 Unified Methods

基于嵌入的方法利用KG中用户/项的语义表示进行推荐,而基于路径的方法使用语义连接信息,并且两种方法都只利用到图结构信息的一个方面。为了更好地利用KG中的信息,提出了将实体和关系的语义表示和连通性信息结合起来的统一方法。统一的方法是基于嵌入传播的思想。这些方法以KG中的连接结构为指导,对实体表示进行细化。
【1】一种方法是从用户的互动历史中完善了用户的表示方式。 首先,提取多跳扩散集1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图66(在第3节中定义),其中1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图67是图中一个三元组1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图68,其中 头实体是用户1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图69的参与项。 该方法的总体思路是利用过去交互项的嵌入以及这些交互项的多跳邻点来学习用户嵌入。 学习用户表示的过程可以用以下形式表示:
image.png
其中,1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图71是一个函数,用于将多跳实体的嵌入与偏差连接在一起。 由于传播是从用户参与的物品开始的,因此,此过程可以视为用户在图表中传播的偏好。
**

序号 作者 年份 论文名 主要框架和思路
1 Wang 等 2018 Ripplenet: Propagating user preferences on the knowledge graph for recommender systems 提出 RippleNet框架,Ripple概念提出,核心是根据用户的历史偏好在知识图谱上扩散,扩散到的结点就可以认为是user side information 与用户兴趣有关。需精度原论文。
2 Tang 等 2019 Akupm: Attention-enhanced knowledge-aware user preference model for recommendation 提出AKUPM框架,提出了AKUPM,该模型以点击历史为用户建模。 AKUPM首先将TransR应用于实体表示。 在每个传播过程中,AKUPM都会通过self-attention来学习实体之间的关系,并追加偏置向不同的实体传播用户的偏好。 最后,将来自交互项的不同序列的邻点嵌入与self-attention进行汇总,以获得最终的用户表示形式。
3 Li 等 2019 Unifying task-oriented knowledge graph learning and recommendation 扩展了AKUPM并设计了RCoLM。RCoLM联合训练KG完成模块和推荐模块,其中AKUPM作为骨干模块。 假定一个项目在两个模块中应具有相同的潜在表示,RCoLm会统一两个模块并促进它们的相互增强。 因此,RCoLM 模型优于 AKUPM模型。

【2】另一种方法着重于通过汇总项目多跳邻点1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图72的嵌入来细化项目表示1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图73。 此过程的一般描述是:
image.png
其中,1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图75是候选项1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图76的扩散集,而1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图77是连接多跳邻点嵌入的函数。 连接多跳邻点的嵌入有两个步骤。 第一步是学习候选项1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图78的k跳邻居的表示:
image.png
其中1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图80表示不同邻居的重要性。 然后对于1 [综述]A Survey on Knowledge Graph-Based Recommender Systems - 图81,表示可以更新为:
image.png
其中agg是聚合运算符。 在此过程中,k跳邻居的信息与(k -1)跳邻居的信息进行汇总。 通常使用四种类型的聚合器:
① Sum Aggregator 总和聚集器:Sum Aggregator 将两个表示求和,然后进行非线性变换。
image.png
② Concat Aggregator 连接聚合器: concat Aggregator 将两个表示连接起来,然后应用非线性变换。
image.png
③ Neighbor Aggregator 邻点聚合器:Neighbor Aggregator 直接用邻居的表示替换实体的表示。
image.png
④ Bi-Interaction Aggregator 双向交互聚合器:Bi-Interaction Aggregator 双交互聚合器同时考虑了总和以及实体之间的按元素乘积关系。 第二项允许从类似实体传递更多信息。
image.png
**

序号 作者 年份 论文名 主要框架和思路
1 Wang 等 2019 Knowledge graph convolutional networks for recommender systems 提出KGCN框架,RippleNet和KGCN是两个类似的框架,前者通过向外传播用户的历史兴趣来模拟用户的偏好,而后者则向内从远处的邻点那里学习物品表示。 此外,KGCN通过采样固定数量的邻居作为接收场来利用GCN的思想,这使得学习过程高效且可扩展。
2 Wang 等 2019 Knowledge-aware graph neural networks with label smoothness regularization for recommender systems 提出了一种改进方法KGCN-LS。它进一步在KGCN模型上增加了标签平滑度(LS)机制。 LS机制获取用户交互的信息并在KG上传播用户交互标签,从而能够指导学习过程并获得候选项物品的全面表示。
RippleNet及其扩展专注于在商品KG上使用嵌入扩散机制。 最近,一些论文探索了用户-物品图中的扩散机制。
3 Wang 等 2019 Kgat: Knowledge graph attention network for recommendation 提出了KGAT,它直接通过嵌入扩散对用户和物品之间的高阶关系进行建模。
4 Qu 等 2019 An end-to-end neighborhood-based interaction model for knowledge-enhanced recommendation 提出了KNI,它进一步考虑了项目侧邻居和用户侧邻居之间的相互作用,使得用户嵌入和项目嵌入的优化过程没有分开。
5 Zhao 等 2019 Intentgc: a scalable graph convolution framework fusing heterogeneous information for recommendation 提出了IntentGC,它利用图中丰富的用户相关行为来获得更好的推荐。 他们还设计了一个更快的图卷积网络,以确保IntentGC的可伸缩性。
6 Sha 等 2019 Attentive knowledge graph embedding for personalized recommendation 提出了AKGE,它通过在该用户项对的子图中传播信息来学习用户u i和候选项v j的表示。子图的构造会过滤掉图中较少的相关实体,从而有助于挖掘高阶用户项关系以进行推荐。

4.4 Summary

  • 基于Embedding的方法使用KGE方法对KG(项目图或用户-项目图)进行预处理,以获取实体和关系的嵌入,并将其进一步集成到推荐框架中。 但是,该方法忽略了图中的信息连通性特征,仅有少量工作可以提供推荐结果的原因。
  • 基于路径的方法通过预定义元路径或自动挖掘连通性特征,利用用户-项目图发现项目的路径相似性。基于路径的方法还可以为用户提供推荐结果的原因。
  • 最近的研究趋势是统一基于Embedding的方法和基于路径的方法以充分利用两种方法的信息, 而且,基于统一的方法也可以解释推荐过程。

5.Datasets of Recommender Systems with knowledge graphs

除了准确性和可解释性的优点外,基于KG的推荐的另一个优点是,可以将此类辅助信息自然地合并到针对不同应用的推荐系统中。 为了显示KG作为辅助信息的有效性,已经在不同情况下对基于KG的推荐系统进行了评估。 在本节中,我们将根据数据集对这些作品进行分类,并说明这些场景之间的差异。 本部分的贡献有两块。 首先,我们概述了在各种情况下使用的数据集。 其次,我们说明了如何为不同的推荐任务构建知识图谱。本节可以帮助研究人员找到合适的数据集来测试其推荐系统。
我们根据表4中汇总的数据集将基于KG的推荐系统进行分组。通常,这些作品可以分为七个应用场景,并且我们将说明不同的作品如何用每个数据集构建KG。

image.png**

Movie

在此任务中,推荐系统需要根据过去观看的电影来推断用户的偏好。 最常用的两个数据集是:MovieLens [110]和DoubanMovie。 MovieLens维护着从MovieLens网站[111]收集的一组数据集,其中最常用的是三个具有不同等级编号的稳定基准数据集,MovieLens-100K,MovieLens-1M和MovieLens-20M。 每个数据集都包含评分,电影的属性和标签。 豆瓣电影是从中国流行的社交媒体网络豆瓣[112]中抓取的。 数据集包括用户之间的社会关系以及用户和电影的属性。
有多种方法可以构建与电影相关的KG进行推荐。 一些论文[2],[14],[44],[45],[69],[70],[73],[88],[89],[91],[92],[93], [95]通过从Satori,DBpedia,Freebase,CN-DBPedia或IMDB中提取电影和相关属性,构造了以电影为中心的项目图,以丰富电影的信息[113]。 通过这种方式,电影通过属性进行连接,包括流派,国家/地区,演员,导演等。该项目图用作辅助信息实现协同过滤模块。 另一种方法是直接将用户的评分视为一种关系,并引入用户到图表中。 一些论文[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数据集是从Douban [117]抓取的,该数据集包含用户项目交互数据和书籍属性,例如有关作者,出版者和出版年份的信息。 这项工作[82]通过利用DoubanBook数据集中的这种知识来构建用户项目图,而无需外部KG的帮助。

Music

Last.FM [118]是最受欢迎的音乐推荐数据集。 数据集包含有关用户及其Last.fm在线音乐系统中的音乐收听记录的信息[119]。 一些论文[44],[45],[89],[90],[91]通过从Freebase或Satori中提取与音乐相关的子图来构造项目图。 一些论文[87],[96]利用Freebase或Satori的知识来构建用户项目图,而本文[1]直接根据Last.FM数据集来构建用户项目图。 另一个流行的数据集是KKBox数据集,由WSDM Cup 2018 Challenge [120]发布。 该数据集包含用户项目交互数据和音乐描述。 论文[73]构建了项目图,[83]从该数据集构建了用户项目图,而没有利用任何外部数据库。

Product

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

Point of Interest(POI)

兴趣点(POI)推荐是根据用户的历史值机数据向用户推荐的新业务和活动(餐厅,博物馆,公园,城市等)。 最受欢迎的数据集是Yelp Challenge[121],其中包含企业,用户,签到和评论的信息。 这些论文[1],[3],[76],[77],[79],[80],[81],[82],[96]用签到数据构建用户项目图 ,评论和数据集中的属性,而[90]构建项目图。 论文[71]利用CEM数据集1推荐下一次旅行。 另一项工作[91]使用Dianping-Food数据集,该数据集由Dianping.com [122]提供用于餐厅推荐。

News

新闻推荐具有挑战性[48],因为新闻本身是时间敏感的,内容高度浓缩,需要常识才能理解。
此外,人们在选择要阅读的新闻时对主题敏感,并且可能更喜欢来自各个领域的新闻。 传统的新闻推荐模型无法发现新闻之间的高层联系。 因此,将KG引入此场景[14],[45],[48],[88],以查找不同新闻之间的逻辑关系并提高推荐的准确性。 最受欢迎的数据集是Bing-News,它是从Bing News [123]的服务器日志中收集的,其中包含用户的点击信息,新闻标题等。要构建用于推荐新闻的KG,第一步是在标题中提取实体 。 然后,通过提取Satori中这些实体的邻居来构造子图。

Social Platform

此任务是向社区中的用户推荐可能感兴趣的人或会议。一种应用是使用收集的微博推文数据[68]向社交平台微博上的用户推荐未关注的名人[124]。 尽管用户项目图表示用户和名人之间的情感联系,但还是建立了一个从Satori提取知识的项目图,以丰富名人信息。
另一个应用程序是为社交网站MeetUp [125]上的用户推荐离线会议,并在该平台上提供数据。
最后一个应用程序是在学术领域,以使用DBLP数据向研究人员推荐会议[126]。

Futured directions

前沿方向:

Dynamic Recommendation 动态推荐

尽管具有GNN或GCN架构的基于KG的推荐系统已经取得了良好的性能,但是训练过程却很耗时。 因此,这些模型可以视为静态偏好推荐。 但是,在某些情况下,例如在线购物,新闻推荐,Twitter和论坛场景下,社交事件或朋友会迅速影响用户的兴趣。 在这种情况下,采用静态偏好建模的推荐可能不足以了解实时兴趣。 为了捕获动态偏好,动态图网络(dynamic graph network)被视作是一种解决方案。 最近,Song等。 [127]设计了一个动态图形关注网络,通过结合朋友的长期和短期兴趣来捕获用户快速变化的兴趣。 通过遵循这种方法,自然可以集成其他类型的辅助信息并构建用于动态推荐的KG。

Multi-task Learning 多任务学习

基于KG的推荐系统自然可以视为图中的链接预测(link prediction)。因此,考虑到KG的性质,有可能改善基于图的推荐的性能。 例如,KG中可能存在缺失的事实,这导致关系或实体的缺失,由于缺少这些事实,因此可能会忽略用户的偏好,这可能会使推荐结果恶化。[70],[95]显示了联合训练KG补全模块和推荐模块以获得更好的推荐效果。 另一些工作,利用多任务学习通过与KGE任务[45]和item关系规则任务[73]一起训练推荐模块来完成。利用其他KG相关任务(例如实体分类和解析)中的知识转移来获得更好的推荐性能。

Cross-Domain Recommendation 跨领域推荐

最近,有关跨领域推荐的工作已经出现。 其动机是交互数据不等同跨领域。 例如,在Amazon平台上,书籍评分数据比其他领域更稠密。 使用迁移学习技术,交互数据有着丰富关系的数据的源域中被共享,以便在目标域中更好地推荐。 张等 [128]提出了一种基于矩阵的跨域推荐方法。 后来,赵等人 [129]引入了PPGN,它将来自不同域的用户和产品放在一个图中,并利用useritem交互图进行跨域推荐。尽管PPGN明显优于SOTA,但用户-项目图仅包含交互关系,而没有考虑用户和项目之间的其他关系。根据本文所述,通过将不同类型的用户和项目附加信息合并到用户-项目交互图中以实现更好的跨领域推荐性能。

Knowledge Enhanced Language Representation 知识增强的语言表示

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

Knowledge Graph Embedding Method 知识图表嵌入方法

基于不同的约束,有两种类型的KGE方法:翻译距离模型和语义匹配模型。在本文中,这两种类型的KGE方法用于所有三种基于KG的推荐系统和推荐任务。 但是,没有全面的工作建议在哪种情况下应该采用特定的KGE方法,包括数据源,推荐方案和模型体系结构。因此,另一个研究方向在于比较不同条件下不同KGE方法的优势。

User Side Information 用户附加信息

当前,大多数基于KG的推荐系统通过合并项目辅助信息来构建图形,而很少有模型考虑用户辅助信息。 但是,用户端信息(例如用户网络和用户的人口统计信息)也可以自然地集成到当前基于KG的推荐系统中。 最近,范等人。 [132]使用GNN分别表示用户-用户社交网络和用户-项目交互图,其在用户社交信息方面优于传统的基于CF的推荐系统。 我们调查中的最新论文[96]将用户关系整合到图表中,并显示了该策略的有效性。 因此,考虑KG中的用户方信息可能是另一个研究方向。

Conclusion

在本文中我们研究了基于KG的推荐系统,并总结了在该领域的最新工作。本文说明了不同方法如何利用KG作为辅助信息来改善推荐结果以及在推荐过程中提供可解释性。 此外,提供了不同场景下使用的数据集的介绍。 最后,确定未来的研究方向,以期促进该领域的发展。 基于KG的推荐系统受益于KG中包含的丰富信息,因此有望提供准确的推荐和可解释的推荐。 我们希望这篇综述可以帮助读者更好地了解这一领域的工作。

目前该领域的大牛学者

团队 序号 学者 简介 主页
中科院+斯坦福 1 王鸿伟 上海交大,斯坦福大学博士研究员,研究兴趣包括机器学习和数据挖掘,尤其是图形表示学习机制,算法及其在现实世界数据挖掘场景中的应用,例如知识图,推荐系统,社交网络和情感分析。提出了多个经典模型,如DKN框架、RCF框架、shine模型、MKR框架、RippleNet 模型、KGCN模型。 https://cs.stanford.edu/~hongweiw/
2

何向南

| 中国科学技术大学大数据学院,斯坦福大学,研究兴趣涉及信息检索,数据挖掘和多媒体分析。 | http://staff.ustc.edu.cn/~hexn/ | | | | | | | | 中国人民大学信息学院 | 3 | 文继荣 | 中国人民大学信息学院教授,微软亚洲研究所;KSR框架 | http://info.ruc.edu.cn/academic_professor.php?teacher_id=64 | | | | | | | | The Web Intelligent Systems and Economics (WISE) Lab at Rutgers
Web智能系统和经济学(WISE)实验室 | 4 | 张永峰 | 清华本硕博,麻省理工博士后,罗格斯大学助理教授,研究方向是机器学习与数据挖掘,推荐和搜索系统,知识图,计算经济学和会话式AI的交集,CFKG框架 | http://yongfeng.me/ | | 复旦大学大数据研究所 | 5 | 阳德青 | 复旦大学,数据科学学院副院长,研究方向是知识图,推荐系统,深度学习,社交网络挖掘,提出KTGAN框架,《知识图谱:概念与技术》编者 | http://kw.fudan.edu.cn/people/yangdeqing/ |