【编者按】微软亚洲研究院社会计算组的研究员们从 深度学习、知识图谱、强化学习、用户画像、可解释性推荐等五个方面,展望了未来推荐系统发展的方向。
在上一篇文章中,我们介绍了 深度学习技术在推荐系统中的应用以及未来可能的研究方向。在今天的文章中,我们将介绍 知识图谱在推荐系统中的应用,并简要说明这项应用面临的机遇与挑战。
推荐系统与知识图谱
在多数推荐场景中,物品可能包含丰富的知识信息,而刻画这些知识的网络结构即被称为知识图谱。物品端的知识图谱极大地扩展了物品的信息,强化了物品之间的联系,为推荐提供了丰富的参考价值,更能为推荐结果带来额外的多样性和可解释性(图1)。
和社交网络相比,知识图谱是一种异构网络,因此针对知识图谱的推荐算法设计要更复杂和精巧。近年来,网络特征学习(network representation learning)逐渐成为机器学习中的一个热门的研究方向。
引入网络特征学习的方法处理推荐系统中知识图谱的相关信息,有助于增强推荐系统的学习能力,提高精确度和用户满意度。
将知识图谱引入推荐系统,主要有如两种不同的处理方式:
第一,基于特征的知识图谱辅助推荐,核心是知识图谱特征学习的引入。一般而言,知识图谱是一个由三元组<头节点,关系,尾节点> 组成的异构网络。由于知识图谱天然的高维性和异构性,首先使用知识图谱特征学习对其进行处理,从而得到实体和关系的低维稠密向量表示。这些低维的向量表示可以较为自然地与推荐系统进行结合和交互。
在这种处理框架下,推荐系统和知识图谱特征学习事实上就成为两个相关的任务。而依据其训练次序不同,又有两种结合形式:
- 知识图谱特征与推荐系统依次进行学习,即先学习特征,再将所学特征用于推荐。
- 交替学习法,将知识图谱特征学习和推荐系统视为两个相关的任务,设计一种多任务学习框架,交替优化二者的目标函数,利用知识图谱特征学习任务辅助推荐系统任务的学习。
第二,基于结构的推荐模型,则更加直接地使用知识图谱的结构特征。具体来说,对于知识图谱中的每一个实体,我们都进行宽度优先搜索来获取其在知识图谱中的多跳关联实体从中得到推荐结果。根据利用关联实体的技术的不同,可分向外传播法和向内聚合法两种方法:
- 向外传播法模拟了用户的兴趣在知识图谱上的传播过程。我们近期的工作RippleNet (RippleNet: Propagating User Preferences on the Knowledge Graph for Recommender Systems, CIKM 2018)使用了向外传播法,将每个用户的历史兴趣作为知识图谱上的种子集合,沿着知识图谱中的链接迭代地向外扩展。
- 向内聚合法在学习知识图谱实体特征的时候聚合了该实体的邻居特征表示。通过邻居聚合的操作,每个实体的特征的计算都结合了其邻近结构信息,且权值是由链接关系和特定的用户决定的,这同时刻画了知识图谱的语义信息和用户的个性化兴趣。
结合知识图谱推荐系统的机遇与挑战
将推荐算法与知识图谱的图计算方法相结合已逐渐成为学术热点,前景广阔。然而现有方法仍有一定局限,有充分的研究空间。
首先,现有模型都属于统计学习模型,即挖掘网络中的统计学信息并以此进行推断。一个困难但更有研究前景的方向是在网络中进行推理,将图推理与推荐系统相结合。
其二,如何设计出性能优秀且运行效率高的算法,也是潜在的研究方向。现有模型并不涉及计算引擎层面、系统层面甚至硬件层面的考量,如何将上层算法和底层架构进行联合设计和优化,是实际应用中一个亟待研究的问题。
最后,现有的模型网络结构都是静态的,而在真实场景中,知识图谱具有一定的时效。如何刻画这种时间演变的网络,并在推荐时充分考虑时序信息,也值得我们未来研究。
下一篇文章我们将围绕“推荐系统与强化学习”的研究展开讨论。想要了解关于推荐系统的更多研究热点,还请持续关注。
欢迎大家点赞、收藏,将更多技术知识分享给你身边的好友。
看了这篇文章的人还看了: