论文地址:https://arxiv.org/pdf/2306.05817.pdf
这篇论文主要探讨了推荐系统(RS)如何从大型语言模型(LLM)中获益。论文首先指出,随着在线服务和网络应用的快速发展,推荐系统已成为缓解信息过载和提供个性化建议的关键工具。然而,尽管传统推荐系统(CRM)在过去几十年中取得了显著进展,但仍存在一些局限性,例如缺乏开放领域世界知识和难以理解用户潜在偏好和动机。
论文提出,大型语言模型(LLM)因其在各种自然语言处理(NLP)任务中展现出的通用智能和类人能力而备受关注。LLM的这些能力主要源于其广泛的开放世界知识、逻辑和常识推理能力以及对人类文化和社会的理解。因此,LLM的出现为推荐系统的设计提供了新的研究方向,即是否可以整合LLM的通用知识和能力来弥补CRM的局限性。
论文从两个正交方面系统地总结了现有的研究成果:LLM可以在推荐系统的哪些阶段发挥作用(“WHERE”问题),以及如何适应LLM以改进推荐系统(“HOW”问题)。对于“WHERE”问题,论文讨论了LLM在推荐系统的不同阶段(如特征工程、特征编码器、评分/排名函数、用户交互和管道控制器)可能扮演的角色。对于“HOW”问题,论文调查了训练和推理策略,并提出了两个细粒度的分类标准,即是否在训练期间调整LLM的参数,以及是否在推理阶段涉及传统推荐模型。
此外,论文还强调了在将LLM适应到推荐系统时面临的三个主要挑战:效率、有效性和伦理问题。最后,论文总结了调查结果,并讨论了LLM增强推荐系统的未来前景。为了进一步推动这一新兴方向的研究社区,作者还积极维护了一个GitHub仓库,收集了与此相关的论文和其他资源。
整体而言,这篇论文为理解大型语言模型如何增强推荐系统提供了一个全面的视角,并为未来的研究方向和实践提供了宝贵的指导。
0 概述
随着互联网技术的不断进步和网络应用的蓬勃发展,推荐系统(RS)已经成为解决信息过载问题、满足用户个性化需求的重要工具。尽管推荐系统在过去几十年取得了显著的成果,但传统的推荐模型(CRM)仍存在一些缺陷,例如缺少开放领域的世界知识,以及难以理解用户的潜在偏好和动机。与此同时,大型语言模型(LLM)在各种自然语言处理(NLP)任务中展现出了令人瞩目的通用智能和类似人类的能力,这主要得益于它们丰富的开放世界知识、逻辑和常识推理能力,以及它们对人类文化和社会的深刻理解。因此,大型语言模型的兴起为推荐系统的研究提供了新的方向,即我们是否可以利用大型语言模型的常识和推理能力来弥补传统推荐模型的不足。在本文中,我们将对这一研究方向进行全面的调查,并从实际推荐系统整个流程的角度提供一个概览。具体来说,我们将从两个正交的方面对现有的研究工作进行总结:大型语言模型在推荐系统中的适应位置和适应方式。对于“WHERE”问题,我们将探讨大型语言模型在推荐流程的不同阶段可能扮演的角色,包括特征工程、特征编码器、评分/排序函数、用户交互和流程控制器。对于“HOW”问题,我们将研究训练和推理策略,得出两个细粒度的分类标准,即在训练过程中是否调整大型语言模型,以及在推理过程中是否结合传统推荐模型。我们将分别为“位置”和“方式”问题提供详细的分析和一般发展路径。然后,我们将从效率、有效性和伦理性三个方面阐述将大型语言模型应用于推荐系统中的关键挑战。最后,我们将总结调查结果并讨论未来的前景。
1 引言
随着在线服务的快速发展,推荐系统(RS)在匹配用户的信息需求和缓解信息过载方面变得日益重要。它们为用户提供个性化的建议,覆盖了电子商务、电影、音乐等多个不同领域。尽管推荐任务的形式各异(例如,顶级推荐和序列推荐),但推荐系统的共同学习目标是估计给定用户对每个候选项目的偏好,并最终为用户提供一个项目的排名列表。
尽管传统的推荐系统在过去几十年中取得了显著进展,但其推荐性能仍不尽如人意,主要受到以下两个缺点的影响:
- 传统的推荐系统通常是面向特定领域的系统,它们通常基于特定领域内的离散ID特征构建。因此,它们缺乏开放世界的知识来获取更好的推荐性能(例如,增强用户兴趣建模和项目内容理解),以及跨不同领域和平台的迁移能力。
- 传统的推荐系统通常旨在以数据驱动的方式优化特定的用户反馈,如点击和购买,其中用户偏好和潜在动机通常基于在线收集的用户行为隐式建模。因此,这些系统可能缺乏推荐解释性,并且无法充分理解用户在各种情境中复杂且易变的意图。此外,用户无法主动引导推荐系统按照他们的要求进行定制化推荐,也无法通过提供详细的自然语言指令来实现。
近年来,随着大型基础模型的出现,它们在处理数据挖掘领域中许多具有挑战性的问题时提供了有前景和通用的见解。一个代表性的形式是大型语言模型(LLM),由于其对开放世界知识的庞大记忆、逻辑和常识推理能力以及对人类社会和文化的意识,它在各种语言处理任务中展现了令人印象深刻的通用智能。通过使用自然语言作为通用的信息载体,不同形式、模态、领域和平台的知识可以被普遍集成、开发和解释。因此,大型语言模型的出现激发了推荐系统设计的灵感,即我们是否可以整合LLM并从它们的通用知识中受益,以解决传统推荐系统的上述固有缺陷。
最近,RS研究人员和从业者已经尝试在当前的推荐流程中使用LLM,并在提升不同规范推荐过程(如特征建模和排名)的性能方面取得了显著进展。一些最近的调查也总结了这一领域的当前状态,主要从如何适配LLM(例如,预训练、微调和提示)的角度来讨论在特定模块中进行预测或解释的方法。然而,仍然缺乏一个全面的视角,即推荐系统如何拥抱大型语言模型,这对于系统地指导LLM增强推荐的研究、实践和服务至关重要。
与现有关于此主题的调查不同,本文从整个工业推荐系统的流程角度提出了LLM增强推荐系统的系统性视角。LLM目前在推荐系统的各种阶段被利用,并通过不同的技术与现有系统集成。为了对最新的研究进展进行全面回顾,如图1所示,我们提出了关于LLM增强推荐系统的研究问题,从以下两个正交的角度进行分析:
- “WHERE”问题关注于在RS中适配LLM的位置,并讨论LLM在当前推荐系统流程的不同阶段可以扮演的角色,即特征工程、特征编码器、评分/排名函数、用户交互和流程控制器。
- “HOW”问题集中于如何适配LLM进行RS,其中两个正交的分类标准被执行:(1)我们是否会在训练阶段冻结大型语言模型的参数,以及(2)我们是否会在推理阶段涉及传统推荐模型(CRM)。
为了提供全面的调查和清晰的发展方向,我们扩大了大型语言模型的范围,并将那些相对较小的语言模型(例如,BERT、GPT2)也纳入讨论,因为它们通过提示在处理文本特征方面发挥了作用,而排除了仅将NLP领域的预训练范式应用于基于ID的传统推荐模型(例如,BERT4Rec)的工作。
为了提供全面的调查和清晰的发展方向,论文在附录A中提供了一个相关的研究工作表格,其中列出了适配LLM到RS的相关研究,并附上了详细的信息,例如LLM参与的阶段、LLM骨干和LLM调整策略等。
2 背景与基础知识
在深入探讨我们调查的细节之前,我们希望介绍以下背景和基本概念:
(1) 基于深度学习技术的现代推荐系统的一般流程
(2) 大型语言模型的一般工作流程和概念。
2.1 现代推荐系统
如图2所示,现代基于深度学习的推荐系统可以被描述为一个包含六个关键阶段的信息循环:(1) 数据收集,(2) 特征工程,(3) 特征编码器,(4) 评分/排名函数,(5) 用户交互,以及 (6) 推荐流程控制器,这些阶段用不同的颜色表示。
• 数据收集。数据收集阶段通过向用户展示推荐项目来收集在线服务的显式和隐式用户反馈。显式反馈表示用户的直接响应,如评分,而隐式反馈则来自于用户行为,如点击、下载和购买。除了收集用户反馈数据外,还需要收集包括项目属性、用户人口统计信息和上下文信息在内的一系列原始特征。收集到的原始数据以JSON等特定格式存储在数据库中,准备进行进一步处理。
• 特征工程。特征工程是选择、操作、转换和增强在线收集的原始数据,将其转换为适合神经推荐模型输入的结构化数据的过程。如图2所示,特征工程的主要输出由各种形式的特征组成,然后将这些特征进一步编码到不同模态的特征编码器中,例如,文本特征的语言模型,视觉特征的视觉模型,以及ID特征的传统推荐模型(CRM)。
• 特征编码器。一般来说,特征编码器接收来自特征工程阶段处理过的特征,并为下一个阶段的评分/排名函数生成相应的神经嵌入。根据数据模态的不同,使用各种编码器。通常,在标准推荐模型中,这个过程是针对独热编码的分类特征执行的嵌入层。其他模态的特征,如文本、视觉、视频或音频,进一步使用并编码以增强内容理解。
• 评分/排名函数。评分/排名函数作为推荐系统的核心部分,根据特征编码器生成的神经嵌入来选择或排列最相关的项目,以满足用户的信息需求。研究人员开发了各种神经方法,基于各种技术(如协同过滤、序列建模、图神经网络等)精确估计用户偏好和行为模式。
• 用户交互。用户交互指的是我们如何向目标用户展示推荐项目,以及用户如何向推荐系统反馈的方式。虽然传统的推荐页面基本上涉及一个项目的单一列表,但最近提出了并研究了各种复杂和多模态的场景。例如,对话式推荐提供了自然语言界面,并实现了多轮交互推荐给用户。此外,多块页面级用户交互也被广泛考虑用于嵌套用户反馈。
• 推荐流程控制。流程控制器监控和控制上述所有推荐流程的操作。它甚至可以对推荐的不同阶段(如匹配、排名、重排)提供细粒度的控制,或者决定结合不同的下游模型和API来完成最终的推荐任务。
2.2 大型语言模型
语言模型旨在对自然语言进行概率建模,以预测给定特定文本上下文的词标记。如今,大多数语言模型都是基于transformer架构构建的,以熟练地对人类语言的上下文依赖性进行建模。它们首先在大量未标记的文本数据上进行预训练,然后针对不同的下游应用进一步在任务导向的数据上进行微调。这些预训练语言模型(PLM)主要分为三类:仅编码器模型,如BERT,仅解码器模型,如GPT,以及编码器-解码器模型,如T5。
大型语言模型(LLM)是上述传统预训练语言模型的扩展&#x