分享

基于知识图谱的推荐系统

 梅与牛 2019-12-16

作为大数据应用的两大类应用,搜索引擎和推荐系统既相互伴随和影响,又满足不同的产品需求。在作为互联网产品的连接器:连接人、信息、服务之间的桥梁,搜索和推荐有其各自的特点

移联动互网、人工智能等技术的迅速发展为人们的工作生活带来了很多便利,用户面临着海量的信息,传统的搜索算法只能呈现给用户相同的物品排序结果,无法针对不同用户的兴趣爱好提供相应的服务。信息爆炸使得信息的利用率反而降低,这种现象被称为信息超载

搜索引擎和推荐系统是解决信息过载的代表技术。传统的搜索引擎在本质上来讲是帮助用户过滤和筛选信息,这种方式满足了大多数人的需求,但没有提供个性化的服务。相对于传统搜索引擎来说,推荐系统可以兼顾个性化需求和解决信息过载问题。推荐系统是信息过滤系统的一个子集,目的在于根据用户的喜好、习惯、个性化需求以及商品的特性来预测用户对商品的喜好,为用户推荐最合适的商品, 帮助用户快速地做出决策,提高用户满意度

基于知识图谱的推荐系统

解决稀疏性和冷启动问题,常用方法是在推荐算法中引入辅助信息作为输入:社交网络、用户/物品属性、图片/视频/音频/文本等多媒体信息、上下文、知识图谱。知识图谱的出现为大数据环境下的推荐系统设计提供了一种有效途径

知识图谱

知识图谱作为一种新兴类型的辅助信息近几年逐渐引起了研究人员的关注。知识图谱是一种语义网络,其结点代表实体或者概念,边代表实体/概念之间的各种语义关系。一个知识图谱由若干个三元组组成:(实体,关系,实体)、(实体,属性,属性值)

知识图谱包含实体之间丰富的语义关联,为推荐系统提供了潜在的辅助信息来源。知识图谱在诸多推荐场景中都有应用的潜力,例如电影、新闻、景点、餐馆、购物等。和其它种类的辅助信息相比,知识图谱的引入可以让推荐结果更加具有以下特征

  • 精确性(precision) 知识图谱为物品引入了更多的语义关系,可以深层次地发现用户兴趣
  • 多样性(diversity) 知识图谱提供了不同的关系连接种类,有利于推荐结果的发散,避免推荐结果局限于单一类型
  • 可解释性(explainability) 知识图谱可以连接用户的历史记录和推荐结果,从而提高用户对推荐结果的满意度和接受度,增强用户对推荐系统的信任

在推荐系统领域,人们关注的往往是用户与项目之间的联系,缺少对用户与用户、项目与项目等之间的相互联系的考虑。基于知识图谱的推荐系统通过将用户与用户、用户与项目以及项目与项目之间相互连接起来,增强数据的语义信息以进一步提高推荐准确度

知识图谱的提出最初是为了优化搜索引擎, 将数据组织成相互链接并且对于其中的每个实体都富含属性标签,实体间存在多种关系,以此来实现搜索引擎的优化。在对其进行深入研究后, 了解到知识图谱的应用不局限于搜索,在诸如智能问答、推荐系统以及金融诈骗领域均有涉猎

基于知识图谱的推荐系统总体框架

基于知识图谱的推荐系统主要是利用知识图谱对多源异构数据的整合性,可以对大数据环境下互联网上的数据进行知识抽取,得到更加细粒度的用户和项目的特征信息,从而更精准的计算用户与用户、用户与项目以及项目与项目之间的相关性,最后为用户做出推荐

基于知识图谱的推荐系统

基于知识图谱的推荐系统总体框架

基于知识图谱的常见推荐方法

  • 基于特征的推荐方法 将知识图谱弱化为物品属性
  • 基于路径的推荐方法 将知识图谱视为一个异构信息网络,构造物品之间基于meta-path或meta-graph的特征
  • 知识图谱特征学习 为知识图谱中的每个实体和关系学习得到一个低维向量,同时保持图中原有的结构或语义信息。知识图谱特征学习是网络特征学习的一个子领域,知识图谱包含特有的语义信息,因此知识图谱特征学习比通用的网络特征学习需要更细心和针对性的模型设计

知识图谱特征学习的模型分类两类:基于距离的翻译模型;基于语义的匹配模型

知识图谱特征学习的优点

  • 降低知识图谱的高维性和异构性
  • 增强知识图谱应用的灵活性
  • 减轻特征工程的工作量
  • 减少由于引入知识图谱带来的额外计算负担

将知识图谱作为辅助信息引入到推荐系统中可以有效地解决传统推荐系统存在的稀疏性和冷启动问题,将知识图谱特征学习应用到推荐系统中主要通过三种方式

1.依次学习:首先使用知识图谱特征学习得到实体向量和关系向量,然后将这些低维向量引入推荐系统,学习得到用户向量和物品向量

基于知识图谱的推荐系统

为了将知识图谱引入特征学习,遵循依次学习的框架,首先需要提取知识图谱特征。步骤的方法如下

  • 实体连接:从文本中发现相关词汇,并与知识图谱中的实体进行匹配;为了更准确地刻画实体,额外地使用一个实体的上下文实体特征
  • 知识图谱构建:根据所有匹配到的实体,在原始的知识图谱中抽取子图。子图的大小会影响后续算法的运行时间和效果:越大的子图通常会学习到更好的特征,但是所需的运行时间越长

得到实体特征后,我们的第二步是构建推荐模型,该模型是一个基于CNN和注意力机制的新闻推荐算法

  • 基于卷积神经网络的文本特征提取:将新闻标题的词向量、实体向量和实体上下文向量作为多个通道(类似于图像中的红绿蓝三通道),在CNN的框架下进行融合
  • 基于注意力机制的用户历史兴趣融合:在判断用户对当前新闻的兴趣时,使用注意力网络给用户历史记录分配不同的权重

2.联合学习:将知识图谱特征学习和推荐算法的目标函数结合,使用端到端(end-to-end)的方法进行联合学习

基于知识图谱的推荐系统

在推荐系统中存在着很多与知识图谱相关的信息:结构化知识、图像知识、文本知识

Ripple Network模拟用户兴趣在知识图谱上的传播过程,整个过程类似于水波的传播

  • 一个用户的兴趣以其历史记录中的实体为中心,在知识图谱上向外逐层扩散
  • 一个用户的兴趣在知识图谱上的扩散过程中逐渐衰减

3.交替学习:将知识图谱特征学习和推荐算法视为两个分离但又相关的任务,使用多任务学习(multi-task learning)的框架进行交替学习

基于知识图谱的推荐系统

推荐系统和知识图谱特征学习的交替学习类似于多任务学习的框架。该方法的出发点是推荐系统中的物品和知识图谱中的实体存在重合,因此两个任务之间存在相关性。将推荐系统和知识图谱特征学习视为两个分离但是相关的任务,采用多任务学习的框架,可以有如下优势

  • 两者的可用信息可以互补
  • 知识图谱特征学习任务可以帮助推荐系统摆脱局部极小值
  • 知识图谱特征学习任务可以防止推荐系统过拟合
  • 知识图谱特征学习任务可以提高推荐系统的泛化能力

基于知识图谱的推荐系统关键技术

基于知识图谱的推荐系统综合了知识图谱和传统推荐系统的特点,成为了一个新的研究主题,目前正处于初始发展阶段

  • 数据采集与预处理 基于知识图谱的推荐系统的实现首先是数据采集,包括用户信息、交互信息、项目信息、上下文信息等。其中,用户信息主要是用户注册信息、交互信息从日志中获取、上下文信息由用户自主录入或者通过传感器获取、项目信息从各大垂直网站及百科网站中获取
  • 知识图谱的构建 知识图谱构建过程主要包括四个阶段信息抽取、知识融合、知识加工、知识更新
  • 用户偏好获取 用户偏好的获取是为了有针对性地为用户提供服务,为用户提供量身打造的个性化推荐
  • 基于知识图谱的推荐 传统的推荐系统中,例如协同过滤、基于内容的推荐等基本算法同样也可以与基于知识图谱的推荐系统结合。在该过程中,主要是把知识图谱作为一个语义丰富、逻辑推理能力强的数据集融入到推荐生成过程中
  • 推荐效用评价 效用评价在整个推荐流程中非常重要。从准确度、基于排序加权、覆盖率以及多样性指标等 4 个方面来对推荐系统进行评价。基于多样性又提出了 3 个指标:选择、发现和相关性

基于知识图谱的推荐系统

基于知识图谱进行推荐的典型案例

基于知识图谱推荐的重点和难点

  • 对用户偏好的精准建模问题
  • 对大数据的高效处理问题
  • 推荐系统的效用评价问题
  • 如何通过深度挖掘和相关性知识发现提高推荐效果
  • 推荐系统的可扩展性
  • 社交网络信息的充分利用问题

相关学科

数据挖掘、信息检索、计算统计学、认知科学、预测理论、营销学

参考文献

知识图谱的推荐系统综述

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多