RippleNet: Propagating User Preferences on the Knowledge Graph for Recommender Systems
介绍
为了解决基于embedding和基于路径的方法的限制,作者生成了RippleNet.正如涟漪一样,利用用户曾经的点击记录,不断外扩发掘用户可能的兴趣点。
###问题生成
我们有用户与items的交互,以及包含大量实体与关系的三元组的知识图谱,进而预测用户会点击接下来那个item
框架
其实总体就是首先计算item embedding与one hop的实体的相似度,输入softmax,而后加权求和尾部得到对应的embedding,而后继续上述操作,得到H个hop的embedding的求和与对应的item embedding计算,得出预测概率。
定义
首先我们理解两个定义:
偏好的传播
分别利用1-hop的实体与关系与item embedding计算,得到不同的权重
后利用权重加权求和对应t得到向量表示。
重复上述操作H次,并求和如下:
后经过sigmoid函数得到得分。
损失函数
给定知识图谱G与用户的交互矩阵Y,我们希望最大化后验概率:
后验概率展开如下:
对于第一项,我们设为具有零均值和对角协方差矩阵的高斯分布:
第二项:
第三项即我们常用的二分类似然函数:
连乘这三项并求log可得: