论文作者:马婷,中国科学院信息工程研究所直博生
抽取并利用知识图谱(KG)中的多跳关系路径可以提高推荐系统的性能,并提供可解释性。然而,现有的工作仍面临着两个主要的挑战:用户偏好的错误传播和模型的弱解释性。提取并利用用户物品对之间的所有路径会引入不相关的路径,从而导致用户偏好的错误传播。尽管定义元路径在一定程度上可以缓解错误传播问题并提供一定的解释性,但模型的性能将严重依赖于预定义的元路径;最近一些基于GCN的模型在推荐任务上取得了较好的性能,但未能提供可解释性。为了解决上述问题,本文提出了KR-GCN,能够在提高推荐系统性能的同时,提供非预定义的DAG图形式的解释能力。
KR-GCN的亮点主要包括:
1.为了缓解错误传播问题,文章利用知识图谱表示方法计算三元组的打分,并采用核采样自适应地选择用户物品对之间的路径,以有效去除冗余信息。2.为了提升推荐的性能并保证解释的多样性,文章将用户物品交互数据和知识图谱结合构成一个异构图,利用图卷积网络学习异构图的表示,然后采用路径级的注意力机制来区分不同路径的贡献并预测最终的交互概率,提升最终解释的相关性。3.在三个数据集上进行实验,与基线模型相比,本文所提出的模型在性能上取得了一定的提升,同时,人工评估验证了KR-GCN 可信赖的解释能力。
KR-GCN包括四个模块:图编码模块、路径抽取与选择模块、路径编码模块和偏好预测模块。图编码模块旨在学习异构图中的节点表示,路径抽取与选择模块旨在从异构图中抽取出用户和物品之间的路径并从中选择出高质量的推理路径,路径编码模块用于学习推理路径的表示,偏好预测模块则根据推理路径来预测用户的偏好。
模型整体框架如下:
•图编码
为了学习用户、物品和知识图谱中实体的表示,KR-GCN利用图表示模型GCN对包含用户物品交互数据和知识图谱的异构图进行编码。
其中
•路径抽取与选择
本文在异构图上抽取用户物品对之间的多跳路径,用于获取用户的潜在兴趣的表示。然而考虑用户物品对之间的所有路径会涉及不相关的路径,导致错误传播问题。虽然定义元路径可以缓解错误传播的问题,但设计正确的元路径需要对特定领域的知识有深入的了解。为了解决错误传播和知识依赖问题,本文对用户物品对之间的不相关路径进行了修剪。对于用户物品对 (u, v),本文找到u和v之间的路径集合
考虑到在知识图谱中迭代每个用户物品对之间的所有路径效率低下,本文采用启发式的路径搜索算法进行路径抽取和选择。具体地,我们设计了一种基于特征转换的方法来为三元组打分,并利用核采样在用户物品对之间的路径中自适应地选择三元组,我们使用
在计算了三元组
在每一跳,三元组从累积概率超过阈值的最小可能的三元组中选择,其中累积概率是通过对三元组的概率分数求和来计算的,采样的三元组的数量可以根据概率分布动态增加或减少,为了进行核采样,三元组分数被归一化用来计算三元组的概率。
其中
其中p是概率阈值。然后选择
•路径编码
虽然
KR-GCN 利用LSTM和注意力机制对选择的推理路径进行编码,该模块将图编码模块和路径抽取与选择模块的输出作为输入,图编码模块提供节点表示,路径提取和选择模块提供路径信息。由于路径中不同节点之间存在多跳关系信息和顺序依赖关系,因此该模块旨在捕获多跳关系信息并对每条路径内的顺序依赖关系进行编码。对于路径序列
其中
•偏好预测
在推荐中,不同的路径通常对预测用户偏好的贡献不同,为了区分每个用户物品对之间不同路径对推理的不同贡献, KR-GCN采用了路径级的自注意力机制,学习每条路径上的路径权重,然后具有不同权重的多跳路径被聚合以表示用户的偏好。
其中
本文在Amazon-book,Yelp2018和Last-FM三个数据集上进行实验,KR-GCN 在三个数据集上的性能都优于基线模型,性能比较结果验证了 KR-GCN 的有效性。
与基线模型中的最佳性能结果(即Amazon-book中的JNSKR、Yelp2018和Last-FM 中的 KGAT)相比,KR-GCN的Recall@20分别提高了 4.9%,8.5% 和 2.5%,NDCG@20分别提高了4.4%,5.0% 和 2.1%。我们将所提KR-GCN 优越的推荐性能归因于利用图结构信息和语义信息,并选择了更有助于预测用户偏好的推理路径。
我们从Amazon-book中选择了一个示例来展示KR-GCN的可解释性,可以发现,与对比模型相比,KR-GCN 在用户和物品之间提供了更多类型的关系。
本文提出了KR-GCN用于可解释性推荐,文章将用户物品交互数据和知识图谱集成到异构图中,并使用图卷积网络对异构图进行编码,为了解决图中的错误传播问题,文章设计了一种基于特征转换的方法对用户物品对之间的多跳路径内的三元组进行打分,并利用核采样自适应地选择三元组。为了提供可解释性,文章引入了路径级的自注意力机制来区分不同选择路径的贡献并预测交互概率,同时提供权重最高的路径作为推荐的解释。
OpenKG
OpenKG(中文开放知识图谱)旨在推动以中文为核心的知识图谱数据的开放、互联及众包,并促进知识图谱算法、工具及平台的开源开放。
点击阅读原文,进入 OpenKG 网站。