近年来,大语言模型(LLM)在不同领域被广泛采用,尤其是自然语言处理(NLP)和计算机视觉。这种趋势也蔓延到了推荐系统(RS)领域。然而,大多数工作都将LLM当成传统RS的一个模块(譬如特征提取器),这可能无法充分利用LLM的生成能力。与其将推荐过程分成多个阶段(例如计分和重排),不如用LLM将这个过程简化为单个阶段:直接从物品池中生成推荐。
这篇综述通过考察三个问题来回顾基于LLM的生成式推荐的进展、方法和未来方向:1)什么是生成式推荐,2)为什么RS应该发展成生成式推荐,3)如何实现基于LLM的各种生成式推荐任务。希望这篇综述能够为探索这个新兴课题提供所需的背景和引导。
论文:https://arxiv.org/abs/2309.01157
这些年来,RS无疑让我们的日常生活变得更为方便,特别是在帮我们找到感兴趣的东西时,例如电影、音乐和餐厅。同时,LLM处理各种任务的强大能力也给人工智能(AI)领域的从业者及普罗大众留下了深刻的印象。因此,很自然地要考虑RS和LLM的结合。尽管自然语言是一种表达能力极强的媒介,但它也可能会含糊不清。例如,当部署LLM用于车辆识别和调度时,使用模糊的描述(比如“一辆黑色SUV”)来识别车辆相较于精确标识(如车牌)是更加危险的。同样,这种模糊性在需要唯一物品标识的推荐场景中也可能是个问题,因为RS需要保证为用户做出的推荐是真实存在的,以避免幻觉问题。这也解释了为什么在RS中通常每个用户/物品都会被分配一个ID。尽管如此,目前大多数工作对ID的理解通常仅限于一种形式,即将每个ID视为一个向量。在这篇综述里,我们将ID的定义进行了扩展:
定义1(推荐系统中的ID):推荐系统中的ID是由一组token组成的序列,它可以唯一标识某个实体,包括用户和物品。ID可以采用多种形式,例如单个向量、数字token序列或者单词序列(包括物品标题、物品简介,甚至是完整的新闻)。
举例来说,电商平台上的产品可以被分配一个item_7391的ID,并被进一步表示为<item><_><73><91>的token序列。值得注意的是,ID不必由数字token组成。只要它是一个物品的唯一标识,它就可以被视为该物品的ID。例如,电影《指环王》的片名就可以认为是该电影的ID。ID甚至可以是没有任何具体含义的单词序列,例如“ring epic journey fellowship adventure”。实际上,传统RS中的ID可以被视为上述定义的一个特例,即只有一个token的序列。在这个定义下,ID类似于文本中的单词序列,因而很自然地适应自然语言环境和LLM。
由于真实系统中的物品数量巨大,传统RS通常采用多级过滤的范式——先用一些简单有效的过滤方法(例如基于规则的方法)将候选物品的数量从数百万减少到数百,然后将SOTA算法应用到余下的物品上,进一步选取少数物品来进行推荐。因而,这些算法其实并未应用于所有物品,而仅作用于最后数百个。
LLM的生成能力有潜力将RS的多级过滤范式重塑成单级过滤。在生成式推荐的场景下,LLM本身可以是单个完整的推荐流程:直接生成要推荐的物品,从而消除多级过滤的必要。换句话说,基于LLM的推荐算法隐式地作用于系统中的所有物品,以决定要推荐哪些。我们将这样的过程称之为生成式推荐,并将其正式定义为:
定义2(生成式推荐):生成式推荐系统直接生成推荐或推荐相关的内容,而不需要一一计算每个候选的分数来进行排序。
从更广泛的意义上讲,这符合AI研究的趋势:从判别式人工智能(例如分类和回归)渐渐转向生成式人工智能(例如ChatGPT)。
有了上述定义,我们首先在第2节中回答为什么RS会朝着生成式推荐方向发展。在第3节中,我们回顾可以在LLM场景中保留协同信息的ID创建方法。之后,我们在第4节中总结如何在LLM上实现典型的推荐任务,并在第5节中探讨LLM时代的机遇。最后,第6节是这个综述的结语。
值得注意的是,我们这篇综述与最近五篇综述(基于LLM的推荐)有两大不同之处:1)我们的综述以生成式推荐为重心,为了清晰起见,剔除了判别式推荐模型;2)我们在推荐系统的启发下,为基于LLM的推荐研究提出了一套分类准则,而不是依照NLP领域的LLM分类法。
综上所述,这篇综述有以下贡献: