E4SRec: An Elegant Effective Efficient Extensible Solution of Large Language Models for Sequential

题目

E4SRec:用于顺序推荐的大型语言模型的优雅、高效、高效的可扩展解决方案

在这里插入图片描述

论文地址:https://doi.org/10.1145/1122445.1122456
项目地址:https://github.com/HestiaSky/E4SRec/

摘要

    大型语言模型(LLM)的最新进展激发了人们在推荐系统中利用其潜力的兴趣。由于LLM是为自然语言任务设计的,现有的推荐方法主要是将推荐任务转换成开放领域的自然语言生成任务。然而,这种方法需要项目拥有丰富的语义信息,经常产生超出范围的结果,并且效率非常低,可扩展性有限。此外,基于ID的实用推荐策略依赖于大量的唯一身份(ID)来表示用户和项目,由于其有效性和效率,在现实世界的推荐系统中已经获得了显著地位。然而,当寻求利用LLM进行个性化推荐时,LLM对IDs建模的能力提出了一个巨大的挑战。在本文中,我们介绍了一个优雅有效的可扩展解决方案,用于大型语言模型的顺序推荐(E4SRec ),该方案将LLMs与传统的推荐系统无缝集成,传统的推荐系统只使用id来表示项目。具体来说,E4SRec将ID序列作为输入,确保生成的输出在候选列表内。此外,E4SRec具有在单个转发过程中生成整个排名列表的能力,并且只需要最少的一组可插入参数,这些参数在保持整个LLM冻结的同时针对每个数据集进行训练。通过在四个广泛使用的真实数据集上进行的综合实验,我们证实了我们提出的E4SRec的有效性、效率和可扩展性。实施代码可在https://github.com/HestiaSky/E4SRec/.获得

    CCS概念信息系统→推荐系统;语言模型;个性化。

    大型语言模型,顺序推荐,条目ID和索引ACM参考格式:李新航,,赵翔宇,,,邢。2023.E4SRec:一个优雅、高效、可扩展的顺序推荐大型语言模型解决方案。在2024年5月13日至17日在新加坡举行的2024年美国计算机学会网络会议(WWW '24)上。美国纽约州纽约市ACM,11页。https://doi.org/10.1145/1122445.1122456

简介

    推荐系统已经存在了几十年,它有助于减轻信息过载,增强用户的网络体验[1,21,35]。这些系统辨别用户的偏好,以提供关于内容或项目的定制推荐[6,24,36]。

    如今,大型语言模型(LLM)[20]的兴起正在彻底改变我们熟悉的环境[43],它擅长从网络上吸收现实世界的知识,并实现熟练的自然语言生成。最近,集中于利用LLM进行推荐任务的研究工作出现了显著的高潮,并且这种趋势逐渐变得更加不可避免[47]。虽然许多非调优方法[10,14,25],包括提示和情境学习[3],努力利用零/少量学习能力,调优方法通常优于它们,因为它们使用专用数据针对特定任务进行了微调。然而,弥合自然语言生成任务和推荐任务之间的巨大差距仍然是一个艰巨的挑战。

    为了应对上述挑战,现有的方法[2,11,17,50]主要是将推荐任务转换为自然语言生成任务,以使其与LLM的内在能力相一致。这包括根据适当的提示直接生成项目名称或等级。然而,这种解决方案有几个限制,如图1所示。首先,这些方法旨在通过微调利用LLM的固有知识进行推荐,本质上是精心制作一个外部知识增强的基于内容的推荐[47]。因此,他们通过提示要求丰富的语义信息。当语义信息由于大量同质项目而不足或模糊时,这在推荐中是很常见的,这些方法不能够产生令人满意的性能。

在这里插入图片描述

图1:基于LLM的顺序推荐图。上半部分表示未能对IDs建模并不期望地生成超出范围的结果的现有方法,而下半部分表示可以有效且高效地处理IDs的E4SRec。

    与基于内容的过滤方法不同,协同过滤方法利用大量的唯一身份(id)来表示用户和项目,并且多年来一直主导着推荐系统领域。这种id仅仅用作用户或项目的索引,而没有封装任何语义信息。因此,现有的基于LLM的推荐方法难以管理ID来进行基于ID的推荐,更关键的是,未能利用对推荐至关重要的协作数据。第二,从整个词汇表生成结果的现有方法的问题定义通常会导致超出范围的结果[17]。这种不稳定的生成不仅偏离了推荐系统的期望,而且对用户体验产生负面影响。最后但并非最不重要的是,对于LLMs的特征,现有的方法每次只能产生一个推荐结果。它们主要通过在提示[50]中附加所有候选来关注排序任务,而不能处理需要所有候选的匹配分数的匹配任务。然而,对于要求低延迟和高并发性的推荐系统来说,效率仍然是不可接受的。因此,当前基于LLM的推荐技术的轨迹不能满足当代推荐系统的需求,并且缺乏实用性。

    为了克服上述限制,我们提出了一个优雅有效的可扩展的大型语言模型顺序推荐解决方案(E4SRec ),通过合并LLM和传统的推荐模型,仅用id来表示项目。具体来说,我们提出的E4SRec只接受ID序列作为输入,并通过在每个正向过程中对所有候选进行预测来确保高效的可控生成。我们提出的E4SRec解决方案包含四个关键阶段:顺序推荐模型预训练、LLM指令调优、E4SRec模型训练和E4SRec模型部署。对于每个给定的顺序推荐数据集,我们首先预训练一个传统的顺序推荐模型,然后提取项目ID嵌入,为LLM的ID注入做准备。还执行LLM的指令调整过程以刺激其遵循指令的能力,并且该调整的LLM为所有特定于任务的模型所共享。然后,在E4SRec的训练阶段,我们通过对ID注入的项目ID嵌入进行线性投影,将项目ID序列包装到提示中。我们冻结了LLM的所有参数,并且仅训练附加的最小参数集以适应特定数据集。推荐结果是通过项目线性投影计算LLM的输出和所有候选项目之间的联合概率分布而得到的。最后,一旦经过训练,E4SRec可以以轻量级的方式部署到实际应用程序中,只需要四个可插入的组件:项目ID嵌入、输入线性投影、适配器和项目线性投影。

  1. 本文的贡献可以总结如下:我们开创了一种创新的有效策略,以解决集成IDs在将LLM应用于推荐任务中的独特挑战。
  2. 我们解决了超范围输出和生成效率的普遍问题,实现了可控和高效的生成建议。
  3. 我们提出了一个优雅、高效、可扩展的顺序推荐大型语言模型解决方案(E4SRec ),它能够从头开始构建一个工业级推荐系统。
  4. 在四个著名的真实世界顺序推荐数据集上进行的全面实验证明了我们提出的E4SRec模型的优越性和有效性,并通过深入分析强调了其在真实世界应用中的效率和可扩展性。

方法

    在本节中,我们将详细介绍我们提出的E4SRec的完整解决方案,包括我们的ID注入途径、主干基础模型的调优策略、E4SRec的模型结构以及E4SRec的部署。

概述

    为了提供一个更清晰、更简洁的模式以便更好地理解,我们在图2中提供了我们提出的E4SRec解决方案的整个架构。如右下部分所示,我们的E4SRec解决方案包括四个阶段,即顺序推荐模型预训练、LLM指令调优、E4SRec模型训练和E4SRec模型部署。具体来说,顺序推荐模型的预训练和LLM的指令调优是预备工作可插拔组件。通过以上几个阶段,我们提供了E4SRec的整体解决方案,可以用来从头开始构建一个工业级的基于LLM的推荐系统。请在附录a中找到E4SRec解决方案整个管道的详细描述。

ID注入

    尽管LLM在建模自然语言方面很强大,并且能够产生合理的响应,但是它们不知道没有文本特征的ID的含义,因此不能处理纯ID信息。然而,IDs中包含的协作信息早已被证明在个性化推荐系统中是非常有效和关键的。因此,到目前为止,不能利用ID信息极大地限制了LLMs在推荐系统中的实用价值。考虑到ID的巨大数量和协作信号的极端稀疏性,将ID信息合并到LLMs中尤其具有挑战性。现有的工作[16,49]已经探索了各种方法来将IDs引入LLM进行推荐,包括词汇扩展、字符分解、顺序分组和协作聚类。然而,这些方法都不足以有效地捕捉协作信息。

    同时,项目名称或语义描述的投影属于无个性化的基于内容的推荐,并且仅在项目数量相当少且具有简洁的信息文本特征时有效。

在这里插入图片描述

图2 E4SRec解决方案的架构。左边部分说明了E4SRec的结构,包括输入层、大语言模型层和预测层。右上部分描述了高效的推理过程。右下部分显示了E4SRec的完整解决方案。

    为了解决LLM不能处理ID信息的问题,我们提出了一种新的方法,将ID嵌入到LLM中,而不是通过LLM的训练或调整过程来学习它们。具体来说,ID嵌入是通过直接从预先训练的顺序推荐模型中提取而获得的。在本文中,我们选择SASRec [18]模型来提供ID嵌入,考虑到它的有效性和普遍性。值得注意的是,它可以被任何其他改进的顺序推荐模型所取代。所选的顺序推荐模型在给定的数据集上进行预训练,以便迭代获得其最佳性能。然后,直接提取项目的ID嵌入,而不进行任何修改,以便为E4SRec的输入做好准备,e4srec可以表示为E ∈ R 𝑁 ×𝑑𝑠。

    𝑁和𝑑𝑠分别是项目的数量和维度的ID嵌入。由于这种顺序推荐模型仅使用ID序列进行预训练,因此没有关于ID嵌入所暴露的任何其他特征的信息。
在这里插入图片描述
表1:用于指令调优的Alpaca模板示例。

主干调优

    开源LLM主要是为了自然语言生成的一般目的而创建的,以回答用户的任何问题,因此输出格式是多样的,并且通常是冗长的。然而,在像推荐这样的特定场景中,我们期望LLM生成的输出严格遵循给定的格式,通常像数字或单词一样简单。同时,我们不希望得到一个只能通过直接调优来完成给定任务的LLM。因此,我们的目标是通过对各种任务的指令调整[45]来修改LLM,以使LLM能够根据给定的模板完成任何指令。

    具体来说,我们选择LLaMA2-13B [42]模型作为骨干LLM,因为它具有强大的功能和通用性。对于指令调优过程,我们遵循Platypus [23]中的设置在LLaMA2-13B的gate_proj、down_proj和up_proj模块上应用参数高效微调(PEFT) [26]方法LoRA [15]。使用PEFT方法,只训练指定模块的参数(约占总参数的0.07%),从而大大提高了训练效率。初始数据集和更详细的设置可以在Platypus1的项目页面找到。使用Alpaca [40]模板对一个时期进行指令调整[44]。表1显示了羊驼风格提示的一个例子,它由指令、输入和响应部分组成。

E4SRec

输入层

    在这个输入层中,我们的目标是将id和标准的文本提示一起注入LLM。如图2的左部所示,E4SRec也遵循Alpaca模板,商品ID序列作为提示的输入部分。从另一个角度来看,每个商品ID可以被视为LLM中的一个“单词”,但是它是使用我们提出的ID注入组件而不是LLM的查找表来投影的。因此,我们通过前面提到的ID注入组件获得项目的相应ID嵌入,而提示的其余部分作为典型的LLM输入被投射到单词嵌入。最终的输入是单词嵌入和ID嵌入在其原始位置的连接。由于预训练的ID嵌入通常具有比LLM中的单词嵌入(例如,LLaMA213B中的5120)低得多的维度(例如,在我们的预训练的SASRec中为64),所以我们采用线性投影来将ID嵌入转换成与单词嵌入相同的维度。如上所述,我们不希望LLM在推荐任务的训练过程中遇到“灾难性遗忘”现象。当然,我们也不希望学习到的协作信息被破坏。因此,只有线性投影分量是可训练的,其小至权重矩阵W𝐼𝑛𝑝𝑢𝑡 ∈ R 𝑑𝑠 ×𝑑𝑘。𝑑𝑠和𝑑𝑘分别代表了预训练序贯推荐模型中的ID嵌入和LLM中的单词嵌入的维度。

大型语言模型层

    大型语言模型层采用指令调整的LLaMA2-13B,它是原始LLaMA2-13B和用于指令调整的LoRA适配器参数的合并。类似于LLM指令调优阶段,我们还在gate_proj、down_proj和up_proj模块上引入了一个额外的LoRA适配器,以模拟给定推荐任务的个性化。

    预测层。预测层接收LLM的输出,并进行推荐预测。现有的基于LLM的推荐方法主要将推荐任务定义为开放领域的自然语言生成任务,这符合LLM本身的目的。

    但是,由于任务定义的特点,它们经常会产生超出范围的结果,并且每次只能产生一个推荐结果。这种途径削弱了推荐结果的可靠性,并限制了推荐效率。因此,这些方法只能在排序阶段(通常少于100个项目)起作用,但在匹配阶段(通常多于数千个项目)不切实际。与这些直接采用LLMs的任务定义而不做修改的现有方法不同,我们坚持它们对生成的联合概率分布建模的基本定义。

    也就是说,我们可以计算每个正向过程中所有候选序列的给定序列的预测结果。为了实现这一目标,我们深入研究了LLMs的结构,并提出通过权重矩阵W𝑂𝑢𝑡𝑝𝑢𝑡 ∈ R 𝑑𝑘 ×𝑁使用项目线性投影来代替LLMs中的原始预测层,其中𝑁表示候选项目的总数。然后,给定序列的预测可以表示为𝑁-dimensional向量yˇ∈r𝑁。在训练阶段,我们采用预测和地面真实下一项之间的交叉熵损失作为E4SRec的学习目标,如下所示: 在这里插入图片描述

推理和部署

    推理时间也是LLMs应用中一个重要且困扰的问题。虽然我们不能提高LLM本身的性能,但是我们提出的E4SRec解决方案可以确保推荐任务的整体推理时间与普通LLM的推理时间接近。回顾一下我们提出的E4SRec的结构,与主干LLM相比,附加的组件都很小,它们只需要多花一点时间。不止如此,训练阶段耗时的softmax操作也是没必要的。因此,推断过程可以进一步简化为LLM的输出和项目线性投影分量中的向量之间的最近邻搜索,如图所示

实验

    在本节中,我们将使用一组在顺序推荐中广泛使用的基准方法,在几个真实数据集上评估我们提出的E4SRec。同时,我们还将介绍消融研究、鲁棒性分析、效率分析和讨论,以回答以下问题:E4SRec在性能上与传统的顺序推荐模型相比如何?RQ2:注入的IDs和大型语言模型如何影响E4SRec的性能?RQ3:E4SRec在利用协作信息缓解数据稀疏问题方面有多有效?RQ4:在部署中,E4SRec在推理时间和存储空间上的效率如何?RQ5:对于工业应用中的新项目,E4SRec的可扩展性如何?

实验设置

数据集

    为了评估E4SRec的有效性,我们在四个广泛使用的真实数据集上进行了实验。具体来说,美容、运动和玩具是亚马逊评论数据[27]中子类别“美容”、“运动和户外”和“玩具和游戏”的数据集。Yelp是一个流行的平台,数据集被广泛用于各种推荐任务。这里只利用2019年1月1日以后的数据。数据集的统计数据如表2所示。

    对于顺序推荐,用户的交互序列按照时间戳升序排序。根据之前的工作[34,37],我们应用5核设置来过滤少于5次交互的冷门项目,以确保稳健的评估。

评估指标

    为了避免选择偏差并提供更可靠的结果,我们对整个项目集的预测性能进行评估,这在评估匹配能力方面是有效的。

    根据以前的工作[18,31],我们也应用留一策略。对于用户的每个交互序列,最后一项作为测试数据,倒数第二项作为验证数据,剩下的序列用于训练。对于评估指标,我们选择了两种广泛使用的指标,即topk命中率(HR@k)和top-k归一化折扣累积收益(nDCG@k),k = {5,10,20}。这些指标是报告中所有用户的平均值。此外,我们还根据[51,52]在附录C中进行了一次额外的负抽样评估。具体来说,每个阳性项目随机抽取99个阴性项目。在这种设置下,我们能够评估E4SRec的排名能力。

基线方法

    用于比较的基准方法可分为三类:非顺序方法、传统顺序方法和自我监督顺序方法。对于非顺序方法,我们有:POP是一种启发式方法,它使用被定义为交互数的流行度直接对项目进行排序。BPR [33]利用贝叶斯个性化排序(BPR)损失来优化矩阵分解(MF) [22]模型,以表征成对交互。对于传统的顺序方法,我们有:GRU4Rec [13]实现了用于顺序建模的GRU递归神经网络,然后进行推荐预测。Caser [39]集成了水平和垂直卷积运算,以更好地捕捉推荐项目序列中的高阶交互。SASRec [18]是一个自关注顺序推荐模型,具有多头自关注,用于模拟复杂的顺序信息。对于自我监督的顺序方法,我们有:BERT4Rec [37]采用完形填空[41]目标,而不是下一项预测,以预训练-调整的方式进行顺序推荐。S 3 -Rec [51]应用对比学习来捕捉项目、子序列和属性之间的相关性。具体而言,我们采用仅具有掩蔽项预测(MIP)目标的变体。CL4SRec [48]将对比学习与基于转换器的顺序推荐模型相结合,以获得更可靠的结果。ICLRec [4]利用一个潜在的意图变量从未标记的项目序列中学习用户的意图分布,以改进基于transformer的顺序推荐模型。

在这里插入图片描述
表2:数据集的统计数据。

    注意,我们提出的E4SRec仅利用ID信息,并且在训练和推断期间没有其他特征暴露给E4SRec。因此,那些实施数据扩充技术[52,53]或结合其他特征[8,28]的方法与E4SRec正交,因此为了公平比较,将其排除在外。

实施细节

    对于GRU4Rec、Caser、BERT4Rec、S3 Rec和ICLRec,我们使用其作者发布的公共资源来实现它们。对于其他模型,我们使用PyTorch 2.0.1实现它们。对于所有数据集上的所有模型,嵌入维度被设置为64,最大序列长度被设置为50。模型参数用Xavier initializat初始化A800 GPUs。实施代码可在网上获得3,并且将向公众开放,以便于复制。

主要结果(RQ1)

    我们提出的E4SRec与其他传统顺序推荐模型的性能比较如表3所示。在这里,我们有以下观察结果:由于LLM的强大能力,我们提出的E4SRec可以在所有四个数据集上显著优于所有基线方法。与最佳基线方法相比,在HR@k和nDCG@k上的性能相对提高了约12%和21%,这充分证明了E4SRec的有效性。

    一般来说,nDCG@k指标的性能增益大于HR@k指标,k值越小,性能增益越大。这表明我们提出的E4SRec能够更准确地捕捉用户的偏好,从而产生更可靠的推荐结果。由于模拟顺序信息的缺点,非顺序方法比顺序方法差得多。POP的糟糕表现也表明了个性化在这些数据集中的重要和关键作用。自我监督顺序方法通常比传统顺序方法更强。这种现象显示了引入自我监督学习以提供额外的训练信号来提高顺序推荐性能的有效性。

    在对比学习的帮助下,CL4SRec和ICLRec在提高项目表征的鲁棒性方面取得了更好的性能。然而,对比学习通过引入扩充序列在一定程度上应用了数据扩充,这可能对其他方法有点不公平。所以SASRec和他们相比还是很强的方法,更适合参考。在这种情况下,我们建议的E4SRec将具有更显著的性能增益,高达115%。

在这里插入图片描述
表3:不同方法的性能比较。最佳性能以粗体突出显示,次佳性能以下划线突出显示。最后一列表示相对于最佳基线模型的改进,并且与最佳基线模型相比,E4SRec的所有结果在统计上是显著的,p < 0.01。

烧蚀研究(RQ2)

    为了探索注入ID和LLM对E4SRec的整体性能的影响,我们通过改变注入ID和LLM来进行烧蚀研究,以设计并比较以下四种变型:BPR + LLaMA:该变型采用BPR模型来提供项目ID嵌入和LLaMA2-13B模型。SASRec w/o LLM:这是一种无LLM的变体,利用SASRec作为ID注射的顺序模型。具体来说,它没有LLM,只使用线性投影进行预测。SAS rec+BERT:LLM层使用了BERT [7]模型。这里我们使用110M参数的BERT-base-uncased。SASRec + LLaMA:它是我们建议的E4SRec的基本版本,用于ID注入,LLaMA2-13B作为LLM。

    从图3中HR@k度量的性能比较中,我们有以下观察结果:项目ID嵌入的质量确实对性能有影响。BPR +美洲驼的表现比SASRec +美洲驼略差。虽然BPR无法捕获序列信息,性能也很差,但是BPR + LLaMA的性能还是令人满意的。这种现象可能表明ID注入的主要作用是提供协作信息,而LLM已经足以在训练阶段很好地捕获顺序信息。SASRec w/o LLM的极差性能表明,LLM对于执行建议是必要的。

    LLM的固有能力对整体性能也有重大影响。尽管BERT已经是一个非常强大的语言模型,但与LLaMA相比,性能差距仍然显著。这也暗示了我们提出的E4SRec解决方案在利用LLM的能力和潜力方面的有效性。

鲁棒性分析(RQ3)

    数据稀疏问题是推荐系统在应用中的一个常见问题。例如,由于大多数用户只有有限的交互,用户冷启动问题通常很严重,从而损害了用户体验。传统的推荐方法通过协同过滤联合利用来自其他用户和项目的数据来缓解数据稀疏问题。为了验证我们提出的E4SRec在合并协作信息方面的有效性,我们将它与SASRec在不同稀疏级别数据的健壮性方面进行了比较,如图4所示。具体来说,我们根据用户的交互次数将他们分成三组。基于这些结果,我们有如下观察结果:E4SRec在所有三个用户组上都以显著的优势超过SASRec,这证明了在协作信息建模中的有效性。

在这里插入图片描述
图3:ID注射和LLM的消融研究。

    在仅有5次交互的稀疏用户组上的令人信服的结果,其中每个用户只有一个训练实例,也证明了我们提出的解决方案在极度稀疏数据上的鲁棒性。稀疏用户组比密集用户组的性能提升更显著。这种现象可能源于LLMs的少/零镜头学习能力,使得E4SRec能够在数据不足的情况下获得令人满意的性能,而传统的推荐方法很难从中学习。

效率分析(RQ4)

    除了在顺序推荐中有效,我们提出的E4SRec解决方案在时间和空间上都非常高效。为了支持这种说法,我们在1个Nvidia Tesla A800 GPU上比较了主干LLM、LLaMA213B和E4SRec的推理时间和存储空间,如表4所示。

在这里插入图片描述
图4:不同用户组在交互序列长度方面的性能比较。

    如上所述,E4SRec只向主干LLM引入了一组很小的可插入参数,并没有过多地改变整个数据流。所以E4SRec的推断时间非常接近骨干LLaMA2-13B。考虑到在不需要多次生成的情况下生成结果的能力,我们的E4SRec在实际推理时间上明显比直接应用自然语言生成的任务公式的现有解决方案更高效。同时,E4SRec中的附加参数只有主干LLM总参数的1%。因为这组附加参数是可插拔的,对主干网没有影响LLM,E4SRec可以只使用一个共享的主干LLM和多个独立的可插拔组件来存储和部署特定的数据集。通过这种方式,存储100个E4SRec模型所需的空间是主干LLM的两倍,这在工业应用中非常经济。

讨论(RQ5)

    在工业应用中,每天都有许多新的项目出现在推荐系统中。显然,为每个即将到来的项目重新训练推荐模型是不实际的,因此扩展到新项目的能力是非常重要的。我们的E4SRec解决方案保证可插拔组件独立于IDs,这意味着在数据集中添加一个新项目只需要在线性投影中添加一个新行,而不需要重新训练整个模型。因此,我们提出的E4SRec解决方案具有相当大的可扩展性。

相关工作

顺序推荐

    顺序推荐是个性化推荐系统中的一项重要任务,目的是利用用户的历史行为序列来捕捉用户的偏好。顺序推荐的早期工作主要在于马尔可夫链模式[12,32],该模式使用一个项目-项目转移模式来用先前的项目直接预测下一个项目。例如,FPMC [34]使用矩阵分解(MF)来模拟用户的偏好,并利用马尔可夫链来捕捉序列模式以进行预测。随着深度学习的蓬勃发展,出现了许多基于深度神经网络的序列推荐模型。Caser [39]使用卷积神经网络(CNN ), gru 4 rec[13]使用递归神经网络(RNN)来捕获项目序列中的高阶交互,以进行顺序建模。近年来,提出了更强大的模型和更先进的体系结构,以更好地利用顺序信息。SASRec [18]利用多头自我关注,以单向方式专注地模拟顺序信息。BERT4Rec [37]通过使用完形填空[41]目标来预测屏蔽项以利用双向信息,改进了这种方式。S3 -Rec [51]引入对比学习来融合不同项目、子序列和属性的信息。类似地,CL4SRec [48]和ICLRec [4]都应用对比学习来更好地捕捉用户对序列信息的偏好。还有许多其他方法旨在整合其他功能,如DuoRec [28]和EMKD [8],或采用数据增强,如FMLP-Rec [52]和ECL-SR [53]以进一步改进。

    然而,由于模型规模的限制,传统的顺序推荐模型通常在性能上受到限制,并且可能导致次优预测。与它们不同,我们提出的E4SRec利用LLM来实现更高级的性能,并赋予生成式推荐以能力,它可以更好地理解人类的意图并生成更像人类的语言响应。

推荐用LLM大型语言模型(LLM)

    在自然语言处理中已经被证明是非常强大的,它们强大的能力促使研究人员努力将LLM应用于推荐[9]。早期的方法将LLM视为特征提取器来生成用于推荐的知识感知嵌入。

    U-BERT [29]提出了一个预训练-调整框架来学习用户的表示并进行用户建模。UserBERT [46]对未标记的行为数据采用了两种自我监督任务来支持用户建模。随着像GPT这样的生成式LLM的出现,基于LLM的推荐也转向了生成式推荐。这些方法将推荐任务翻译为自然语言任务,以直接生成推荐结果[47]。首先,大多数方法集中在使用提示[10,38]或上下文学习[5,25]来适应推荐的LLM。然而,这些方法无法超越针对特定数据的给定任务专门训练的传统推荐模型。因此,最近做了许多努力,通过进一步微调来使LLM与建议一致。

    P5 [11]首先提出了一个统一的框架,通过对FLAN-T5 [30]的微调来整合五个推荐任务。在此之后,InstructRec [50]通过使用更多样化的文本进行指令调整,将FLAN-T5模型应用于多个下游推荐任务。TALLRec [2]在少数镜头场景中通过两个阶段的指令调整将LLaMA模型与二进制推荐任务对齐。GenRec [17]直接用纯文本对LLaMA模型进行指令调优,实现生成式推荐。

在这里插入图片描述
表4:llama 2-13B和E4SRec推理时间和存储空间的比较。

   &ensp然而,上述所有方法本质上都是基于内容的推荐,并且需要丰富的语义特征来实现令人满意的性能。因此,他们无法处理IDs,也无法利用协作信息。与它们相比,我们提出的E4SRec解决方案在处理IDs时更有效,在时间和空间上更高效,并且更具可扩展性以满足实际应用的需要。

结论

   &ensp现有的LLM推荐方法在处理入侵检测、效率、可扩展性等方面面临挑战,无法满足现实应用的需求。在本文中,我们提出了一种新颖的E4SRec解决方案,该方案优雅、有效、高效且可扩展,可用于LLMs的顺序推荐。具体来说,我们引入了一种优雅的方法,通过将商品ID嵌入到LLM中来解决处理ID的问题。同时,在改进的预测层的帮助下,我们有效地解决了具有挑战性的生成结果的超范围问题,以确保它们的合法性,并有效地一次性生成对所有候选的预测。可插拔的设计E4SRec中的组件使得模型能够以轻量级的方式进行训练和部署。在四个流行的read-world数据集上的大量实验充分证明了我们提出的E4SRec解决方案的有效性和优越性。我们希望我们的E4SRec解决方案将有助于在推荐系统中应用LLM的研究。展望未来,我们将致力于为其他推荐任务打造优雅的解决方案,如点击率预测,并不断推进生成性推荐的前沿。

在这里插入图片描述
表5:四个数据集上的训练配置。
在这里插入图片描述

E4SREC解决方案的流水线

E4SRec解决方案的整个流水线在算法1中描述。

遵循这样的过程,可以很容易地以轻量级的方式训练和部署E4SRec模型。

b .训练配置LLM对训练配置很敏感。为了获得理想的结果,我们在不同的数据集上实现了不同的配置,如表5所示。通常,不同的数据集需要不同的训练周期和学习率可以获得更好的成绩(通常2-5个周期就足够了),同时热身步骤的数量也很重要。批量大小最好为16,过大或过小都可能导致收敛失败。E4SRec对LoRA的秩和α不太敏感,但改变LoRA的压差或模数会导致性能的大幅波动。我们选择使用权重衰减为0.1的余弦调度器来控制训练过程中的学习速率。

除了主要结果之外,我们还按照先前工作的策略[18,51,52]对负面抽样项目进行了评估。具体来说,我们采用HR@1 (nDCG@1=HR@1)、HR@5、HR@10、nDCG@5、nDCG@10和MRR作为评估指标,考虑到候选列表要短得多。

如表6所示,我们建议的E4SRec仍然可以远远超过所有基准模型。这样的结果证明了E4SRec在排名能力上的优越性。
表6:不同方法的性能比较。最佳性能以粗体突出显示,次佳性能以下划线突出显示。最后一列表示相对于最佳基线模型的改进,并且与最佳基线模型相比,E4SRec的所有结果在统计上是显著的,p < 0.01。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三月七꧁ ꧂

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值