【保姆级】论文阅读与分析《Learning Heterogeneous Knowledge Base Embeddings for Explainable Recommendation》
本文提出了一种基于知识嵌入的可解释推荐系统,旨在通过知识图谱整合异构信息,提升协同过滤的性能并生成个性化推荐说明。该系统通过将用户行为和产品属性编码到知识图中,结合软匹配算法生成推荐路径,使推荐结果更具透明性。实验表明,该方法在推荐系统中表现优异,特别是在生成合理推荐说明方面具有显著优势。未来研究将进一步扩展知识图谱的应用和优化推荐模型。
The paper proposes novel approaches to learning heterogeneous knowledge base embeddings for explainable recommendation systems, authored by Qingyao Ai, Vahid Azizi, Xu Chen, and Yongfeng Zhang.
精读的论文记录下来才不会忘呀!😃
摘要 Abstract
本文目的:阐述基于知识的嵌入方法并提出可解释的推荐系统。具体而言,①开发出了一种创新性的基于知识的表示学习框架,旨在为推荐算法提供异构实体的嵌入表示;②借助嵌入知识库,构建了一种软匹配算法,用于生成推荐物品的个性化说明。
1. Introduction
第一段作者不停地发问:我们是否可以利用大规模结构化的用户行为数据来提升协同过滤算法的性能?是否可以?嗯?是否可以?当然,答案是肯定的!(必须是可以啊,否则下一句就是这篇文的终点[强颜欢笑])
基于知识的嵌入技术成功地将异构信息投射至一个统一的低维嵌入空间,这在一定程度上体现了其优越性。由此,作者思考并提出,通过将多类别用户的特征信息与物品属性信息整合到最终的用户/物品嵌入中,可以在保持知识内在结构的基础上显著提升推荐系统性能。同时,在保留用户/物品/异构实体的知识结构基础上,可以利用模糊推理技术生成个性化推荐物品描述。
在本文中,作者基于知识图谱构建了一种具有可解释性的协同过滤框架。该框架主要通过融合传统协同过滤方法与知识嵌入模型来构建。作者首先提出了user-item知识图谱的概念,该过程将用户行为和物品属性的相关知识提取并编码为关系图结构。随后,作者拓展了协同过滤算法的设计理念,使其能够学习知识图谱,从而辅助生成个性化推荐。最后,对于每一个推荐的物品,作者通过软性匹配算法在知识图谱路径中构建模糊推理模型,以生成具有个性化说明的推荐结果。
在后续章节中,第二章阐述相关工作内容,第三章探讨问题的表述方式,第四章深入探讨基于知识图的协同过滤模型,第五章详细说明生成推荐的软匹配方法,第六章全面讲述实验设置细节,第七章系统分析实验结果,第八章总结研究工作并展望未来研究方向。
2. Related Work
探讨了知识图在推荐系统中的演变历程。早期的知识嵌入方法主要依赖于矩阵分解技术或非参数贝叶斯模型。近年来,神经嵌入技术的突破催生了多种神经知识嵌入方法,如TransE、TransH和TransR。就如理论上讲,Trans系列模型应被视为将尾实体作为头实体和关系的一种翻译模型,但论文将其归类为神经知识嵌入方法,这可能是为了避免混淆。在此,我仅进行'neural knowledge-base embedding approaches'的直译,希望读者能够理解。
这一部分可以借鉴知乎文章对知识图谱嵌入主流模型的系统性介绍,涵盖机器翻译模型、双线性模型、神经网络模型、双曲几何模型和旋转模型等:KGE主流模型简介
3. Problem Formulation
为了将问题数学化、公式化处理,我们在此基础上构建三元组集合知识库 S={(e h,et,r)},其中 e h 分别代表头实体,e t 以头实体为起点,r 表示从头实体到尾实体的关系。这样,目标系统的任务可表示为:1)对于每一个用户 u ,找到一个或一系列最可能被其购买的物品 i ;2)对于每一个被检索的user-item对,基于 S 构建自然语言句子以解释用户选择该物品的具体理由。
为简化模型,作者仅考虑5种实体:
- 该... user 是推荐系统的用户。
- 该... item 是推荐系统的产品。
- 该... word 是产品名称、描述或评价中的词语。
- 该... brand 是产品的品牌或制造商。
- 该... category 是产品所属类别。
于此同时考虑6类实体关系:
- 购买行为( from user to item ):用户对某项商品的购买行为
- 提及( from user to word / from item to word ):某个词语在用户评论或产品评论中被提及
- 属于( from item to category ):物品所属的类别
- 制造商( from item to brand ):物品所属的品牌
- 同时购买行为( from item to item ):在同一订单中,用户同时选择的其他商品
- 历史购买记录( from item to item ):用户之前购买过的商品列表
- 同时浏览行为( from item1 to item2 ):用户在同一浏览页面中,对商品1进行浏览时,也对商品2进行了浏览
4. Collaborative Filtering on Knowledge Graghs
铺垫了这么久,终于,可以进入理论正题了! Follow Me~~~
本文推荐系统采用的协同过滤模型基于用户物品知识图谱。作者在本章中首先介绍了如何利用实体及其关联构建知识图谱体系,随后重点讨论了如何优化模型参数。
4.1 Relation Modeling as Entity Translations
参考论文中的transE方法,将头实体和尾实体表示为潜在向量,将实体关系视为实体间的映射函数,公式化表示为(粗体表向量):e_t = trans( e_h, r ) = e_h + r · (1)示意图见下文:

然而,求解公式(1)是不可行的。一方面,为同一类型实体创建一个潜在向量会导致推荐效果欠佳,因为这种做法未能充分考虑用户和物品之间的差异性;另一方面,采用为三元组集合中的每个实体分配不同潜在表示的方法在理论上也无法奏效,因为一个实体可能与其他多个实体通过相同关系相连。
为了解决这一问题,作者将公式(1)进行了松弛处理:
e_t ≈ trans(e_h, r) = e_h + r *
并基于嵌入的生成框架进行学习。算法的目标是使正三元组出现的概率最大化。换句话说,在图谱中存在(正)三元组时,实体的嵌入向量相似度较高;而当图谱中不存在对应的三元组时,实体的嵌入向量差异较大。公式化地表示为:

在生成模型中,E t 被定义为与 e t 类型相关的所有可能实体的集合。该研究框架是作者参考Mikolov等人的相关工作进行构建的,具体细节可参考博客:Word2Vec 与《Distributed Representations of Words and Phrases and their Compositionality》学习笔记。
由于公式(2)属于softmax函数,最大化条件概率 P 必然会导致 trans(e h, r) 与 e t 之间的相似度提升,同时使 trans(e h, r) 与非 e t 实体之间的相似度降低。通过这种方式,作者成功地将公式(1)转化为可通过迭代算法(如梯度下降)实现的最优化问题。该模型的另一个显著优势在于,它提供了尾实体与翻译模型之间的软匹配理论指导,这一特点对于提升物品推荐的效果具有重要意义。
4.2 Optimization Algorithm
令 S 为训练集中观察到的三元组的集合,计算其可能性,定义如下:

其中,P 是公式(2)所获得的后验概率[注释:后验概率可参见知乎回答:什么是后验概率 ]。然而,在实践中,公式(3)的计算成本较高。为了有效进行训练,作者采用负采样方法来近似计算 P 。具体而言,对于每一个观察到的三元组,作者随机采样一系列与 e t 类型相同的“负实体”,并计算其对数似然:

(4)
其中 k 表示负样本的数量,P_t 被定义为与 e t 类别相关的噪声分布,而 σ 则代表Sigmoid函数,其表达式为 σ = 1/(1 + e^{-x})。据此,可以得出 L(S) 的具体形式为所有正三元组的对数似然之和:
具体而言,L(S)可以表示为所有正三元组的对数似然之和,即:
其中,S 表示正三元组的集合,f(h,t) 表示模型预测的评分。

(5)
作者还对TransE模型中L²范数损失函数进行了测试。实验结果表明,这种模型在对数似然损失函数的基础上,没有带来提升效果。同时,L²范数损失函数在扩展性方面表现不佳。因此,作者最终采用了公式(5)的损失函数来进行嵌入、推荐以及解释说明。关于L²范数损失函数的详细内容,可以参考博客:L1、L2损失函数、Huber损失函数[1]。注:此处E[∙]应指期望。
为了对比分析文章模型与传统协同过滤模型之间的关系,作者受到文章《Neural word embedding as implicit matrix factorization》的启发,在特定关系三元组(e h, et, r)上,通过最大化局部目标函数方程(5)来实现模型优化。

其中,#(e h, et, r) 和 #(e h, r) 分别代表 (e h, et, r) 和 (e h, r) 在训练集中的频率。进一步计算_l(e h, et, r)_ 关于 x = e_t ∙ trans(eh,r) 的偏导数,可以得到:

(7)
当训练过程收敛,偏导数等于0,则可得:

可以观察到,等式左边执行的是潜在向量 **e_t** 和 trans(**e_h, r**) 的乘积运算,而等式右边则实现了 **e_t** 与 (_**e_h,r**)_ 之间的逐点互信息转换过程。由此可见,最大化正三元组的对数似然(基于负采样)这一目标,实际上等价于对分解关系 **r** 的头尾实体对 (**e_h, et**) 的互信息矩阵进行建模。从这一角度来看,本文所提出的模型可以视为一种特殊的分解方法,其核心在于同时处理多种关系矩阵的分解问题。
如公式(8)所示,该模型旨在通过噪声分布_P t_来实现目标。与以往研究的发现一致,研究者观察到在数据集合中尾实体频率较高的关系_r_,其携带的头实体属性信息相对有限。基于此观察,研究者将每个关系_r_(除“购买”关系外)的噪声概率_P t_定义为集合_S_中(e h, et, r)的频率分布,这一设定旨在使那些尾实体频率较高的互信息在优化过程中受到惩罚。而对于“购买”关系,则采用了统一的噪声概率分布_P t_,这一处理方式的目的是为了避免对某些特定项目产生不必要的偏差。
5. Recommendation Explanation with Knowledge Reasoning
在本节中,作者阐述了如何通过提出的方法构建推荐说明。首先,阐述了说明路径的概念,并详细说明了生成自然语言解释的过程。随后,提出了软匹配算法,用于在潜在空间中发现用户-物品对的说明路径。
为了确定用户与物品之间的潜在连接路径,该算法首先构建基于广度优先搜索的路径(从用户_eu_到物品_ei_的最大深度为_z_)。随后,路径被记录下来,并基于软匹配模型(公式10和公式11)计算其概率。最后,通过计算路径概率并对路径进行排序,算法返回最优路径以生成自然语言解释。在本研究中,研究者将_z_作为超参数,并通过增加实验参数值来优化模型,以确保用户与物品之间的非空交集。
5.1 Explanation Path
为避免歧义,其中,'解释路径'和'说明路径'在意义上具有等同性,均指对'Explanation Path'的直译结果。
推荐的说明对应于知识图谱中的合理逻辑推理序列。为了找到合理说明,作者构建了用户与物品在潜在知识空间中的解释路径。公式化表示为:

作者对公式中的各参数变量进行了详细约束和说明,为了便于理解,我绘制了一张图。

换句话说,当存在实体,其能被 e u 和 e i 通过知识图谱中的正三元组进行推理得出时,必然存在合理的解释路径。该图解是作者基于实际案例绘制的算法图解。

在推荐系统中,为用户Bob生成推荐说明时,作者采用了基于关系类型设计的简单模板,并将其应用于解释路径。以图中为例,我们之所以认为Bob会感兴趣在于,他经常在评论中提到“iOS”,而这一术语也常出现在iPad的评论中。此外,Bob倾向于购买苹果公司的产品,而iPad正是该公司的产品。
5.2 Entity Soft Matching
上一节通过具象化的示例清晰阐述了解释路径生成的方法。那么,当正三元组中既不存在用户与被推荐物品之间的关联路径时,我们又该如何生成合理的解释说明呢?就亚马逊评论数据而言,用户-物品矩阵的密度通常低于0.1%。这表明用户和物品的数量处于不同的数量级,这种现象在实际应用中较为常见。为此,作者建议,在潜在空间中构建实体间的软匹配关系,以寻找潜在的解释路径。这种方法的核心在于找到一个中间实体 e x 来连接头尾实体。由于公式和思路与第四章具有相似性,看到这里的读者可以尝试进行推导,具体内容在此不做详细阐述。
6. 实验设置
略
7. 结果分析
7.2 解释路径的案例学习
通过作者本节的案例,深入理解第五节提出的算法。选取具有购买手机记录的用户作为测试案例,系统首先推荐的物品是高速壁式充电器,经数据集验证,这一推荐结果是正确的。下图呈现了翻译过程涉及用户及其相关实体的空间结构:

图中可以看出,可选路径实际上有三条(经过第一轮筛选后),分别为:
B9C的推荐依据是用户常将产品与BTU搭配购买,而B9C也会频繁与BTU搭配,其搭配概率为27.8\% \times 26.57\% = 7.39\%;
B9C的推荐依据是用户常将产品与BYS搭配购买,而B9C也会频繁与BYS搭配,其搭配概率为5.48\% \times 3.41\% = 0.19\%;
B9C的推荐理由是用户常将产品与充电器同类产品搭配购买,而B9C自身属于充电器类别,其搭配概率为2.53\% \times 30.90\% = 0.78\%。
基于软匹配的思路,BTU和BYS即为被筛选出来的 e x,因为第一条解释的关联概率最高,因此被选作推荐物品的合理依据。
8. 结论与展望
略
--------写在最后-------
邀请大家一起交流学习!如有不足或疑问,可以评论留言,感谢指正~
一起共同成长:)
