KPRN - Explainable Reasoning over Knowledge Graphs for Recommendation 知识图谱上的可解释推理用于推荐
Explainable Reasoning over Knowledge Graphs for Recommendation - He Xiangnan
目录
1.摘要 Abstract
-
- 通过研究知识图谱中的连接,可以将用户项目之间的连接作为路径
- 这种连接不仅揭示了实体和关系的语义,还有助于理解用户的兴趣
- 在本文中:
- 提出模型 KPRN Knowledge-aware Path Recurrent Network 知识感知的路径循环网络
- KPRN通过组合实体和关系的语义来生成路径表示
- 通过利用路径中的顺序依赖项,对路径进行有效推理,进而推断用户项目交互的基本原理
- 同时设计一个新的权重池操作来区分不同路径在连接用户和项目时的重要性,使模型具有一定程度可解释性
2.介绍 Introduction
-
- 背景知识
- 引入辅助数据如用户偏好、物品特征等到推荐系统中是很重要的
- 知识图谱能够提供项目的背景知识和他们之间的关系
- 通过研究KG中的项目链接,用户和项目件的连接反映了其间的基本关系,这是对用户-项目交互数据的补充
- 从KG中提取的额外用户-项目连接知识能够基于推荐系统推理能力 reasoning 和可解释性 explainability
- 通过从路径中综合信息,有助于推断不可见的用户-项目交互
- 这些推理提示了交互背后可能的用户意图,并提供了建议背后的解释
- 以前的工作(知识感知的推荐)
- 路径型 Path
- 引入元路径 meta-paths 以细化用户项目之间的相似性
- 缺点
- 元路径中通常不含关系,因此很难指定路径的整体语义,尤其是在元路径中涉及到关系不同的相似实体的情况下
- 元路径需要预先定义的领域知识,无法自动发现和推理不可见的连接模式
- 嵌入型 Embedding
- 利用KGE技术规范项目表示
- 具有相似连接实体的项目具有相似的表示,有助于对用户兴趣的协同学习
- 缺点
- 缺乏推理能力
- 仅虑实体间的直接关系,没有考虑到多跳关系路径 multi-hop relation paths
- 路径型 Path
- 本文
- 目标
- 推理 reasoning 方面:
- 对实体的序列依赖 sequential dependencies 和连接用户-项目对的路径的复杂关系 relations 建模
- 可解释性 explainability 方面
- 推断用户兴趣时,能够区分不同路径的不同贡献
- 推理 reasoning 方面:
- 方法
- 通过考虑实体和关系来生成路径表示
- 根据路径推断用户的偏好
- 步骤
- 1.从KG中提取用户-项目对之间的合格路径,每个由相关实体和关系组成
- 2.然后通过LSTM对实体和关系的序列依赖建模
- 3.用池化操作聚合路径的表示,以获得用户-项目对的预测信号
- 池化操作能够区分不同路径对预测的贡献,起到注意机制的作用
- 贡献
- 1. 强调在KG上进行显式推理的重要性
- 2. 学习路径语义并融入推荐中
- 3. 构建IM1M数据集
- 目标
-
3.知识感知的路径循环网络
- 背景
- 通过路径的偏好推断
- KG中的三元组清晰描述了项目的直接或间接(多步骤)关系属,构成了给定用户和项目对之间的一条或多条路径
-
- 从推理的角度看,利用所有路径的连通性学习组合的关系表示,并加权组合在一起预测用户和目标项目之间的交互关系
- 问题定义:
- 建模
- 总览
- 输入:每个用户-项目对的路径集 a set of paths of each user-item pair
- 输出:用户与目标项目交互的可能得分
- 三个重要部分
- 1.嵌入层 将实体、实体类型、指向下一节点的关系 的ID信息投影到潜在空间
- 2.LSTM层 对按顺序对元素序列编码,以捕获基于关系的实体的组合语义
- 3.池化层 连接多个路径并输出给定用户和目标项目的最终得分
- 总览
- 背景
- 背景知识
-
-
-
-
- 嵌入层
- 相同的实体对由于中间的关系不同,可能有不同的语义
- 将关系的语义明确纳入路径表示学习是很重要的
- LSTM层
- 可以使用RNN探索序列信息,生成一个对其整体语义进行编码的单一表示 single representation
- LSTM能够记忆序列中的长期依赖关系,有助于推断连接用户和项目实体的路径以估计交互关系的置信度
-
- 输入向量不仅包含顺序信息,还包含实体的语义信息及实体与下一个实体的关系
-
-
- 使用两个全连接层将最终状态投影到输出的预测的分中
- 有权重的池化层
- 对于一个用户-项目实体对,通常在KG中有一个连接路径集合
- 设计一个加权池化操作 weighted pooling function 来聚合所有路径得分
-
- 当 γ趋向于0时,退化为最大池化 max-pooling
- 当 γ趋向于无穷时,退化为平均池化 mean-pooling
- 对于一个用户-项目实体对,通常在KG中有一个连接路径集合
- 嵌入层
-
- 学习过程
- 将推荐任务视为二分类问题 binary classification problem
- 使用逐点学习 pointwise learning
- 目标函数 负对数似然 negative log-likelihood
- 使用L2正则化训练参数θ
-
-
4.实验部分
- 数据集
- MovieLens-1M
- KKBox
- 设置
- 8:2分类构建训练集和测试集;
- 训练集中每个正交互,采用负抽样,配对4个没有交互的负项目;
- 测试阶段正负交互比例为1:100,随机抽取100个负项目与测试集中的正项目配对
- 路径提取
- 截取一定长度的路径并忽略远程连接足以建模用户-项目对之间的连接
- 路径长度大于6会引入噪音实体
- 因此,我们提取所有连接所有用户-项对的限定路径,每个路径的长度最多为6。
- 实验设置
- 评价指标
- [email protected]
-
[email protected]
- 衡量排名前K的积极和消极项目之间的相对顺序
- Baselines
- MF
- NFM
- CKE
- FMG
- 参数设置
- 优化方法 Adam
- 学习率 {0.001,0.002,0.01,0.02}
- L2正则化参数 {10^-5,10^-4,10^-3,10^-2}
- batch size 256
- 实体和关系种类嵌入大小 32
- 实体值嵌入大小 64
- LSTM的单元数量 256
- 评价指标
- 结果研究
- 路径中关系建模的影响
- 在MI这种稠密数据集中,相同的实体会比较多,关系建模能够取得更好的效果,因为能够区分不同关系的相同实体对
- 权重池化的影响
- 在实验中调整γ 实际上0.01与1时效果几乎一致,0.1和10时表现较差
- 从1降到0.1时表现降低,因为类似于最大池化,仅选择最重要的路径
- 从1加到10时表现下降,因为倾向于聚合来自更多途径的贡献,而不是信息最丰富的
- 路径中关系建模的影响
- 样例研究
- 对路径进行推理,推断出用户对目标项目的偏好,并生成合理解释
- 因为模型从这些关键因素:实体、实体类型和关系 中获取了更高级的语义
- 数据集
-
5.相关工作
- 基于嵌入的方法
- 利用KGE指导项目的表示学习
- 例子:CKE,Improving Sequential Recommendation with Knowledge-Enhanced Memory Networks,
- 缺点:KGE的正则化没有完全探索用户-项目之间的连接性
- 基于路径的方法
- 引入连接模式,称为元路径 meta-path
- 元路径:一个实体类型的序列
- 使用用户-项目连接性来提升用户-项目相似度,而不是对路径进行推理
- 缺点:性能很大程度上依赖于元路径的质量,需要领域知识
- 编程模型 programming models
- 学习每条路径的表示,利用实体嵌入上的CNN获得路径的单一表示,再利用RNN
- 缺点:忽略实体和关系在路径中的顺序依赖关系,只涉及实体嵌入,可能损害推理能力
- 引入连接模式,称为元路径 meta-path
- 基于嵌入的方法
-
6.总结
- 利用知识图谱构建路径,作为额外的用户-项目连接性,以对用户-项目交互进行补充
- 提出知识感知的路径循环网络 Knowledge-aware path recurrent network KPRN
- 通过组合实体和关系的语义生成每个路径的表示
- 采用LSTM捕获元素的顺序依赖关系和路径上的原因,以此推断用户的偏好
- 未来工作
- 采用GNN模拟KG中用户偏好的传递过程
- 采用 zero-shot learning ZSL 解决交叉领域的冷启动问题
-