Large Language Models as Data Augmenters for Cold-Start Item Recommendation论文阅读笔记

Large Language Models as Data Augmenters for Cold-Start Item Recommendation论文阅读笔记

Abstract

​ LLM的推理和泛化能力可以帮助我们更好地理解用户的偏好和项目特征。我们建议利用LLM作为数据增强器,来弥补在训练过程中对冷启动项目的知识差距。我们使用LLM根据用户历史行为的文本描述和新项目描述来推断用户对冷启动项目的偏好。然后通过辅助的成对损失将增强的训练信号纳入学习下游推荐模型。

Introduction

​ 为了缓解冷启动 问题,基于内容的推荐系统利用项目元特征来帮助项目表示学习,即用元特征的转换或它们的组合来替换基于的项目嵌入。希望通过共享元特征将交互作用丰富的项目推广到冷启动项目。

​ 当前已经有方法将用户查询和内容功能转化为文本,并利用生成的LLM模型来构建无id的推荐系统的前景。然而,仍然有必要对大型预训练的模态编码器进行微调,以获得推荐(即参数和架构),这是一个资源密集型的步骤,需要大量的工程工作。此外,为LLM或大型基础模型服务获得这些方法要求的推荐结果的延迟通常超过推荐平台上预期的响应时间。因此,满足工业推荐系统的每秒查询要求是非常昂贵的。

​ 为了转移LLM的能力来解决长期存在的推荐冷启动问题,而不是在服务阶段插入它们,我们研究了它们在当前推荐系统的训练阶段填补数据缺口方面的潜力。在之前的作品中,我们观察到LLM能够理解用户的行为(带有适当的提示),并为用户感兴趣的内容生成上下文(即,直接生成项目或相关主题的标题)

​ 我们要回答的问题是:

​ 1)我们可以利用LLM的推理和泛化能力来生成冷启动项目的合成用户行为

​ 2)通过这些综合交互增加冷启动项目的训练数据是否能提高经典推荐模型的学习?

​ 有了这种与模型无关的方法,我们可以在服务时间期间绕过对LLM推理的慢速API调用,也可以解决冷启动项的数据稀疏性问题。此外,作为数据预处理步骤的增强过程可以很容易地集成到任何工业规模的推荐系统中,为利用LLM的泛化能力提供了一种可扩展的方法。

​ 本文的主要贡献如下:

  • 我们建议进行两两比较,促使LLM根据用户的历史交互来推断用户在项目对之间的偏好;
  • 我们将这些LLM生成的合成用户偏好与两两损失集成,作为常规推荐任务的补充;

Method

增强数据生成

​ 使用PALM,且不进行微调。在应用的过程中,我们简单地将用户交互的项的描述放到提示中。具体来说,在训练集中给定一个用户,我们采用描述性项目标题来表示每个历史交互。为了从这个描述性的用户查询中推断出用户的偏好,我们可以询问用户他/她是否想要一个特定的冷启动项目(点态),或者询问他们他/她是否更喜欢冷启动项目A或B(成对)。相比于点态估计,LLM在成对的任务上的表现更好。

​ 因此,我们探测llm,以在给定用户查询的冷启动项之间生成成对的偏好。特别是,我们使用\(A,B\in I_{cold}\)随机抽样一个项目对(𝐴,𝐵),并构建如图1所示的提示符,以检索用户在𝐴和𝐵之间的偏好。提示中的两两比较确保了我们从每个LLM调用中获得训练信号,以指示用户在两个冷启动项目之间的偏好。相比之下,对用户的随机冷启动项目的点态推断很可能会导致负面标签(不感兴趣),而正面标签很少见。

pk3jJ1K.png

成对的比较损失

​ 为了在训练过程中加入这种增强信号,我们将冷启动项目对的成对偏好预测作为常规推荐任务的辅助任务。由LLM返回的答案将被视为𝑝𝑜𝑠项,而另一项将被视为𝑛𝑒𝑔。考虑到用户𝑢更喜欢冷启动项目𝑝𝑜𝑠而不是冷启动项目𝑛𝑒𝑔,我们有以下成对的损失。

\(\mathcal{L}_{aug}=-\sum_{(u,pos,neg)}\ln\sigma(\hat{y}_{u,pos}-\hat{y}_{u,neg}),\)

总结

整理一下,这篇文章的核心点就是类似于Prompt工程的东西,一次只生成两个候选,且一正一负,这种prompt的形式是一个值得参考的点

posted @ 2024-05-30 20:22  ANewPro  阅读(79)  评论(0)    收藏  举报