2311.01343_CLLM4Rec: Collaborative Large Language Model for Recommender Systems¶
引用: 112(2025-09-06)
组织:
University of Virginia
LinkedIn Inc.
Conference: Proceedings of the ACM Web Conference 2024; May 13–17, 2024; Singapore, Singapore
Booktitle: Proceedings of the ACM Web Conference 2024 (WWW ’24), May 13–17, 2024, Singapore, Singapore
总结¶
总结
引入 <user_i> 和 <item_j> 令牌,将推荐系统中的离散ID“翻译”成LLM能理解的“语言”
软+硬提示策略 (Soft+Hard Prompting)
分别处理异构token(如ID嵌入和词汇token)
“硬”提示:指其中的词汇令牌,LLM已经理解其含义
“软”提示:指其中的用户/物品ID令牌,它们的嵌入是需要学习的
多项预测头:不再使用自动回归逐个预测,而是引入一个新的预测头 f_rec
协同LLM指导内容LLM
z^l 从纯净的交互中学到的信号,会拉拽 z^c,让它只关注文本中与推荐相关的部分。
内容LLM辅助协同LLM
z^c 从丰富的文本中学到的语义信息,会补充到 z^l 中,缓解数据稀疏问题,增强模型的表示能力。
训练时,两个LLM的损失和这个正则化损失会交替优化(L-step和C-step)。
面向推荐的微调
预训练:通过语言建模任务(预测下一个token)来学习用户/物品的嵌入表示。
微调:将模型转变为高效的、直接进行多项推荐的模型。
CLLM4Rec
桥接符号与语义:通过引入
<user_i>和<item_j>令牌,将推荐系统中的离散ID“翻译”成LLM能理解的“语言”。双嵌入设计:用协同嵌入捕捉交互 patterns,用内容嵌入捕捉文本语义,并通过互正则化让二者互相增强、互相纠偏。
分阶段训练:
预训练:通过语言建模任务(预测下一个token)来学习用户/物品的嵌入表示。
微调:将模型转变为高效的、直接进行多项推荐的模型。
保护与利用:始终固定预训练LLM的主干参数,只训练新增的嵌入层和预测头,既充分利用了LLM的知识和推理能力,又避免了灾难性遗忘。
核心贡献 (Claimed Innovation)
作者宣称 CLLM4Rec 是第一个真正紧密耦合了推荐系统两大范式的方法:
ID 范式 (ID Paradigm):指传统的协同过滤方法,其核心是直接学习用户和物品的ID嵌入( latent factors),擅长捕捉纯粹的协同信号。
LLM 范式 (LLM Paradigm):指利用大型语言模型处理文本内容(如评论、描述)来进行推荐,擅长理解和推理语义信息。
在此之前,很多工作可能只是简单地将文本特征喂给LLM,或者用LLM生成辅助信息,但未能将这两种范式的核心(即ID和语义)在模型底层进行深度融合。
CLLM4Rec 通过引入用户/物品ID令牌及其双嵌入设计,实现了这种“紧密耦合”。
实现方法 (How It Achieves This)
概括了实现这一贡献的两个关键阶段,这也是方法论中的精髓:
互正则化预训练 (Mutually Regularized Pretraining):这是模型学习高质量表示的核心。
软+硬提示策略 (Soft+Hard Prompting):是成功训练模型的技术手段,它让LLM能够有效处理混合了ID和自然语言的序列。
通过语言建模捕获信息:模型不是在直接学习“推荐”,而是在学习“预测下一个token”。
通过完成“用户交互过哪些物品”和“用户写了什么评论”这两个任务,它间接地、非常有效地捕获了协同信息和内容信息。
面向推荐的微调 (Recommendation-Oriented Finetuning):这是将模型能力转化为实际应用的关键一步。
它将一个“语言模型”成功地微调成了一个高效、精准的“推荐模型”,解决了生成式模型直接用于推荐时可能存在的效率低下和“幻觉”问题。
实验成果
准确性(如Recall, NDCG等指标)上超越了SOTA。
多功能性(“多方面”)可能体现在:处理冷启动问题、提供可解释性(因为LLM能理解内容)、以及高效性等多个维度上的综合优势。
Abstract¶
本文主要探讨了基于预训练大语言模型(LLMs)的下一代推荐系统(Recommender Systems, RSs)的发展趋势。尽管LLMs在语言理解方面表现出色,但其在推荐任务中仍面临语义鸿沟的问题,导致诸如虚假相关用户/物品描述符、用户/物品数据上的语言建模效果不佳、基于自回归的推荐效率低等问题。
为了解决这些问题,本文提出了CLLM4Rec,这是首个将LLM范式与ID范式紧密结合的生成式推荐系统。该系统旨在同时解决上述多个挑战。
核心方法¶
词汇扩展
首先,作者将预训练LLMs的词汇表扩展为用户/物品ID标记,以忠实地建模用户/物品的协同和内容语义。新颖的软+硬提示策略
提出了一种新的软+硬提示策略,通过在推荐系统专用语料库上进行语言建模,有效学习用户/物品的协同与内容嵌入。每个文档被划分为两部分:
提示部分:包含异质的软(用户/物品)标记和硬(词汇)标记。
主体部分:包含同质的物品标记或词汇标记,以稳定且有效地进行语言建模。
互正则化策略
引入了一种互正则化策略,旨在鼓励模型从用户/物品的噪声内容中捕获与推荐相关的信息。推荐导向的微调策略
最后,提出了一个新的推荐导向的微调策略。在预训练的CLLM4Rec主干模型上添加了一个多项式似然预测头,用于基于被掩码的用户-物品交互历史生成推荐。
该方法允许高效生成多个推荐项而不产生幻觉内容。
重点总结¶
CLLM4Rec 结合了LLM与传统ID建模范式,是当前推荐系统领域的重要创新。
软+硬提示策略与互正则化策略是解决语义建模和噪声问题的关键。
推荐导向的微调策略提升了推荐的效率与准确性。
作者在GitHub上开源了代码,便于复现与验证。
总之,本文为基于大语言模型的推荐系统研究提供了新思路和新方法。
1. Introduction¶
随着网络内容的指数级增长,推荐系统(Recommender Systems, RS)已成为在线服务平台的重要组成部分。然而,传统的推荐系统长期依赖于基于ID的范式,即通过用户/物品唯一连续的ID嵌入(embeddings)表示其语义相似性。典型的基于ID的方法包括:矩阵分解(如PMF) 和 双塔模型(如StarSpace),它们通常通过用户/物品的历史交互(协同过滤)或特征(内容方法)来初始化和学习ID嵌入。
近年来,大语言模型(LLMs)(如GPT、T5、LLaMA)因其在自然语言理解、知识和逻辑推理方面的强大能力而成为研究热点。这些模型在大规模语料上训练,具备生成能力,因此有望被用于构建下一代推荐系统。特别是在用户和物品具有大量文本特征(如描述、评论、简介等)的场景下,LLM可以更准确地理解和推理语义,从而提供更高质量的推荐。
已有初步研究探索了将LLM应用于推荐系统,一般分为两个步骤:
将用户/物品信息转换为自然语言提示(prompt),包括交互历史、特征和候选物品。
通过LLM处理该提示,从输出中提取推荐相关的信息进行推荐。
该方法可以以零样本(zero-shot)方式运行,也可以在有标注数据的情况下对LLM进行微调,以获得更准确的推荐结果。
尽管已有积极进展,但NLP与推荐系统之间仍存在根本差距。主要挑战包括:
自然语言与用户/物品语义的不匹配:现有方法通常使用伪ID或描述性文本表示用户/物品,但这些方式存在语义偏差或语义不准确的问题。
LLM的词表限制:大多数LLM的词表规模有限(如GPT约50k,T5约30k),难以直接容纳大量用户/物品ID嵌入。
时序依赖引入噪声:用户历史交互通常不具有时序依赖性,但语言模型对顺序敏感,可能引入虚假的时序关联。
例如,“user_4332”转换为 [“user”, “_”, “43”, “32”],
其中可以对不相关的用户/项目引入虚假相关性(例如,“user_4332”与“user_43”和“user_32”)
内容建模噪声:LLM未针对推荐任务设计,容易捕捉无关的文本特征。
基于描述的方法使用语义上有意义的标记来索引用户/项目,例如项目标题或根据内容相似性分配给不同用户/物品的少量新引入的代币。
然而,基于描述的方法对用户-项目语义相似性引入了强烈的归纳偏差,这可能无法忠实地捕捉真实的语义。
生成效率问题:LLM生成token的方式是自回归的,多物品推荐效率较低。
幻觉问题:候选物品通常需要显式提供,否则可能生成不可靠结果。
为了解决上述问题,作者提出了CLLM4Rec,这是首个将ID范式与LLM范式紧密结合的生成式推荐系统。主要方法包括:
用户/物品ID嵌入扩展:将用户/物品ID引入LLM的词表空间,使其能够真实地建模用户/物品的协同与内容语义。
两阶段嵌入学习策略:通过协同语言模型和内容语言模型联合预训练,使用**“soft+hard”提示策略**,分别处理异构token(如ID嵌入和词汇token),提升模型的稳定性与效果。
随机物品重排序策略:用于协同语言模型,避免顺序带来的虚假关联。
推荐导向的微调策略:通过添加多项式似然的物品预测头,在掩码交互历史的提示下,高效生成多个物品推荐,避免幻觉。
本节贡献(Contribution)¶
提出CLLM4Rec:首个将ID范式与LLM范式结合的生成式推荐系统,通过引入与LLM词表空间对齐的ID嵌入,更好地捕捉用户兴趣和物品属性。
提出“soft+hard”提示策略:通过协同与内容信息的联合建模,实现对异构token的高效预训练。
提出推荐导向的微调策略:通过掩码交互历史建立提示,并使用预测头高效生成多个物品推荐,避免幻觉。
总结¶
本节介绍了推荐系统从基于ID范式向基于LLM范式演进的背景、挑战与初步尝试,指出现有方法的局限,并提出CLLM4Rec作为解决方案,通过结构创新与训练策略优化,解决了LLM在推荐系统中应用的关键问题。
2. 相关工作¶
2.1. 大型语言模型(LLM)基础¶
大型语言模型(Large Language Models, LLMs)是基于 Transformer 架构的模型,经过大规模语料库的训练,展现出对自然语言的理解能力以及逻辑推理能力。根据所使用的 Transformer 架构部分,现有 LLM 可分为三类:
仅编码器型:如 BERT;
编码器-解码器型:如 T5;
仅解码器型:如 GPT 和 LLaMA。
本文重点关注仅解码器型 LLM,因为它们在生成能力方面优于仅编码器模型。
LLM 的训练通常分为两个阶段:
预训练阶段:模型在大规模语料库上进行语言建模训练(如下一个/遮蔽词预测),通过堆叠的自注意力模块,有效地将知识编码到模型中;
微调阶段:通过示例提示-输出对或对多个生成答案的人类反馈进行微调,使模型能够根据提示进行逻辑推理并生成答案。
2.2. LLM 在推荐系统中的应用¶
近年来,基于 LLM 的推荐系统(LLM-based Recommender Systems, RS)展现了其在解决传统 ID 型推荐系统长期问题上的潜力,例如:
对用户/物品文本特征的理解较浅;
泛化能力差等。
Hou 等人提出,现有 LLM 能够作为零样本排序器(zero-shot ranker),根据用户历史行为和物品描述来排序物品的相关性。
进一步的研究集中在通过微调获得面向推荐任务的 LLM 模型,代表性工作包括:
P5:在交互数据和用户/物品特征构建的语料上微调 T5,物品以伪 ID 表示;
M6:在预训练阶段结合文本填充和自回归任务,伪 ID 被物品文本描述替代;
TALLRec:同时使用伪 ID 和物品文本描述来表示物品。
然而,基于伪 ID 的表示可能引入无关物品之间的虚假相关性。为此,Hua 等人提出使用少量新 token 来描述物品,这些 token 由物品的内容和协同相似性决定。
尽管如此,使用共享 token 可能仍会引入偏差,且推荐过程需要显式提供候选物品并通过低效的自回归生成完成。总体而言,自然语言处理(NLP)与推荐系统(RS)之间的割裂问题仍未得到良好解决。
3. Methodology¶
核心目标¶
这段文字的核心目标是:设计一个新的生成式推荐系统,通过引入用户和物品的ID令牌(Token),将预训练的大型语言模型(LLM)与推荐任务紧密耦合。 这样既能准确建模用户/物品的语义(例如用户的兴趣),又能充分利用LLM中编码的知识和逻辑推理能力。
分步详解¶
1. 问题定义 (3.1 Problem Formulation)¶
场景:处理隐式反馈(如点击、购买,而不是明确的评分)的推荐系统。
符号:
I个用户,J个物品。r_i:一个二进制的向量,表示用户i与所有J个物品是否有过交互(1表示有,0表示无)。x_i^u,x_j^v:与用户i或物品j相关的文本特征(如用户传记、物品描述)。x_ij^uv:同时与用户i和物品j相关的文本特征(如用户对物品的评论)。
LLM的角色:文中使用了一个预训练的LLM,将其视为一个概率模型
p_llm,可以根据上文x_1:k来预测下一个令牌x_k+1的概率。LLM通过多层自注意力模块将输入序列转换为隐藏表示h_1:k,并基于其预训练的知识进行逻辑推理。
2. 扩展用户/物品令牌 (3.2 Extension of User/Item Tokens)¶
为了把推荐系统和自然语言“连接”起来,作者做了关键操作:
词汇表扩展 (Vocab Expansion):在LLM原有的词汇表(包含约3万-5万个单词/令牌)基础上,新增两种特殊的令牌:
<user_i>:代表第i个用户。<item_j>:代表第j个物品。 这些新令牌不会被拆分成更小的单元(如字母),它们拥有自己独立的ID。
令牌嵌入 (Token Embeddings):为了让LLM能“理解”这些新令牌,需要为它们创建数值向量(嵌入)。作者设计了两种嵌入来分别捕捉协同过滤信号和内容信息:
协同嵌入 (Collaborative Embeddings -
z^l): 从高斯分布中随机初始化。这些嵌入的目标是学习用户和物品之间纯粹的交互模式(类似于传统推荐模型中的潜在因子)。内容嵌入 (Content Embeddings -
z^c): 从以协同嵌入为中心的高斯分布中初始化(z^c ~ N(z^l, ...))。这迫使内容嵌入不能偏离协同嵌入太远,确保从文本中学到的是与推荐相关的信息。
CLLM4Rec 基础模型:构建了一个基础模型
llm_hat,它使用扩展后的词汇表。关键点是:在预训练阶段,只训练新添加的用户和物品的嵌入 (z^l,z^c),而预训练LLM的原始参数和原始词汇的嵌入都被固定不动。这样可以保护LLM已有的知识不被破坏。
3. 互正则化预训练 (3.3 Mutually-Regularized Pretraining)¶
这是本文最核心、最创新的部分,目的是利用文本数据来学习好的用户/物品嵌入。
构建推荐语料库:将原始的交互数据
r_i和文本数据x^u, x^v, x^uv转换成LLM可以理解的文本序列(文档)。例如:“
<user_57>has interacted with<item_46><item_123>…”“
<user_57>writes the review for<item_46>: This lipstick color is great but it dries my lips.”
软+硬提示 (Soft+Hard Prompting):作者发现上面的文档可以分成两部分:
提示 (Prompt):包含异构令牌(用户ID、物品ID和词汇令牌,如 “has interacted with”)。这部分作为上下文。
主体文本 (Main Text):包含同构令牌(要么全是物品ID,要么全是词汇令牌)。这部分是模型要生成的目标。
“硬”提示:指其中的词汇令牌(如 “interacted with”),LLM已经理解其含义。
“软”提示:指其中的用户/物品ID令牌,它们的嵌入是需要学习的。 通过这种拆分,模型可以更专注地学习协同信息和内容信息。
两个LLM头:
协同LLM:使用协同嵌入
z^l。它的任务是根据提示(如“用户A交互过”),预测下一个物品ID(自动回归地生成用户的历史交互序列)。这使模型学习用户和物品之间的协同关系。内容LLM:使用内容嵌入
z^c。它的任务是根据提示(如“用户A评论物品B:”),预测下一个词汇令牌(生成评论内容)。这使LLM利用其知识理解文本内容(例如,从评论中推理出物品是口红,用户喜欢颜色但讨厌干燥),并将这些信息编码到内容嵌入中。
互正则化 (Mutual Regularization):这是防止两个任务各自缺陷的关键:
问题1:内容LLM可能会学到与推荐无关的文本噪声。
问题2:协同LLM可能因为数据稀疏(交互少)而过拟合。
解决方案:由于内容嵌入
z^c的定义是基于协同嵌入z^l的(z^c ~ N(z^l, ...)),在训练目标中,这会转化为一个正则化项(MSE损失),强制要求z^c和z^l不能相差太远。协同LLM指导内容LLM:
z^l从纯净的交互中学到的信号,会拉拽z^c,让它只关注文本中与推荐相关的部分。内容LLM辅助协同LLM:
z^c从丰富的文本中学到的语义信息,会补充到z^l中,缓解数据稀疏问题,增强模型的表示能力。 训练时,两个LLM的损失和这个正则化损失会交替优化(L-step和C-step)。
随机物品重排序:用户的历史交互物品本身没有顺序关系。为了避免LLM的位置嵌入干扰,在训练协同LLM时,会随机打乱用户历史物品序列的顺序。
4. 面向推荐的微调 (3.4 Recommendation-Oriented Finetuning)¶
预训练后的模型还只是一个语言模型,不能直接高效地做推荐。
目的:将预训练好的协同LLM微调成一个高效的推荐模型(称为 RecLLM)。
掩码提示:为了构建训练样本,随机掩码用户的一部分历史交互物品(如mask掉20%)。
输入(提示):使用未掩码的物品生成提示:“
<user_i>has interacted with<item_a><item_b>… the user will interact with:”目标:被掩码的那些物品(
hold-out items)。
多项预测头:不再使用自动回归逐个预测,而是引入一个新的预测头
f_rec。它基于提示的最终隐藏状态,一次性预测所有物品的得分概率(类似于传统的推荐模型),然后通过多项分布损失进行训练。这极大地提升了推荐效率。继续保持正则化:在微调阶段,仍然保持与内容LLM的互正则化,以利用文本信息。
5. 使用CLLM4Rec进行预测 (3.5 Predictions)¶
最终,为一个用户做推荐时,将其全部历史交互物品转换为推荐提示(不含掩码)。
输入到微调好的 RecLLM 模型中。
模型通过一次前向传播,输出对所有物品的评分概率
r_i_hat。选择用户未交互过的、得分最高的
M个物品作为推荐结果。
核心思想总结¶
桥接符号与语义:通过引入
<user_i>和<item_j>令牌,将推荐系统中的离散ID“翻译”成LLM能理解的“语言”。双嵌入设计:用协同嵌入捕捉交互 patterns,用内容嵌入捕捉文本语义,并通过互正则化让二者互相增强、互相纠偏。
分阶段训练:
预训练:通过语言建模任务(预测下一个token)来学习用户/物品的嵌入表示。
微调:将模型转变为高效的、直接进行多项推荐的模型。
保护与利用:始终固定预训练LLM的主干参数,只训练新增的嵌入层和预测头,既充分利用了LLM的知识和推理能力,又避免了灾难性遗忘。
简单来说,CLLM4Rec 把推荐任务巧妙地转换成了LLM擅长的“完形填空”和“文本生成”任务,从而让强大的LLM为推荐系统服务。
4. Empirical Study¶
本节通过在四个公开数据集和一个 LinkedIn 职业推荐数据集上的实验,探讨以下三个研究问题(RQ):
RQ1:CLLM4Rec(首个将基于 ID 的范式与基于 LLM 的范式紧密耦合的推荐系统)在性能上如何与最先进的基于 ID 和基于 LLM 的推荐系统(RS)进行比较?
RQ2:CLLM4Rec 的预训练阶段(包括互正则化技巧和随机项目重排序策略)如何影响其性能?
RQ3:CLLM4Rec 在微调阶段使用掩码提示(masked prompting)和多项式项目预测头(multinomial item prediction head)如何影响推荐的效率与效果?
本节主要讨论基于 GPT-2 的 CLLM4Rec 模型,该模型具有 768 维的 token 嵌入和 50,257 个 token。更多 LLM 模型的实验结果见附录 B。
4.1 实验设置(Experimental Setup)¶
4.1.1 数据集(Datasets)¶
本节实验使用四个公开推荐数据集和一个 LinkedIn 职业推荐数据集:
公开数据集:
Amazon Beauty、Toys、Sports 数据集(用户评分大于3的作为隐式反馈)
Yelp 数据集(同样进行二值化处理)
LinkedIn 数据集:
用户对职位广告的点击作为隐式反馈
用户简介与职位描述作为文本特征
数据预处理包括:
确保每个用户至少有5个交互记录(5-core)
随机划分训练集(80%)、验证集(10%)和测试集(10%)
数据集统计信息汇总于附录表3。
4.2 与基线模型的比较(Comparison with Baselines)¶
4.2.1 基线模型(Baselines)¶
为验证 CLLM4Rec 的综合性优势,实验与以下基线模型进行比较:
基于 ID 的基线:
Multi-VAE:基于变分自编码器的协同过滤模型
MD-CVAE:Multi-VAE 的改进版,引入文本特征的 VAE 进行正则化
基于语言模型的基线:
BERT4Rec:利用双向自注意力的掩码语言建模进行推荐
S3^3Rec:扩展 BERT4Rec,引入项目属性预测等任务进行自监督学习
基于大语言模型的基线:
LLM-Scratch:从头训练模型,不使用预训练权重
LLM-CF:仅保留协同 LLM 和 RecLLM,去除内容 LLM 和互正则化
LLM-FtAll:微调整个模型(包括预训练 LLM 的嵌入)
LLM-FixOrd:去除随机项目排序策略
LLM-PreRec:仅使用预训练阶段的输出进行推荐,不进行微调
4.2.2 定性分析(Qualitative Analysis)¶
部分基于 LLM 的推荐方法(如 P5、TALLRec)依赖用户/项目描述生成推荐,但生成的 token 可能与推荐无关,需提供候选列表避免幻觉。CLLM4Rec 可直接从整个项目池中生成多个推荐,因此适用于更广泛场景。
4.2.3 公开数据集结果(Results on Public Datasets)¶
实验结果如表 1 所示,CLLM4Rec 在所有数据集上均优于其他基线模型,尤其在以下方面表现显著:
ID 基线:Multi-VAE 表现强大,但 CLLM4Rec 利用 LLM 的预训练知识,显著优于 MD-CVAE
LLM 基线:
LLM-Scratch 性能最差,说明从头训练无法有效利用预训练信息
LLM-FtAll 性能较差,说明全量微调可能破坏预训练知识
LLM-PreRec 表现良好,说明预训练阶段的软+硬提示策略有效
CLLM4Rec 在 LLM-PreRec 的基础上通过微调进一步提升性能,证明了其推荐导向微调的有效性
4.2.4 LinkedIn 数据集结果(Results on LinkedIn Dataset)¶
CLLM4Rec 与 LinkedIn 当前的双塔模型(TT)和 M6-Retrieval(基于 M6 Transformer 的推荐模型)进行比较,结果如表 2 所示:
CLLM4Rec 显著优于 TT 模型
CLLM4Rec-Emb:将 CLLM4Rec 学到的嵌入作为 TT 模型的输入,性能进一步提升,且优于 M6-Retrieval
尽管 CLLM4Rec 推理效率较高,但相比 TT 模型仍存在延迟问题,实际部署需权衡效率与性能。
4.3 参数敏感性分析(Parameter Sensitivity Analysis)¶
本节分析 CLLM4Rec 中的超参数 λc(控制互正则化强度)对性能的影响。
当 λc 较小时:互正则化不足,内容 LLM 无法为协同 LLM 提供足够的信息,性能下降
当 λc 过大时:互正则化损失占主导,抑制了语言建模的学习效果
λc = 1 附近性能达到最优,是推荐实践的起点
图 4 展示了在四个数据集上的 λc 敏感性分析结果,验证了该结论的普遍性。
总结¶
本节通过系统实验验证了以下结论:
CLLM4Rec 在多个数据集上均优于传统 ID 模型和 LLM 模型
预训练阶段的互正则化和随机重排序策略对性能提升至关重要
微调阶段采用掩码提示和多项式预测头可提升推荐效率和效果
参数 λc 的选择对模型性能有显著影响,1 是一个推荐的初始值
CLLM4Rec 在工业级 LinkedIn 数据集上表现出应用潜力,尤其在嵌入结合使用时
整体来看,CLLM4Rec 在推荐系统中成功融合了 ID 模型与 LLM 模型的优势,是一种有潜力的推荐系统新范式。
5. Conclusion¶
本文提出了 CLLM4Rec,这是首个将 ID范式(用户/项目标识符)和 LLM范式(大型语言模型)紧密结合的推荐系统方法。该方法在忠实捕捉用户和项目语义的同时,也能充分利用预训练语言模型所蕴含的知识和逻辑推理能力。
重点内容:
CLLM4Rec 的创新点:通过一种基于“软+硬”提示策略的相互正则化的预训练方法,CLLM4Rec 能够有效融合用户和项目的协同信息与内容信息,并借助语言建模来进行建模。
推荐导向的微调:在预训练的基础上,CLLM4Rec 进行了推荐导向的微调,以充分挖掘并利用预训练中获得的知识,从而高效生成推荐结果。
实验验证:广泛的实验表明,CLLM4Rec 在多个方面均展现出优于当前最先进的方法。这验证了其在推荐系统中的多方面优势。
总结:CLLM4Rec 通过创新性的预训练和微调策略,将传统推荐方法与预训练语言模型的优点深度融合,为推荐系统提供了一种新的、高效且强大的解决方案。
Acknowledgment¶
本研究部分得到了国家科学基金会(National Science Foundation)的资助,资助编号包括:IIS-2006844、IIS-2144209、IIS-2223769、CNS2154962 和 BCS-2228534。此外,研究还得到了弗吉尼亚州网络倡议(Commonwealth Cyber Initiative Awards)的资助,资助编号为 VV-1Q23-007、HV2Q23-003 和 VV-1Q24-011。作者也获得了摩根大通(JP Morgan Chase)和思科(Cisco)的教师研究奖的支持。重点强调了多方资助的支持,体现了研究的多方合作与资源投入。
Appendix A Technical Details¶
A.1. Soft+Hard Prompting 的实现¶
在实现Soft+Hard Prompting策略时(如3.3.2节所述),针对仅解码器结构的LLM(如GPT),我们仅生成提示词中的“keys”和“values”,用于异构标记(如 𝐱𝑖𝑟,𝑝,𝐱𝑖𝑗𝑢𝑣,𝑝),并使用最后一个标记的“query”作为起点,生成主文本中的同构标记(如 𝐱𝑖𝑟,𝑚,𝐱𝑖𝑗𝑢𝑣,𝑚),用于语言建模任务。
对于编解码器结构的LLM(如T5),一种自然的思路是:将提示词(如 𝐱𝑖𝑟,𝑝,𝐱𝑖𝑗𝑢𝑣,𝑝)作为编码器输入,再在解码器中生成主文本(如 𝐱𝑖𝑟,𝑚,𝐱𝑖𝑗𝑢𝑣,𝑚)。
A.2. 推荐导向微调的互正则化目标¶
在推荐导向的微调中,我们定义了一个互正则化目标函数,具体如下:
目标函数为:
其中关键点如下:
Multinomial NLL Loss(负对数似然损失)
用于衡量推荐预测头输出(如 𝐫𝑖ℎ𝑜𝑙𝑑^)与真实标签之间的差距。
它鼓励模型输出的用户潜在变量(如 𝐡𝑙,𝑖,−1𝑟𝑒𝑐)与用户历史交互商品的嵌入表示相似。Prior loss(先验损失)
加入L2正则化项,防止模型参数过大,提高泛化能力。
用于对齐用户嵌入(𝐳𝑖𝑙,𝑢)与物品嵌入(𝐳𝑖𝑘𝑙,𝑣)的规范性。MR loss with content LLM(内容LLM的互正则化损失)
通过引入内容LLM提供的嵌入(如 𝐳𝑖𝑐,𝑢, 𝐳𝑖𝑘𝑐,𝑣),正则化模型学习的嵌入与内容信息的一致性。
重点在于确保推荐模型(RecLLM)与内容模型(content LLM)之间的协同学习。常数项 𝒞rec
优化过程中与目标函数无关的常数项,不影响最终求解。
总结¶
本节重点介绍了Soft+Hard Prompting的实现方式以及推荐模型微调中的互正则化目标函数。对于不同的LLM结构(仅解码器 vs 编解码器结构),提示词的处理方式有所不同。而互正则化目标函数的核心在于:
通过推荐预测头建模用户与物品间的交互分布;
通过引入L2正则化和内容LLM的嵌入,实现模型间的协同学习与泛化能力提升。
Appendix B Experiments¶
B.1. 数据集统计¶
本节总结了论文中使用的公开数据集和LinkedIn推荐数据集的统计信息,详见表3,用于后续实验的分析与比较。
B.2. 基于GPT-2的CLLM4Rec的实现细节¶
本节详细介绍了基于GPT-2的CLLM4Rec模型的实现细节。训练过程分为三个阶段:
内容LLM预训练:通过语言建模对用户/物品的内容嵌入进行10个epoch的预训练,以初始化模型。
协同与内容LLM的联合预训练:交替训练协同模型和内容模型,共进行100个epoch,目标函数参考方程7和8。
推荐导向的微调阶段:在此阶段进行150个epoch的微调,并通过Recall@20、Recall@40和NDCG@100指标在验证集上选择最优模型。
其中一个关键的超参数是先验精度λc(λ_c),它控制协同与内容模型之间的相互正则化强度。论文中先通过网格搜索确定其最优值,并以此对比其他基线模型,随后分析其对模型性能的影响。
B.3. 补充实验结果¶
B.3.1. 更多模型骨干的实现细节¶
本节展示了CLLM4Rec使用两种额外的大型语言模型(LLM)骨干进行的实验,以验证其泛化能力:
T5-base:基于编码器-解码器结构,包含32,128个词汇标记,每个标记对应一个768维嵌入。
LLaMA-7B:使用与T5相同的标记方式,每个标记对应一个4,096维嵌入。
对于非对称模型(即预测头与单词嵌入未绑定的模型),在预训练和微调阶段,模型的预测头权重会被随机初始化并与物品嵌入一起学习。训练过程与GPT-2模型类似,分为预训练、相互正则化和推荐导向微调三个阶段。
B.3.2. 更多基线模型¶
本节引入了两个强ID基模型:
EASE:基于单层自编码器,具有无自重建约束,具有更低的方差和更强的归纳偏置,适用于稀疏评分数据。
BPR:通过将用户/物品的词袋文本特征与协同嵌入结合,在优化排序目标时提高效果。
B.3.3. 结果与分析¶
实验结果总结在表4中,对比了不同LLM骨干下的CLLM4Rec模型与基线模型在三个Amazon Review数据集(AM-Beauty、AM-Toys、AM-Sports)上的性能。
CLLM4Rec-GPT2 表现最佳,性能优于其他模型,包括CLLM4Rec-T5和CLLM4Rec-LLaMA。
CLLM4Rec-T5 表现较差,原因可能包括:
T5模型参数初始化方差较大,导致训练不稳定。
T5的prompt设计与CLLM4Rec的目标存在不匹配。
CLLM4Rec-LLaMA 在较大数据集(AM-Sports)上表现略优于GPT-2,但在较小数据集(AM-Beauty)上存在过拟合问题,说明模型大小与数据规模之间存在平衡关系。
总结¶
本附录通过实验验证了CLLM4Rec模型在不同LLM骨干下的泛化能力,并对比了多个基线模型。结果表明,GPT-2在稳定性和性能方面具有优势,而T5和LLaMA则在特定条件下(如数据规模较大)表现出一定的潜力。同时,模型设计中的关键超参数(如λc)对性能有显著影响,应谨慎调整。