知识图谱与个性化推荐

知识图谱与个性化推荐

1)知识图谱与个性化推荐

(1)推荐系统的任务与难点

推荐系统分为两类:(1)评分预测;预测用户对物品的评价;例如:电影推荐中,系统需要预测用户对电影的评分,以此为依据推送用户喜欢的电影,使用的数据为用户的评分,能反映喜好;
    (2)预测用户对于物品是否点击。例如:新闻推荐,预测用户点击某新闻的概率优化方案,使用的数据为用户点击/未点击,不等反映喜爱程度,为隐式反馈
    知识图谱与个性化推荐
 2)知识图谱与推荐系统的结合
(1)基于特征的推荐方法

主要是从知识图谱中抽取一些用户和物品的属性作为特征,放入传统的模型中,引入了实体特征,没有引入关系特征。

(2)基于路径的推荐方法

基于路径的推荐方法,以港科大KDD 2017的录用论文《Meta-Graph Based Recommendation Fusion over Heterogeneous Information Networks》为代表。

该方法将知识图谱视为一个异构信息网络,然后构造物品之间的meta-path或者mata-graph的特征。

简单地说,meta-path是连接两个实体的一条特定的路径,比如“演员->电影->导演->电影->演员”这条meta-path可以连接两个演员,因此可以视为一种挖掘演员之间的潜在关系的方式。这类方法的优点是充分且直观地利用了知识图谱的网络结构,缺点是需要手动设计meta-path或meta-graph,这在实践中难以到达最优;同时,该类方法无法在实体不属于同一个领域的场景(例如新闻推荐)中应用,因为我们无法为这样的场景预定义meta-path或meta-graph。
(3)知识图谱特征学习(Knowledge Graph Embedding)

  • 基于距离的翻译模型: 这类模型使用基于距离的评分函数 评估三元组的概率,将尾节电视为头结点和关系翻译得到的额结果,这类方法的代表有TransE,TransR等。
    知识图谱与个性化推荐

  • 基于语义的匹配模型:这类模型使用基于相似度的评分函数评估三元组的概率,将实体和关系映射到隐语义空间中进行相似度度量,这类方法的代表有SML,NTN,MLP,NAM等
    知识图谱与个性化推荐
    3)结合知识图谱特征学习的推荐系统
    知识图谱特征学习与推荐系统相结合,往往有以下几种方式:依次训练、联合训练、交替训练
    知识图谱与个性化推荐

- 依次学习

我们以新闻推荐[1]为例来介绍依次学习。如下图所示,新闻标题和正文中通常存在大量的实体,实体间的语义关系可以有效地扩展用户兴趣。然而这种语义关系难以被传统方法(话题模型、词向量)发掘。
知识图谱与个性化推荐
为了将知识图谱引入特征学习,遵循依次学习的框架,首先需要提取知识图谱的特征,步骤如下:

  • 实体连接(entity linking)。即从文本中发现相关词汇,并与知识图谱中的实体进行匹配;
  • 知识图谱构建。根据所有匹配到的实体,在原始的知识图谱中抽取子图。子图的大小会影响后续算法的运行时间和效果:越大的子图通常会学习到更好的特征,但是所需的运行时间越长;
  • 知识图谱特征学习。使用知识图谱特征学习算法(如TransE)进行学习得到实体和关系向量。

为了将知识图谱引入特征学习,遵循依次学习的框架,首先需要提取知识图谱的特征,步骤如下:
知识图谱与个性化推荐
需要注意的是,为了更准确地刻画实体,我们使用一个实体的上下文实体特征,一个实体e的上下文实体是e的所有一跳邻居节点,e的上下文实体特征为e的所有上下文实体特征的平均值
知识图谱与个性化推荐
知识图谱与个性化推荐
得到实体后,我们的第二步是构建推荐模型,该模型是一个基于CNN和注意力机制的新闻模型:

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