推荐系统旨在根据用户的偏好数据预测个性化的排名。随着语言模型(LM)的兴起,基于 LM 的推荐系统因其丰富的世界知识和强大的推理能力而受到广泛关注。大多数基于 LM 的推荐系统将历史交互转化为语言提示,将正向项目作为目标响应,并使用语言建模损失来微调 LM。然而,目前的优化目标未能充分利用偏好数据,也未针对个性化排名任务进行优化,这阻碍了基于 LM 的推荐系统的性能。
受人类偏好对齐中直接偏好优化 (DPO) 的最新进展以及 softmax 损失在推荐中的成功的启发,我们提出了 Softmax-DPO (S-DPO) 来将排名信息灌输到 LM 中,帮助基于 LM 的推荐系统区分首选项目和负向项目,而不是仅仅关注正向项目。
具体来说,我们将用户偏好数据中的多个负向项目纳入考虑,并设计了一个针对基于 LM 的推荐系统量身定制的 DPO 损失的替代版本,该版本与 softmax 采样策略相关联。从理论上讲,我们将 S-DPO 与负采样上的 softmax 损失联系起来,发现它具有挖掘难负样本的副作用,这确保了它在推荐任务中的出色能力。从经验上讲,在三个真实世界数据集上进行的大量实验表明,S-DPO 能够有效地模拟用户偏好,并进一步提高推荐性能,同时缓解 DPO 的数据似然下降问题。