目录
摘要
推荐算法引入side info,传统算法(FM)假设每个交互都是一个带有side info 编码的独立实例,这些方法不足以从用户的集体行为中提取出协作信号。本文提出KGAT,显式地构造KG图中地高阶连通性。
1 引言
CF模型无法引入side info。SL模型引入side info的范式:将side info、uid,iid转化成特征向量,将他们送入监督模型来预测得分,比如FM、NFM、WideDeep、xDeepFM。
SL模型将一条交互建模成单独的数据样本,没有考虑交互之间的关系。
由图一可见CF和基于特征的SL模型的局限性,对于target user u1来说:
- CF模型关注历史行为的相似用户,也就是也看了i1的用户,u4
- 基于特征的SL模型,关注于和i1有相似特征(e1)的item,i2
- 忽略了黄色区域和灰色区域
为了解决SL模型的局限性,解决方法为考虑item side info的图形式(将KG和交互图混合,CKG,collaborative knowledge graph),这样就可以探索高阶连通性,就可以到达黄色区域和灰色区域。挑战有:阶数越高,计算复杂度高;高阶关系的加权和选择问题
CKG的研究有基于path的,基于正则化的,各有缺点;本文的KGAT使用GNN,高效、显式的和端到端的方式来对高阶连通性建模。
2 任务定义
- 用户-物品二部图
- 知识图谱,注意关系集合R包含正方向和逆方向(比如 电影被xx主演;xx主演电影;这是两个关系)
- 协调知识图,CKE,将用户行为和物品知识整合成一个统一关系图,将交互看作一种关系,整合两个图
任务描述:输入CKE;输出u对i地预测得分
- 高阶连通性,CF方法建立在用户之间的行为相似性之上,行为相似性就可以用高阶连通性来表示
不同于CF模型,SL模型致力于基于属性的连通性,比如u1可能采用i2,i2和i1有相同的导演;但是SL模型不能展示跨field和相关实例的关系,比如:
3 模型
3.1 嵌入层
使用一种知识图嵌入模型——TransR,学习到实体和关系的表示。每个关系有一个转化矩阵 W r W_r Wr