基于图的推荐算法(2): HOP-Rec: High-Order
前言
- RecSys2018: 融合图结构、并结合MF思想的推荐算法
- 相关研究参见:基于图的推荐算法(1): Query-based Music Recommendations via Preference Embedding - 简书 (jianshu.com)
HOP-Rec: High-Order Proximity for Implicit Recommendation (acm.org)
- 更新(12202020):源码位置:C++代码 https://github.com/cnclabs/smore
摘要
两种最流行的方法是基于因子分解(MF)和基于图的模型,前者通过将观察到的用户-物品的直接交互因子化来获取用户偏好,后者从用户-项目交互构建的图中提取间接偏好*。
在本文中,提出了一个统一的和有效的方法,综合了这两种方法。该方法通过在图上随机浏览,从每个用户的邻域物品中获取高阶信息。
我们的方法没有对转移矩阵进行分解,而是引入了一个置信加权参数来同时模拟所有的高阶信息,为此我们维护了一个稀疏的用户-物品交互矩阵,并使用随机游动来丰富每个用户的矩阵。
相关知识
协同过滤通常用于利交互数据进行推荐,因为它能在不同的推荐策略具有较好表现,且不需要领域知识。有两种主流的 CF 模型:基于分解思想的 潜在因素模型(Latent Factor)和基于图的模型。
潜在因子模型通过分解用户-项目矩阵来发现用户和项目之间的交互作用中的共享潜在因子,矩阵分解模型是这类方法中最具代表性的。
此外,最近的文献更多地关注从内隐数据优化项目排名,而不是预测外显项目得分。大多数这样的方法都假设用户对未观测到的物品不太感兴趣; 因此,这些方法被设计用来区分观测到的(正的)项目和未观测到的(负的)项目。
基于图的模型研究用户-项目二部图中固有的节点之间的高阶接近性(high-order proximity)。
基于图的方法在某种程度上是基于分解方法的扩展,因为它们在交互二部图中显式地建模了用户和项目之间的高阶亲近度。
所谓的高阶亲进度如下图所示:
关键的形式定义包括:交互图,k阶近邻度,如下:
关键在于K阶近邻的定义,其中反映了从当前节点u到其k近邻用户节点的转移概率。利用转移概率与衰变因子(decay factor)的乘积来显式地衡量两个节点之间的近邻关系。模型方法
本文将MF与基于图的方法进行结合:
面向隐式反馈数据的MF优化形式定义如下:
上面是典型是Point-wise的优化方式,用的更多的还是Pairwise的训练方式,基于排序的思想,如BPR和WARP:
本文构建了一个统一的框架 HOP-Rec,该框架(1)在给定的用户-项交互矩阵中获取高阶偏好信息,(2)通过在相应的交互图上进行随机浏览来获得大规模的真实世界数据集。
其中i即正例,表示从当前用户u的采样序列中采样得到的物品(根据k阶概率分布进行采样),跟当前用户存在k阶近邻关系
而i'即负样例,是从所有物品中进行均匀采样得到的。
相当于通过带有衰减因子的随机采样RW进行近似的高阶矩阵分解。
通过这样的设置,该方法不仅通过引入高阶偏好信息来平滑正样例(观察物品)和未知物品之间的严格边界,而且使得该方法能够适用于大规模的真实数据集。
RW具体实现如下:给定采样起点u,采样序列为,是用户u的k阶近邻物品; 考虑到实际中,用户节点和物品节点的度 在现实数据集中通常是幂律分布(power-law distribution,长尾分布/二八原则),采用统一抽样方法时,大多数采样路径都是低度的用户和物品。 即交互记录比较少的节点。
考虑到这一点,我们在 RW 过程中使用了度抽样,也就是说,对于 RW 抽样的每一步,我们分别对用户和项目进行了概率密度(u)、 de (i)的抽样:
即表示节点的度,表示当前节点x序列中的下一个节点;而表示节点y在序列中的前一个节点。
对于高阶的情况,可以通过上式中的不同路径的转移概率联乘的形式得到。
采用简单的衰减机制,控制不同阶关系的权重。
具体模型通过ASGD异步随机梯度下降来进行优化求解
实验结果
总结
这篇工作在二部交互图上进行了进一步的高阶挖掘,并结合MF进行优化,并没有单纯采用基于图嵌入的思想进行学习;利用随机游走挖掘高阶关系,同时扩充了MF的正例样本,平滑了MF中正负样本的边界。
总体看还是比较有创新的,但随着图神经网络的火热,这种单纯利用基本的图结构上的多阶关系发展基本停滞....
END
本人简书所有文章均为原创,欢迎转载,请注明文章出处 。百度和各类采集站皆不可信,搜索请谨慎鉴别。技术类文章一般都有时效性,本人习惯不定期对自己的博文进行修正和更新,因此请访问本人简书主页查看最新信息https://www.jianshu.com/u/40d14973d97c