基于知识图谱的推荐系统总结

2021 年 11 月 11 日 机器学习与推荐算法
嘿,记得给“机器学习与推荐算法”添加星标

作者:阳光明媚

| 单位:华东师范大学

研究方向:推荐系统、强化学习

摘要

推荐系统的基本任务是联系用户和物品,解决信息过载的问题,帮助用户找到其感兴趣的内容。个性化的推荐系统更是可以为用户推荐专属的物品目录,尽可能满足用户的个性化需求。但是推荐系统也面临一些挑战,如数据稀疏和冷启动等问题。另一方面,用知识图谱构建用户与物品,或者物品与物品之间的信息可以作为一个外部知识来缓解上述问题,并提高推荐系统的可解释性。知识图谱与推荐系统的结合方式主要包括依次训练、联合训练、交替训练这三种形式,本文介绍了这三种形式下各自的主流方法的模型。基于此,本文讨论了基于知识图谱的推荐系统未来可能的发展趋势。

1 引言

在信息爆炸的社会,人们面对的信息量呈指数级增长。如何构建高效的推荐系统,从海量信息中准确的挑选出对用户有价值,用户感兴趣的信息成了一个至关重要的问题。当下,推荐系统已经在电商,社交平台,个性化内容推荐等,领域发挥了重要作用,成了现代互联网应用场景中不可或缺的一部分。

传统的推荐系统主要包括基于协同过滤的推荐系统,基于内容的推荐系统,以及混合推荐系统。协同过滤算法是从相似度度量出发,考虑物品或者用户之间的相似度进行推荐。基于内容的推荐系统则需要建模用户偏好和物品的特征,相比于协同过滤,基于内容的推荐模型在推荐时会考虑物品的特征。基于协同过滤的方法容易遇到冷启动或者数据系数的问题,而混合推荐按系统可以利用基于内容的推荐系统中的用户与物品信息来缓解协同过滤算法的这一问题。

知识图谱可以用来表示实体之间的关系,如推荐系统中物品与物品、用户与物品、用户与用户之间的关系。这些关系信息可以表示用户偏好与物品相似度等信息,将这些信息引入推荐系统中可以显著缓解推荐系统面临的冷启动与数据稀疏问题。近期出现了一大批研究如何利用知识图谱提升推荐系统性能的工作。从模型结构角度来看,知识图谱与推荐系统的结合有三种形式:依次训练、联合训练、交替训练,下文将对这三种结合形式下的主要工作进行综述。

2 依次训练

依次训练指的是知识图谱首先通过embedding得到实体与关系向量,然后引入推荐系统学习用户向量与物品向量,进行模型训练。知识图谱的embedding与推荐系统的训练是依次进行的。依次训练的代表方法为Deep Knowledge-aware Network (DKN)。

Hongwei et al. DKN: Deep Knowledge-Aware Network for News Recommendation. WWW, 2018.

2.1 问题定义与背景知识

DKN针对的是新闻推荐问题,以往的新闻推荐系统仅从新闻文本的语义表示方面进行学习,没有考虑新闻之间在知识层面的联系。而这种联系包含了用户的偏好或者新闻之间的相似度的信息,可以用来帮助推荐系统更准确的推荐用户感兴趣的新闻。在新闻推荐的问题中,给定一个用户的历史点击的新闻标题  ,每个标题都是一个单词序列  ,每个单词都对应着知识图谱中的一个实体e。给定用户的点击历史,待推荐的新闻列表,以及列表新闻的标题单词与知识图谱中实体的关联,最终目的是预测用户点击列表中新闻的概率。

知识图谱的表示形式是包含实体节点与关系的三元组(h, r, t) ,其中h表示头节点,t表示尾节点,r代表二者之间的关系。有了知识图谱的三元组表示之后,需要得到对实体与关系的编码表示,同时希望保留节点之间的关系,即希望编码表示存在类似h+r=t这样的关系。目前主要通过translation-based方法实现这一目的,此类方法又包括TransE ,TransH ,TransR。其中TransE的训练目标为:

直观上,即希望训练embedding之后得到的表示能够满足h+r-t=0。但是现实中h+r的值可能是不唯一的,是一对多的关系,其他更高级的translation-based方法对这一点进行了改进。

在提取句子特征上,本文使用了最近流行的CNN方法KCNN 。具体的,将每个句子映射到一个  空间,其中d代表单词的维度,n代表句子中单词的个数,如图一所示,可以通过两个不同的卷积核进行特征提举,将最终得到的表示进行拼接即可。

图一 KCNN示意图

2.2 模型介绍

模型的整体架构如图二所示,输出包括候选新闻与用户的历史点击行为。首先通过知识蒸馏的方法,提取出新闻的标题文本的实体的向量与词向量。在获得了标题中的单体与对应的实体向量之后,为了减少embedding过程中的信息损失,利用了一个实体的上下文实体来表示该单词,将原实体向量与实体的上下文向量映射到一个空间里,得到映射的向量之后,作为标题单词向量的扩充,然后用KCNN进行处理。对于处理之后的待选新闻表示,与用户历史点击新闻表示,作者对每一篇历史点击的新闻标题表示与待选新闻表示之间进行了attention操作,根据注意力权重对历史点击新闻表示进行加权平均。最终将历史点击新闻表示与待选新闻表示进行拼接,最后在通过一个深度神经网络输出点击率。

图二 DKN模型示意图

3 联合训练

联合训练指的是同时进行知识图谱的embedding与模型的训练。这里介绍的联合训练的方法为RippleNet。

Hongwei et al. Ripplenet-Propagating user preferences on the knowledge graph for recommender systems. CIKM, 2018.

3.1 问题定义与背景知识

RippleNet的输入包括用户U与物品V的表示,以及用户与物品之间的交互关系  ,即有点击购买观看的行为时  ,否则为0。目标是根据已有的信息构建知识图谱,预测一对没发生过交互的用户与物品之间发生交互的概率,也即点击率。

在RippleNet的论文中将基于知识图谱的推荐系统分为了两类:基于嵌入的方法和基于路径的方法。其中基于潜入的方法指的是将通过知识图谱学习到的实体与关系表示直接嵌入原先的实体向量用于推荐系统训练。而基于路径的方法则通过挖掘知识图谱中用户与物品间的各种关联模式来提供辅助信息,在这里的图是异质图,关联模式是meta-path。异质图可以理解为,图中的节点的类别或关系的类别有不只一类;meta-path指的是图中的一段路径,在异质图中两个节点间可能有多条潜在的meta-path,这种基于路径的信息能够更加直观的描述知识图谱中的信息,但是meta-path需要手工设计。

3.2 模型介绍

整体模型如图三所示。Ripple意为波纹,正如模型所示,输入用户的点击历史作为“波纹”的中心,在每一次迭代时将波纹扩展开来得到新一层的“波纹”集合(不包括之前的“波纹”),随着“波纹”的扩散,用户对新的“波纹”集合中的内容的偏好也会减弱,用户对新得到的“波纹”集合。输入物品的embedding表示,基于应用场景可以选择不同的表示,将物品的表示与此时的波纹集合进行关联,通过下式计算关联概率:

然后通过此概率对尾实体(新的“波纹”)  进行加权,从而完成了一次RippleNet在图上的一次传播。对每次传播所得到的加权向量都进行求和得出一个最终的用户偏好向量,将此向量与物品表示进行叉积,预测最终的点击率。

图三 RippleNet模型示意图

相比于传统的基于mta-path的方法,RippleNet可以根据关联概率来自动的挖掘可能的解释路径,避免了手动设计meta-path。一个可以预见的问题是,随着“波纹”的传播,“波纹”集合可能变得很大,可能会影响模型发现用户的潜在兴趣,文中没有提出直接解决这一问题的方法,但是讨论这种现象的一个潜在好处:用户可能有多个路径来到达同一实体,这些并行路径可以增加模型中用户对重叠的实体的兴趣,类似于真实物理世界中波的合成。

4 交替训练

交替训练任务中,对知识图谱的特征学习任务和模型的点击率预测任务交替进行训练。这方面的工作有MKR。MKR的问题定义与RippleNet的问题定义相同,且所需背景知识前文都已涉及。但是MKR的模型结构非常新颖,下面我们直接开始介绍MKR的模型。

Hongwei et al. Multi-Task Feature Learning for Knowledge Graph Enhanced Recommendation. WWW, 2019.

4.1 模型介绍

与其他结合了知识图谱的推荐系统模型不同,如图四所示,MKR包含知识图谱编码模型、推荐模型、交叉压缩模型这三部分。知识图谱编码部分按照常规的做法,输入知识三元组来有监督的学习尾部表示。推荐模型部分输入用户和物品的表示,最终预测用户对物品的点击率。MKR模型的重点在于交叉压缩模型部分,即图四的C部分。

图四 MKR模型示意图

交叉压缩模型的结构如图五所示,将知识图谱边编码模型的头节点与推荐模型的物品编码作为输入。首先,将两个向量相乘得到交叉向量  ,认为交叉向量包含了二者之间所有可能的交互。然后,将矩阵乘以参数向量进行压缩,重新得到维度与交叉压缩模型的输入向量维度相同的输出向量,从而完成了一次前向传播。

图五 交叉压缩模型示意图

文中认为,交叉压缩模型应该只存在于网络的底层,因为交叉压缩模型是一个信息融合的过程,在网络的深层,特征已经逐渐变得具体,使得信息发生有效融合的可能性降低。

5 总结与展望

本文从从模型结构角度,介绍了利用知识图谱增强推荐系统性能的三种方法。在深度学习时代,除开模型大小、数据量、算力等偏硬件的因素,决定模型性能的主要因素就在于模型结构的设计。从早些年的卷积神经网络,循环神经网络及其改版,到近几年的对抗生成网络,transformer、attention,都表明巧妙的模型(网络)结构设计能带来意料之外的效果。

6 参考文

用bib做的参考文献,挪到微信太麻烦了,都是一些很经典的论文,很容易搜出来的,就直接贴图了:

推荐阅读

推荐系统结合知识图谱简单总结

TKDE2020 | 基于知识图谱的推荐系统综述

SIGIR2020 | 当知识图谱邂逅个性化检索

喜欢的话点个在看吧👇
登录查看更多
4

相关内容

推荐系统,是指根据用户的习惯、偏好或兴趣,从不断到来的大规模信息中识别满足用户兴趣的信息的过程。推荐推荐任务中的信息往往称为物品(Item)。根据具体应用背景的不同,这些物品可以是新闻、电影、音乐、广告、商品等各种对象。推荐系统利用电子商务网站向客户提供商品信息和建议,帮助用户决定应该购买什么产品,模拟销售人员帮助客户完成购买过程。个性化推荐是根据用户的兴趣特点和购买行为,向用户推荐用户感兴趣的信息和商品。随着电子商务规模的不断扩大,商品个数和种类快速增长,顾客需要花费大量的时间才能找到自己想买的商品。这种浏览大量无关的信息和产品过程无疑会使淹没在信息过载问题中的消费者不断流失。为了解决这些问题,个性化推荐系统应运而生。个性化推荐系统是建立在海量数据挖掘基础上的一种高级商务智能平台,以帮助电子商务网站为其顾客购物提供完全个性化的决策支持和信息服务。

知识荟萃

精品入门和进阶教程、论文和代码整理等

更多

查看相关VIP内容、论文、资讯等
知识驱动的推荐系统:现状与展望
专知会员服务
68+阅读 · 2021年11月22日
协同过滤推荐系统综述
专知会员服务
46+阅读 · 2021年11月4日
基于强化学习的推荐研究综述
专知会员服务
83+阅读 · 2021年10月21日
图嵌入推荐系统技术综述,64页pdf422篇文献
专知会员服务
63+阅读 · 2021年9月22日
专知会员服务
56+阅读 · 2021年8月12日
【IJCAI2021】基于图学习的推荐系统综述
专知会员服务
96+阅读 · 2021年5月7日
应用知识图谱的推荐方法与系统
专知会员服务
115+阅读 · 2020年11月23日
基于知识图谱的推荐系统研究综述
专知会员服务
328+阅读 · 2020年8月10日
中文版协同过滤推荐系统综述
机器学习与推荐算法
0+阅读 · 2021年11月5日
基于图嵌入技术的推荐系统长文综述
机器学习与推荐算法
0+阅读 · 2021年9月29日
厦大最新《强化学习推荐系统》综述论文
机器学习与推荐算法
7+阅读 · 2021年9月24日
近期值得读的知识图谱论文,这里帮你总结好了
推荐系统
炼数成金订阅号
28+阅读 · 2019年1月17日
【知识图谱】基于知识图谱的用户画像技术
产业智能官
102+阅读 · 2019年1月9日
推荐系统概述
Linux爱好者
20+阅读 · 2018年9月6日
如何将知识图谱特征学习应用到推荐系统?
人工智能头条
12+阅读 · 2018年6月10日
国家自然科学基金
2+阅读 · 2017年12月31日
国家自然科学基金
7+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
6+阅读 · 2014年12月31日
国家自然科学基金
26+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
4+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
2+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
Directions for Explainable Knowledge-Enabled Systems
Arxiv
26+阅读 · 2020年3月17日
A Survey on Deep Learning for Named Entity Recognition
Arxiv
26+阅读 · 2020年3月13日
Arxiv
102+阅读 · 2020年3月4日
Domain Representation for Knowledge Graph Embedding
Arxiv
14+阅读 · 2019年9月11日
VIP会员
相关VIP内容
知识驱动的推荐系统:现状与展望
专知会员服务
68+阅读 · 2021年11月22日
协同过滤推荐系统综述
专知会员服务
46+阅读 · 2021年11月4日
基于强化学习的推荐研究综述
专知会员服务
83+阅读 · 2021年10月21日
图嵌入推荐系统技术综述,64页pdf422篇文献
专知会员服务
63+阅读 · 2021年9月22日
专知会员服务
56+阅读 · 2021年8月12日
【IJCAI2021】基于图学习的推荐系统综述
专知会员服务
96+阅读 · 2021年5月7日
应用知识图谱的推荐方法与系统
专知会员服务
115+阅读 · 2020年11月23日
基于知识图谱的推荐系统研究综述
专知会员服务
328+阅读 · 2020年8月10日
相关资讯
中文版协同过滤推荐系统综述
机器学习与推荐算法
0+阅读 · 2021年11月5日
基于图嵌入技术的推荐系统长文综述
机器学习与推荐算法
0+阅读 · 2021年9月29日
厦大最新《强化学习推荐系统》综述论文
机器学习与推荐算法
7+阅读 · 2021年9月24日
近期值得读的知识图谱论文,这里帮你总结好了
推荐系统
炼数成金订阅号
28+阅读 · 2019年1月17日
【知识图谱】基于知识图谱的用户画像技术
产业智能官
102+阅读 · 2019年1月9日
推荐系统概述
Linux爱好者
20+阅读 · 2018年9月6日
如何将知识图谱特征学习应用到推荐系统?
人工智能头条
12+阅读 · 2018年6月10日
相关基金
国家自然科学基金
2+阅读 · 2017年12月31日
国家自然科学基金
7+阅读 · 2015年12月31日
国家自然科学基金
1+阅读 · 2014年12月31日
国家自然科学基金
6+阅读 · 2014年12月31日
国家自然科学基金
26+阅读 · 2014年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
4+阅读 · 2013年12月31日
国家自然科学基金
1+阅读 · 2013年12月31日
国家自然科学基金
2+阅读 · 2012年12月31日
国家自然科学基金
0+阅读 · 2012年12月31日
Top
微信扫码咨询专知VIP会员