[论文解读] SQL-Rank: A Listwise Approach to Collaborative Ranking
本文提出 SQL-Rank,一种基于排列似然框架的列表级协同排序方法,通过低秩潜在得分矩阵建模用户偏好。该方法利用随机排队过程高效处理并列和缺失数据,在隐式与显式反馈数据集上实现最先进性能,相较于 BPR 和 Weighted-MF 在 top-k 精确率上表现更优,且随数据规模线性扩展。
In this paper, we propose a listwise approach for constructing user-specific rankings in recommendation systems in a collaborative fashion. We contrast the listwise approach to previous pointwise and pairwise approaches, which are based on treating either each rating or each pairwise comparison as an independent instance respectively. By extending the work of (Cao et al. 2007), we cast listwise collaborative ranking as maximum likelihood under a permutation model which applies probability mass to permutations based on a low rank latent score matrix. We present a novel algorithm called SQL-Rank, which can accommodate ties and missing data and can run in linear time. We develop a theoretical framework for analyzing listwise ranking methods based on a novel representation theory for the permutation model. Applying this framework to collaborative ranking, we derive asymptotic statistical rates as the number of users and items grow together. We conclude by demonstrating that our SQL-Rank method often outperforms current state-of-the-art algorithms for implicit feedback such as Weighted-MF and BPR and achieve favorable results when compared to explicit feedback algorithms such as matrix factorization and collaborative ranking.
研究动机与目标
- 开发一种列表级协同排序方法,将完整用户排序视为排列,而非单个评分或成对比较。
- 解决点对点与成对方法的局限性,如对评分尺度的敏感性及项目比较间独立性假设。
- 在统一框架中处理隐式反馈、显式评分、并列与缺失数据。
- 为用户与项目联合增长下的列表级排序方法提供理论基础框架。
- 设计一种时间复杂度为线性的高效算法,可扩展至大规模数据集。
提出的方法
- 该方法将用户排序建模为从低秩潜在得分矩阵生成的排列,通过加权瓮模型分配概率,其中项目被选中的概率与其潜在得分的非负函数成正比。
- 在排列模型下将协同排序形式化为最大似然估计问题,将完整观测到的排序列表视为单一实例。
- 提出一种新颖的随机排队(SQ)过程,通过在每次迭代中随机重采样排列来处理并列与缺失数据,提升鲁棒性。
- 该算法采用线性时间优化方案,处理观测评分的时间复杂度为 O(n m̄ r),其中 n 为用户数,m̄ 为每位用户的平均项目数,r 为排名长度。
- 使用随机梯度下降方法优化似然目标,基于完整列表概率更新潜在因子。
- 通过将观测到的排序直接整合到似然函数中,支持显式与隐式反馈。
实验结果
研究问题
- RQ1是否一种将完整用户排序建模为排列的列表级协同排序方法,能在推荐准确率上超越现有的点对点与成对方法?
- RQ2在不牺牲计算效率的前提下,如何在列表级框架中有效建模用户排序中的并列与缺失数据?
- RQ3当用户与项目数量共同增长时,列表级排序方法的理论统计性能如何?
- RQ4在实践中,使用完整列表概率(而非 top-k)是否能提升排序质量?
- RQ5能否设计一种适用于列表级协同排序的线性时间算法,同时保持高准确率与可扩展性?
主要发现
- 在 Movielens1m 数据集上,SQL-Rank 在所有对比方法中取得最高的 precision@1(0.50736),显著优于矩阵分解(MF)的 0.00050。
- 在 Yahoo Music 数据集上,SQL-Rank 的 precision@1 达到 0.14983,优于 BPR 与 Weighted-MF,并在 NDCG@10 与 P@5 上持续提升。
- 随机排队(SQ)过程使 Movielens1m 上的精确率提升超过 10%,证明其在处理并列与缺失数据方面的有效性。
- 在似然损失中使用完整列表(k=50)相比部分列表(k=5,10,25)显著提升性能,NDCG@10 从 0.648 提升至 0.751。
- 尽管使用 Julia 实现,SQL-Rank 的训练速度仍快于 BPR 与 Weighted-MF,归因于其 O(n m̄ r) 的线性复杂度,而 BPR 每轮迭代的复杂度为 O(n m̄² r)。
- SQL-Rank、Primal-CR++ 与 List-MF 的预测 top-k 列表高度相似,表明其具有稳定一致的排序行为;而 MF 产生的 top-k 列表则高度发散。
更好的研究,从现在开始
从论文设计到论文写作,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。