徐兵
(四川大学计算机学院,成都610065)
随着互联网信息爆炸式增长,信息总量呈现指数级的增长,人们难以从海量的信息中获取到有用信息,造成了人们面临信息抉择时困难的情况,称为信息过载。为了有效地为用户过滤信息,提出了推荐系统,推荐系统经过20 年的发展,如今正称为研究的热点。其目标是根据用户的历史行为数据来预测用户对项目的偏好,从而为用户推荐合适的物品。与搜索引擎不同的是,推荐系统为用户呈现的信息是具有用户个性化的信息,可达到千人千面的效果,而搜索引擎呈现的信息是根据关键字匹配,是一种大众化的信息。目前推荐系统在购物、影音、图书、旅游、社交关系等方面为用户带来了极大方便,减少了用户决策时间,提升了用户个性化需求的满意度。其学术价值和工业价值受到了广泛的关注,例如亚马逊(Amazon)购物网站35%的销售额来自其推荐系统;视频网站网飞(Netflix),75%的内容来源于推荐系统的推荐。
然而,对于传统推荐系统,数据稀疏性一直是制约推荐系统性能进一步提升的瓶颈。数据稀疏性是指用户数量和物品数量都是海量的,据淘宝网数据显示,淘宝网拥有近5 亿的注册用户,每年有超过6000 万的固定访客,每天的在线商品数超过8 亿件。对于协同过滤算法,因产生购买记录的用户和物品数量仅仅占总量的一小部分,其用户-项目矩阵将及其稀疏,在计算用户与物品间的相似度时,将使推荐结果不准确。为了解决稀疏性问题,研究界一是通过聚类,对原始数据进行将维;二是引入文本评论信息,上下文信息等辅助信息,增加数据源的多样性,提升推荐效果;三是引入深度学习来加强提取用户-项目交互的隐含特征,从而缓解数据稀疏。但是因为深度学习通常被视为一个“黑盒子”,对于推荐结果缺乏可解释性,如何让用户信任推荐系统缺少说服力,为此,如何在缓解数据稀疏性的同时,为推荐结果提供一定的可解释性的问题被提出。
近年来,知识图谱在搜索引擎和自然语言处理的研究引起了学者们的关注。知识图谱是一个蕴含丰富语音信息的异构网络结构图。其含有的多源信息为推荐系统提供了特有的辅助信息,从而缓解数据稀疏性,其语义路径为推荐结果提供逻辑推理支持。本文对近期关于知识图谱应用于推荐系统的文献进行分类和综述。
推荐系统的算法可以分为基于内容的推荐算法、基于协同过滤的推荐算法和混合推荐算法[17]。图1 描述了这些方法的分类。基于内容的推荐,根据项目或内容的元数据,发现项目或内容的相关性,然后基于用户的历史行为(如基于显示反馈的评分、点赞等和基于隐式反馈的搜索、点击、购买等),获得用户的兴趣偏好,从而推荐给用户与其以前购买项目相似的项目。协同过滤算法,已广泛被各类研究机构和行业研究,并在实践中得到了应用。许多网络购物平台(淘宝,京东等)的推荐系统都是基于协同过滤算法进行构建。其算法原理是根据用户-项目的交互历史矩阵,来预测用户对候选项目的偏好。混合推荐算法,指结合基于内容的推荐算法和协同过滤算法的推荐算法,用以避免任何一种方法的局限性。
知识图谱(Knowledge Graph)是2012 年由谷歌公司为提升搜索引擎性能而提出,其通常由多个三元组(头实体、关系、尾实体)构成的异构图,图的节点表示实体,节点之间的边表示关系。图谱中的实体间对应于多个关系,一个关系可认为客观世界的一个事实。将知识图谱引入推荐系统,一是通过将推荐系统的对象(用户或物品)与知识图谱中的实体相互映射,可增强项目与项目之间的联系,更加准确的捕获用户与物品之间的关系,从而缓解数据稀疏性。二是根据知识图谱的逻辑推理,将用户的历史记录与推荐的结果连接起来,为推荐结果提供可解释性。如图1 所示,一个知识图谱的子集包括与三个人、四部电影及其相对应的关系实体。实体之间的联系代表了他们之间的关系,实体关系异质性提供了从不同角度测量实体相似性的可能。例如《疯狂的外星人》的主演是黄渤,通过图谱可观察到黄渤也是《无人区》和《被光抓走的人》的主演,如此,一个用户是黄渤的粉丝,则这用户会喜欢《无人区》或《被光抓走的人》。并且根据关系权重加权会发现,此用户可能会更喜欢《无人区》。
三是通过实体之间的多种关系,有助于合理扩展用户兴趣,并为用户呈现多样性的推荐。
本次综述将根据知识图谱作为推荐系统的辅助信息来解决推荐系统两个方面问题:数据稀疏性和可解释性。
准确性作为推荐系统首要问题,关系到用户对系统的粘度,对提升整体经济价值至关重要。据研究,目前推荐系统的准确性在72%左右,推荐系统的准确度还有进一步提升空间,除了根据用户画像、物品属性,和上下文信息外等辅助信息融入推荐系统外,知识图谱作为更具语义信息的辅助信息,将其融入推荐系统能更好地缓解数据稀疏性,提升准确度。
图1 知识图谱示例
文献[1]提出的CKE 模型,利用TransR 方法对知识图谱的结构信息进行处理,得到实体的结构化信息向量,结合获得的文本信息向量和视图信息向量,形成项目的潜在表示。文献[2]提出的DKN 模型,利用TransD 方法学习知识图谱中的实体向量,并学习实体一跳范围的上下文实体向量,将不同空间的向量使用多通道进行拼接,解决了新闻推荐的三大难题。文献[3]提出的MKR 模型,采用多任务学习框架,将推荐系统与知识图谱特征学习任务交替优化训练,利用知识图谱嵌入协助推荐任务,使推荐更具灵活性和适应性,文献[4]提出的RKGE 模型,使用循环网络对实体间的所有路径的语义进行自动建模,同时通过池化学习个实体间路径的重要性,并将其融合到推荐中,从而发现用户对物品的偏好;文献[5]提出的KGAT 的模型,通过考虑用户与物品之间的不同关系,对用户与物品的多跳关系建模,从而处理用户的偏好问题。文献[6]提出的KGCN 模型,是一种端到端的卷积网络,将物品作为知识图谱领域的中心,从而融合领域信息,减轻数据稀疏性的影响。
因目前推荐系统普遍具有“黑盒化”,即不知道推荐系统如何捕捉用户的兴趣,用户也不明白系统推荐的物品的意义,为了使推荐能具有个性化外的人性化,可解释推荐逐渐成为研究热点。可解释推荐不仅能提升用户信任度和接受度,还能给用户提供一个优先选择物品的机会来提升用户满意度。因为图谱的语义路径具有逻辑推理,研究学者,通过将知识图谱融入推荐,将用户与候选物品的路径,作为给用户推荐的物品的解释,来增强推荐系统的满意度和信任度。
文献[7]提出的KPRN 模型,通过对实体的顺序依赖性和连接用户-项对的路径的复杂关系建模,并能通过路径推理用户偏好,为推荐提供解释性。文献[8]提出的KTUP 模型,根据用户偏好某项目的原因建模,通过将推荐任务与知识补全相结合,来提升推荐结果的准确性和可解释性。文献[9]提出的RippleNet 模型,将知识图谱嵌入通过偏好传播的方式融入推荐中,并自动发现用户交互历史与候选物品间的连接路径,通过路径为结果提供解释。文献[10]提出的EIUM 算法,称为可解释性交互驱动用户算法,其根据用户的历史行为序列来预测用户可能偏爱的物品,从而提供一种顺序推荐的可解释性。文献[11]提出的一种基于规则推荐的联合学习框架,将规则学习的权重作为推荐结果的解释。
本文根据基于知识图谱在解决推荐系统的两个方面进行了综述,即数据稀疏性和可解释性方面。缓解数据稀疏性能进一步提高推荐系统的准确度,使用户更加信任系统捕捉兴趣的能力,为推荐结果提供一种解释,能增强推荐系统的透明度,提升用户的信任度。
随着学者对知识图谱的知识表示,知识推理的研究深入,知识图谱在推荐系统的准确性和解释性上会得到进一步提升,将知识图谱和推荐系统结合也会更加受到关注。