Order-agnostic Identifier for Large Language Model-based Generative Recommendation
TL;DR 精炼摘要
本文提出了一种基于大语言模型的无序标识符设计,用于生成式推荐,解决了现有标识符在效率和性能上的问题。通过整合协同过滤与语义信息,设计无序标识符并采用SETRec框架,利用稀疏注意力掩码和查询引导生成机制,显著提升了推荐效果和生成效率。
摘要
Leveraging Large Language Models (LLMs) for generative recommendation has attracted significant research interest, where item tokenization is a critical step. It involves assigning item identifiers for LLMs to encode user history and generate the next item. Existing approaches leverage either token-sequence identifiers, representing items as discrete token sequences, or single-token identifiers, using ID or semantic embeddings. Token-sequence identifiers face issues such as the local optima problem in beam search and low generation efficiency due to step-by-step generation. In contrast, single-token identifiers fail to capture rich semantics or encode Collaborative Filtering (CF) information, resulting in suboptimal performance. To address these issues, we propose two fundamental principles for item identifier design: 1) integrating both CF and semantic information to fully capture multi-dimensional item information, and 2) designing order-agnostic identifiers without token dependency, mitigating the local optima issue and achieving simultaneous generation for generation efficiency. Accordingly, we introduce a novel set identifier paradigm for LLM-based generative recommendation, representing each item as a set of order-agnostic tokens. To implement this paradigm, we propose SETRec, which leverages CF and semantic tokenizers to obtain order-agnostic multi-dimensional tokens. To eliminate token dependency, SETRec uses a sparse attention mask for user history encoding and a query-guided generation mechanism for simultaneous token generation. We instantiate SETRec on T5 and Qwen (from 1.5B to 7B). Extensive experiments demonstrate its effectiveness under various scenarios (e.g., full ranking, warm- and cold-start ranking, and various item popularity groups). Moreover, results validate SETRec's superior efficiency and show promising scalability on cold-start items as model sizes increase.
思维导图
论文精读
中文精读
1. 论文基本信息
1.1. 标题
Order-agnostic Identifier for Large Language Model-based Generative Recommendation (用于大语言模型生成式推荐的无序标识符)
1.2. 作者
Xinyu Lin, Haihan Shi, Wenjie Wang, Fuli Feng, Qifan Wang, See-Kiong Ng, Tat-Seng Chua。 作者主要来自新加坡国立大学 (National University of Singapore)、中国科学技术大学 (University of Science and Technology of China) 和 Meta AI。其中,Wenjie Wang 和 Fuli Feng 为共同通讯作者。
1.3. 发表期刊/会议
Proceedings of the 48th International ACM SIGIR Conference on Research and Development in Information Retrieval (SIGIR '25), July 13-18, 2025, Padua, Italy. SIGIR 是信息检索领域的顶级国际会议,具有很高的学术声誉和影响力。
1.4. 发表年份
2025年
1.5. 摘要
该论文关注利用大语言模型 (LLMs) 进行生成式推荐,其中 item tokenization(项目标记化)是关键步骤。现有方法要么使用 token-sequence identifiers(令牌序列标识符),将项目表示为离散令牌序列,但这面临 beam search 中的 local optima(局部最优)问题和因 step-by-step generation(逐步生成)导致的低效率;要么使用 single-token identifiers(单令牌标识符),如 ID 或 semantic embeddings(语义嵌入),但这未能捕获丰富的语义或 Collaborative Filtering (CF)(协同过滤)信息,导致性能不佳。
为解决这些问题,本文提出了项目标识符设计的两个基本原则:1) 整合 CF 和 semantic information 以充分捕获多维度项目信息;2) 设计 order-agnostic identifiers(无序标识符)以消除令牌依赖,从而缓解 local optima 问题并实现 simultaneous generation(同时生成)以提高效率。据此,论文引入了一种新颖的 set identifier paradigm(集合标识符范式),将每个项目表示为一组无序令牌。为实现这一范式,论文提出了 SETRec,它利用 CF 和 semantic tokenizers(语义标记器)来获取无序的多维度令牌。为消除令牌依赖,SETRec 使用 sparse attention mask(稀疏注意力掩码)进行用户历史编码,并采用 query-guided generation(查询引导生成)机制进行令牌的同时生成。论文在 T5 和 Qwen (从 1.5B 到 7B) 上实例化了 SETRec。大量实验证明了其在各种场景 (例如 full ranking(全排名)、warm- 和 cold-start ranking(暖启动和冷启动排名)、以及不同项目流行度组) 下的有效性。此外,结果验证了 SETRec 卓越的效率,并展示了其在模型规模增加时对 cold-start items(冷启动项目)的良好可扩展性。
1.6. 原文链接
原文链接: https://arxiv.org/abs/2502.10833v2 PDF 链接: https://arxiv.org/pdf/2502.10833v2.pdf 发布状态: 预印本 (arXiv)
2. 整体概括
2.1. 研究背景与动机
随着 Large Language Models (LLMs)(大语言模型)在各个领域的成功,将其应用于 personalized recommendation(个性化推荐)已成为一个热门研究方向。LLMs 凭借其丰富的世界知识和强大的推理能力,在理解复杂用户行为和多样化项目特征方面超越了传统的推荐模型。在 LLM-based generative recommendation(基于 LLM 的生成式推荐)中,一个基础且关键的步骤是 item tokenization(项目标记化),即为每个项目分配一个标识符,以便 LLMs 能够编码用户历史并生成下一个推荐项目。
然而,现有的 item tokenization 方法存在显著问题:
Token-sequence identifiers(令牌序列标识符): 这类方法将项目表示为离散的令牌序列。虽然能够编码多维度信息,但它们面临两个主要挑战:Local optima issue(局部最优问题): 在beam search(束搜索)生成过程中,由于早期令牌的低概率可能导致正确的目标项目被过早剪枝,从而无法生成准确结果(如原文 Figure 1 所示)。Low generation efficiency(低生成效率):Autoregressive generation(自回归生成)需要多次串行调用 LLM,这导致高昂的计算开销和低下的推理速度,严重阻碍了实际部署。
Single-token identifiers(单令牌标识符): 这类方法使用单个ID embedding(ID 嵌入)或semantic embedding(语义嵌入)来表示项目。虽然提高了生成效率,但它们牺牲了性能:-
ID embeddings(ID 嵌入): 严重依赖足够的交互数据来捕获Collaborative Filtering (CF)(协同过滤)信息,因此对long-tailed users/items(长尾用户/项目)的鲁棒性差。 -
Semantic embeddings(语义嵌入): 忽略了对CF信息的建模,而CF信息对于个性化推荐至关重要。综上所述,核心问题是如何设计
item identifiers,以确保LLM-based recommendation既有效又高效。本文旨在弥合现有item tokenization方法在信息丰富性、生成效率和local optima问题之间的差距。
-
2.2. 核心贡献/主要发现
本文为解决上述问题,提出了两项基本原则并基于此开发了新的方法 SETRec。其核心贡献和主要发现包括:
- 提出了新颖的
set identifier paradigm(集合标识符范式): 这一范式将每个项目表示为一组order-agnostic tokens(无序令牌),这些令牌整合了CF和semantic information(语义信息),从而充分捕获多维度项目信息,并消除令牌之间的不必要依赖。 - 引入了
SETRec模型作为set identifier paradigm的有效实现:Order-agnostic tokenization(无序标记化):SETRec利用CF tokenizer(协同过滤标记器)和semantic tokenizer(语义标记器)为每个项目生成一组无序的多维度连续令牌。Simultaneous generation(同时生成): 为消除令牌依赖并提高效率,SETRec提出了:Sparse attention mask(稀疏注意力掩码): 用于用户历史编码,该掩码会丢弃标识符内部令牌的可见性,同时保留对先前标识符的访问,确保无序性。Query-guided generation mechanism(查询引导生成机制): 采用可学习的查询向量来引导 LLMs 同时生成每个信息维度(如CF和不同语义维度)的令牌。
Token set grounding(令牌集合接地):SETRec将生成的令牌集映射到现有项目,通过将所有项目的CF和semantic embeddings作为grounding heads(接地头)来计算项目分数。
- 广泛的实验验证: 在
T5和Qwen(1.5B 到 7B) 等不同架构的 LLMs 上实例化SETRec,并在四个真实世界数据集上进行了大量实验。结果表明:SETRec在full ranking(全排名)、warm-start(暖启动)和cold-start ranking(冷启动排名)等多种场景下都显著优于所有基线方法,证实了其有效性。SETRec在推理效率上取得了显著提升(平均 8 到 20 倍的加速),使得LLM-based generative recommendation更具实用性。SETRec展示了强大的泛化能力,尤其是在cold-start items上,并且随着模型规模的增加,其在cold-start items上的性能具有良好的可扩展性。
3. 预备知识与相关工作
本节将介绍理解本文所需的基础概念、回顾相关工作,并分析 SETRec 在技术演进中的位置及其与前人工作的区别。
3.1. 基础概念
3.1.1. 大语言模型 (LLM-based Recommendation)
LLMs(大语言模型)是在海量文本数据上预训练的 Transformer(变换器)模型,具有强大的语言理解、生成和推理能力。LLM-based recommendation(基于大语言模型的推荐)是指利用 LLMs 的这些能力来构建推荐系统。它们通常通过将用户历史交互和项目信息编码为文本序列,然后让 LLM 生成下一个推荐项目或项目标识符。
3.1.2. 项目标记化 (Item Tokenization)
在 LLM-based recommendation 中,item tokenization(项目标记化)是指将离散的项目转换为 LLM 可以理解和处理的表示形式,即 item identifiers(项目标识符)。这些标识符可以是单个令牌或令牌序列,它们承载着项目的各种信息(如 ID、语义特征等),供 LLM 进行用户历史编码和下一个项目生成。
3.1.3. 令牌序列标识符 (Token-sequence Identifier)
这类标识符将每个项目表示为一个离散的令牌序列,例如 ['电影', '动作', '科幻']。LLM 通过 autoregressive generation(自回归生成)方式,一个令牌一个令牌地生成这些序列,从而表示一个推荐项目。
3.1.4. 单令牌标识符 (Single-token Identifier)
这类标识符将每个项目表示为一个连续的嵌入向量(即单个令牌),例如一个 ID embedding(ID 嵌入)或 semantic embedding(语义嵌入)。LLM 直接生成下一个项目的嵌入向量,然后通过 grounding(接地)机制将其映射回实际的项目 ID。
3.1.5. 束搜索 (Beam Search) 与 局部最优问题 (Local Optima Issue)
Beam search(束搜索)是一种启发式搜索算法,常用于序列生成任务(如机器翻译、文本摘要和 autoregressive item generation)。它在每个生成步骤中保留 top-K 个最有可能的部分序列(即“束”),并从这些部分序列中扩展,而不是探索所有可能的序列。
Local optima issue(局部最优问题)指 beam search 的贪婪性质。如果一个真实的目标序列的早期令牌概率较低,即使它整体上是最佳的,也可能在 beam search 的早期阶段被剪枝(即从“束”中移除),导致最终无法生成正确的序列。原文 Figure 1 展示了这一问题。
3.1.6. 自回归生成 (Autoregressive Generation)
Autoregressive generation(自回归生成)是一种序列生成范式,其中当前令牌的生成依赖于所有先前生成的令牌。对于 token-sequence identifiers,这意味着 LLM 必须按顺序生成每个令牌,直到整个项目标识符完成。这种 step-by-step 的过程效率较低。
3.1.7. 协同过滤信息 (Collaborative Filtering (CF) Information)
Collaborative Filtering (CF)(协同过滤)是一种推荐技术,通过分析用户或项目之间的相似性来进行推荐。CF information(协同过滤信息)通常从用户历史交互行为(如购买、点击、评分)中学习得到,反映了用户对项目的偏好模式以及项目之间的共现关系。
3.1.8. 语义信息 (Semantic Information)
Semantic information(语义信息)指项目的非交互属性,如标题、描述、类别、品牌、图片等文本或多媒体数据所蕴含的意义。它可以帮助理解项目的内涵,尤其在用户交互稀疏(cold-start)的情况下,可以提供重要的推荐依据。
3.1.9. 注意力机制 (Attention Mechanism)
Attention Mechanism(注意力机制)是 Transformer 架构的核心组成部分,允许模型在处理序列时动态地关注输入序列中不同部分的重要性。它通过计算 query(查询)与 key(键)之间的相似性来生成注意力权重,然后用这些权重对 value(值)进行加权求和,得到最终的输出。Scaled Dot-Product Attention 是最基本的注意力形式,其公式如下:
其中:
-
(Query):查询矩阵,表示当前要关注的信息。
-
(Key):键矩阵,表示可供查询的信息。
-
(Value):值矩阵,表示与键相关联的实际信息。
-
Q, K的维度为 。 -
:Softmax 函数,将得分转换为概率分布。
-
:缩放因子,用于防止点积过大,导致 Softmax 函数梯度过小。
Multi-Head Attention(多头注意力)机制则是将Scaled Dot-Product Attention机制并行运行多次,每个“头”学习不同的注意力模式,然后将结果拼接并线性投影。在本文中,sparse attention mask会在计算 后、应用 Softmax 前,对某些得分进行修改(例如设为负无穷),从而限制某些token之间的注意力,实现特定的注意力模式。
3.1.10. 自动编码器 (Autoencoder (AE))
Autoencoder (AE)(自动编码器)是一种无监督神经网络模型,旨在学习输入数据的有效编码(表示)。它由两部分组成:encoder(编码器)将输入数据映射到低维潜在空间,decoder(解码器)则尝试从潜在表示中重建原始输入。通过最小化重建误差,AE 学习到数据的压缩且富有信息量的表示。在本文中,AE 用于将 item semantic representations 编码为多个 semantic embeddings。
3.1.11. LoRA (Parameter-Efficient Fine-Tuning)
LoRA (Low-Rank Adaptation of Large Language Models) 是一种 Parameter-Efficient Fine-Tuning(参数高效微调)技术。它通过在预训练模型的 Transformer 层的权重矩阵旁边注入小的、可训练的低秩矩阵来微调大型预训练模型。这大大减少了需要训练的参数数量,从而降低了计算资源需求和存储成本,同时保持了与全量微调相当的性能。
3.2. 前人工作
论文在 LLM-based generative recommendation 领域,对比了两种主流的 item identifier 类型:
3.2.1. 单令牌标识符 (Single-token Identifiers)
DreamRec[46]:利用ID embedding(ID 嵌入)表示项目,并采用diffusion model(扩散模型)来细化 LLM 生成的ID embedding。E4SRec[14] 和LITE-LLM4Rec[34]:利用预训练的CF模型获得ID embedding,或直接使用semantic embedding,然后通过线性投影层高效地获取项目分数。 局限性: 无法捕获丰富的语义信息或CF信息,导致性能次优,尤其在cold-start场景下表现不佳。
3.2.2. 令牌序列标识符 (Token-sequence Identifiers)
- 基于人类词汇的标识符:
BIGRec[1]:采用项目标题作为标识符,其令牌来自人类词汇。IDGenRec[31]:是一个可学习的ID generator(ID 生成器),旨在从人类词汇中生成简洁但信息丰富的标签来表示每个项目。 局限性: 依赖human vocabulary,可能无法完全利用 LLM 内部知识,且autoregressive generation效率低。
- 基于外部令牌的标识符:
CID[9]:通过hierarchical clustering(层次聚类)获取令牌序列,利用item co-occurrence matrix(项目共现矩阵)来生成标识符,确保具有相似交互的项目共享相似令牌。SemID[9]:也使用外部令牌序列表示项目,这些序列基于层次化的项目类别获得。TIGER[26]:利用RQ-VAE(残差向量量化变分自动编码器)和codebooks(码本)将项目语义信息量化为外部令牌序列,标识符按顺序包含从粗粒度到细粒度的信息。LETTER[36]:作为最先进的item tokenization方法之一,它将CF和semantic information整合到RQ-VAE的训练中,实现了具有多维度信息的标识符。 局限性: 虽然能够包含层次信息和多维度信息,但仍受local optima问题和autoregressive generation低效率的困扰。
3.3. 技术演进
推荐系统从早期的 Content-Based(基于内容)和 Collaborative Filtering(协同过滤)方法,逐步发展到结合深度学习的 Sequential Recommendation(序列推荐)。近年来,Large Language Models(大语言模型)的兴起为推荐系统带来了新的范式,即 LLM-based recommendation。在这个背景下,item tokenization 作为连接 language space(语言空间)和 item space(项目空间)的桥梁,其设计至关重要。
早期的 LLM-based recommendation 尝试直接使用 item 的文本描述 (BIGRec) 或生成简短的文本标签 (IDGenRec) 作为标识符,利用 LLM 的文本理解能力。随后,研究者开始探索 external tokens(外部令牌)来更抽象、更高效地表示 item,并引入层次结构 (CID, SemID) 或更复杂的量化技术 (TIGER, LETTER) 来捕获 item 的多维度信息。这些方法主要采用 token-sequence identifiers 和 autoregressive generation。
为了解决 autoregressive generation 的效率问题,single-token identifiers 应运而生,试图通过直接生成 item embeddings 来加速推理 (E4SRec, DreamRec)。然而,这又带来了信息损失或 cold-start 性能下降的问题。
本文的 SETRec 正是处于这一技术演进的交叉点。它试图结合 token-sequence identifiers 的信息丰富性和 single-token identifiers 的效率优势,通过引入 order-agnostic set identifier 范式,来同时解决 local optima 和 generation efficiency 问题,并整合 CF 与 semantic information。
3.4. 差异化分析
SETRec 与现有方法的差异主要体现在以下几个方面:
- 标识符范式:
SETRec提出set identifier paradigm,将项目表示为一组无序的令牌,这与传统的token-sequence identifiers(令牌序列标识符)的有序生成方式根本不同。 - 信息整合:
SETRec从设计之初就将CF和semantic information整合到item identifier中,并以多维度令牌的形式表示,这比single-token identifiers更具信息量,且比某些token-sequence identifiers的整合方式更灵活。 - 生成效率与
local optima:- 通过
simultaneous generation(同时生成)和query-guided mechanism(查询引导机制),SETRec避免了token-sequence identifiers的step-by-step autoregressive generation,显著提升了推理效率。 Order-agnostic identifiers(无序标识符)和sparse attention mask(稀疏注意力掩码)的设计,直接缓解了beam search在token-sequence generation中可能遇到的local optima问题,因为令牌之间不再有强制的生成顺序依赖。
- 通过
- 泛化能力:
SETRec结合CF和semantic information的多维度令牌设计,使其在warm items(暖启动项目)和cold-start items(冷启动项目)上都能表现出色,解决了single-token ID embedding在cold-start上的弱点,以及single-token semantic embedding忽略CF信息的问题。
4. 方法论
本文提出的 SETRec 框架旨在实现 LLM-based generative recommendation 的有效性和高效性,核心思想是引入一种新颖的 set identifier paradigm(集合标识符范式)。这一范式遵循两个基本原则:1) 整合 Collaborative Filtering (CF)(协同过滤)和 semantic information(语义信息),以充分捕获多维度项目信息;2) 设计 order-agnostic identifiers(无序标识符),以消除令牌依赖,从而缓解 local optima 问题并实现 simultaneous generation(同时生成)以提高效率。
4.1. 方法原理
SETRec 的核心原理是将每个项目表示为一组无序的 CF 和 semantic tokens(语义令牌)。这意味着一个项目不再是一个单一的 ID 或一个有序的令牌序列,而是一个包含不同信息维度(如 CF、品牌语义、价格语义 等)的令牌集合。这种无序性使得这些令牌可以并行生成,从而大幅提升效率,并避免 autoregressive generation 中 local optima 的问题。同时,通过专门设计的 CF 和 semantic tokenizers,确保了每个项目标识符都能全面地融合用户行为偏好和项目内容属性。
4.2. 核心方法详解 (SETRec)
SETRec 主要由两大部分组成:Order-agnostic Item Tokenization(无序项目标记化)和 Simultaneous Item Generation(同时项目生成)。
4.2.1. 无序项目标记化 (Order-agnostic Item Tokenization)
为了满足整合 CF 和 semantic information 以及无序标识符的原则,SETRec 利用 CF 和 semantic tokenizers 将每个项目编码为一组无序的连续令牌。原文 Figure 4(b) 展示了这一过程。
CF 标记器 (CF Tokenizer)
CF Tokenizer 负责从用户交互中提取项目的 Collaborative Filtering (CF) 信息。它利用一个预训练的传统推荐模型(例如 SASRec)来获取项目的 CF embedding(CF 嵌入)。SASRec (Self-Attentive Sequential Recommendation) 是一种序列推荐模型,它通过 self-attention 机制捕捉用户历史交互序列中的项目间转换模式,从而学习到项目的表示。在这里,SASRec 的一个线性投影层被用来将 item 映射到一个 CF embedding ,其中 是 LLMs 的隐藏维度。这种 CF embedding 鼓励 LLM-based recommenders 更好地处理具有丰富交互记录的用户和项目。
语义标记器 (Semantic Tokenizer)
Semantic Tokenizer 旨在充分利用丰富的项目语义信息。
首先,给定项目的文本语义信息(如标题和类别),SETRec 使用一个预训练的语义提取器(例如 SentenceT5)来获得项目的语义表示 。SentenceT5 是一种基于 T5 模型训练的句子嵌入模型,能够将句子映射到稠密的向量空间中。
为了避免将多维度语义信息(如“品牌”和“价格”)压缩到单个潜在语义嵌入中可能导致的 embedding collapse(嵌入崩溃)问题,SETRec 不直接将 压缩成一个向量。相反,它通过一个 Autoencoder (AE)(自动编码器)将每个项目标记化为 个 order-agnostic semantic embeddings(无序语义嵌入)。
其中, 表示连接起来的语义嵌入,代表不同的潜在语义维度,而 是第 个语义嵌入。
为了鼓励这些语义嵌入尽可能多地保留有用的信息,AE 的训练使用了 reconstruction loss(重建损失):
其中 是重建的语义表示。这个损失函数促使 Encoder 学习到能够从 忠实地重建 的表示,从而保证了语义嵌入的信息丰富性。作者指出,使用一个统一的 AE 而非多个独立的 AE 有助于减少参数量并提高训练稳定性。
令牌语料库 (Token Corpus)
通过 CF 和 semantic tokenizers,每个项目 被表示为一个集合标识符:,包含一个 CF embedding 和 个 semantic embeddings。随后,SETRec 收集所有项目的这些令牌,为每个信息维度构建一个 token corpus(令牌语料库),即 。这些语料库将作为 grounding head(接地头),用于后续高效的项目接地。
4.2.2. 同时项目生成 (Simultaneous Item Generation)
为了高效、有效地生成集合标识符,SETRec 需要:1) 引导 LLMs 区分不同维度并同时生成与之对齐的令牌;2) 有效地将生成的令牌集接地到现有项目;3) 消除用户历史编码中引入的不必要依赖。
查询引导生成 (Query-guided Generation)
为了引导 LLMs 生成与特定信息维度(如 CF 和不同语义维度)对齐的令牌,SETRec 引入了可学习的 query vectors(查询向量)。对于每个维度 ,都对应一个可学习的查询向量 ,其中 是 LLMs 的潜在维度。
生成每个维度 的令牌 的过程如下:
这里,用户历史交互序列 被转换为一个展平的令牌序列 。具体来说,每个历史交互项目 对应的集合标识符 中的所有令牌被平铺连接起来,形成了 的一部分。 代表 LLM 的注意力层,它接收展平的用户历史 和针对特定维度的查询向量 作为输入,然后输出该维度下预测的令牌嵌入 。通过这种方式,LLM 可以同时为所有维度生成令牌,得到生成的集合标识符 。
令牌生成优化 (Token Generation Optimization)
为了促使生成的令牌与目标令牌准确对齐,SETRec 采用了一个优化目标,鼓励生成的令牌与正确的目标令牌相似,同时与该维度下的其他令牌保持距离:
其中:
- 是所有信息维度的集合。
- 是相似性函数(例如内积)。
- 是目标项目在维度 上的真实令牌。
- 是维度 的
token corpus。 这个损失函数本质上是一个负对数似然损失,它最大化了生成令牌 与真实目标令牌 的相似度,同时最小化了与语料库中其他令牌的相似度。
令牌生成接地 (Token Generation Grounding)
生成令牌后,需要将其映射到实际的项目。由于生成的令牌集组合数量远大于现有项目数量,SETRec 引入了一个令牌集接地策略。它利用之前构建的 token corpus 作为 grounding heads 来获取项目分数。具体来说:
其中:
- 是维度 的线性投影矩阵,从
token corpus中获得。它将生成的令牌 投影到所有 个项目的得分空间,得到维度 的项目得分 。 - 是最终的项目得分,通过
CF维度得分 和所有语义维度得分之和的线性组合得到。 - 是一个超参数,用于平衡
CF和semantic维度对最终得分的贡献强度。 值得注意的是,语义维度的grounding heads可以扩展到新项目,这赋予了SETRec强大的泛化能力,尤其是在cold-start场景下。
稀疏注意力掩码 (Sparse Attention Mask)
尽管 simultaneous generation 绕过了 item identifier 的序列生成,但用户历史交互序列在编码时仍可能引入令牌内部的顺序依赖,即一个 identifier 内部的 CF 令牌和 semantic tokens 之间产生依赖。为了解决这个问题,SETRec 引入了 sparse attention mask(稀疏注意力掩码),如原文 Figure 5(b) 所示。
具体而言,对于用户历史中的每个 item identifier,其内部的令牌(例如 CF embedding 和不同的 semantic embeddings)被视为相互独立,它们之间不允许相互关注。这意味着,例如,一个 CF embedding 不能关注同一个 item identifier 中的 semantic embeddings。然而,这些令牌可以关注所有先前交互项目的所有令牌。这通过在注意力机制中应用一个特定的掩码来实现:在计算注意力得分时,将 item identifier 内部非同维度令牌之间的注意力得分设为负无穷(在 Softmax 之前),从而有效地屏蔽掉这些依赖。
因此,sparse attention mask 确保了 set identifier 的 order agnosticism(无序性),同时保留了 item 序列之间的依赖关系(即,当前项目可以关注所有先前的项目)。
时间复杂度分析 (Time Complexity Analysis)
sparse attention mask 不仅保证了模型的 order agnosticism,还能提高生成效率。
在原始注意力机制下(如 Figure 5(a) 所示),对于 个历史交互项目,每个项目包含 个信息维度(例如一个 CF token 和 个 semantic tokens,则 )。批处理生成的时间复杂度约为 。
通过 sparse attention mask,输入被展平,query vectors 位于同一序列中。在 SETRec 中,时间复杂度降低到 。这是因为 sparse attention mask 减少了不必要的 token 间计算,特别是在 item identifier 内部。
4.2.3. 实例化 (Instantiation)
在 LLMs 上实例化 SETRec 时,整个模型通过最小化以下总损失函数进行优化:
其中:
-
是令牌生成优化损失,负责
LLM生成的令牌与目标令牌的对齐。 -
是
Autoencoder的重建损失,负责semantic tokenizer捕获语义信息。 -
是一个超参数,用于平衡这两个损失项的贡献强度。
在推理阶段,
SETRec首先将所有项目tokenization为set identifiers,并构建每个信息维度的token corpus。然后,它将用户历史转换为identifier sequence,并利用 Eq. (5) 中描述的query-guided simultaneous generation机制(结合sparse attention mask)同时生成所有信息维度的令牌。最后,SETRec利用token corpus作为可扩展的grounding heads,通过 Eq. (7) 将生成的令牌集接地到有效项目并进行排名。
5. 实验设置
本节详细介绍 SETRec 的实验设置,包括使用的数据集、评估指标、对比基线以及具体的实现细节。
5.1. 数据集
实验在四个真实世界数据集上进行,涵盖了不同领域:
- Amazon review datasets (亚马逊评论数据集):
Toys(玩具)Beauty(美妆)Sports(运动) 这些数据集包含丰富的用户交互记录和详细的项目文本元信息,如标题、描述、类别和品牌。
- Steam dataset (Steam 游戏数据集):
Steam[10] 该数据集包含大量的视频游戏用户交互记录和丰富的文本语义信息。
对于所有数据集,遵循先前研究 [37] 的做法,用户交互记录按时间戳按时间顺序排序,并按照 8:1:1 的比例划分为训练集、验证集和测试集。
此外,论文将项目划分为 warm items(暖启动项目)和 cold items(冷启动项目):
Warm items: 指在训练集中出现过的项目。Cold items: 指在训练集中未出现过的项目。
5.2. 评估指标
论文采用了推荐系统领域广泛使用的两个评估指标:Recall@K 和 NDCG@K,其中 和 。
5.2.1. 召回率 (Recall@K)
概念定义 (Conceptual Definition): Recall@K 衡量的是模型在前 个推荐结果中,实际相关项目被成功推荐出来的比例。它关注的是模型找到所有相关项目中的多少个,是一个衡量模型“覆盖”相关项目的能力。较高的 Recall@K 值表示模型能够识别出更多的相关项目。
数学公式 (Mathematical Formula):
在推荐场景中,通常 Total number of relevant items 是指用户在测试集中实际交互的项目数量(通常为 1,即下一个要推荐的项目),或者是指所有与用户相关的项目总数。在本文的生成式推荐背景下,通常指用户下一个实际交互的项目是否在前 个推荐中。
符号解释 (Symbol Explanation):
- :在前 个推荐结果中,实际与用户相关的项目数量。
- :所有与用户相关的项目总数(在下一个项目预测任务中通常为 1)。
5.2.2. 归一化折损累计增益 (NDCG@K)
概念定义 (Conceptual Definition): NDCG@K (Normalized Discounted Cumulative Gain at K) 是一种衡量推荐列表质量的指标,它考虑了相关性得分(gain)以及相关项目在推荐列表中的位置(position)。它惩罚那些相关性高但排名靠后的项目,并对不同用户的 gain 进行归一化,使其在不同查询之间具有可比性。较高的 NDCG@K 值表示推荐列表不仅包含了相关项目,而且这些相关项目被排在了更高的位置。
数学公式 (Mathematical Formula):
NDCG@K 的计算分为两个步骤:首先计算 DCG@K (Discounted Cumulative Gain),然后将其归一化。
DCG@K 的公式:
NDCG@K 的公式:
其中 IDCG@K (Ideal Discounted Cumulative Gain) 是理想情况下(即所有相关项目按其相关性从高到低排列)的 DCG@K 值。
符号解释 (Symbol Explanation):
-
:推荐列表的长度,即考虑前 个推荐结果。
-
:位于推荐列表第 位的项目的相关性得分。在二元相关性(0 或 1,即是否为下一个交互项目)场景中,如果第 位是相关项目则为 1,否则为 0。
-
:折扣因子,用于降低排名靠后项目的贡献。
-
:折损累计增益,衡量实际推荐列表的质量。
-
:理想折损累计增益,是
DCG@K的最大可能值,用于归一化。除了上述指标,实验还在三种不同的设置下进行评估:
All items: 在所有项目上进行评估。Warm items only: 仅在warm items上进行评估(即训练集中出现过的项目)。Cold items only: 仅在cold items上进行评估(即训练集中未出现过的项目)。
5.3. 对比基线
论文将 SETRec 与多种具有竞争力的基线模型进行了比较,这些基线涵盖了 single-token identifiers 和 token-sequence identifiers 两种类型:
5.3.1. 单令牌标识符 (Single-token Identifiers)
DreamRec[46]: 结合 ID 嵌入和扩散模型进行推荐。E4SRec[14]: 利用预训练的CF模型生成 ID 嵌入,并通过线性投影层高效获取项目分数。
5.3.2. 令牌序列标识符 (Token-sequence Identifiers)
BIGRec[1]: 使用项目标题作为标识符,令牌来自人类词汇。IDGenRec[31]: 可学习的 ID 生成器,生成简洁且信息丰富的文本标签作为项目标识符。CID[9]: 通过层次聚类和项目共现矩阵生成外部令牌序列标识符。SemID[9]: 基于层次项目类别生成外部令牌序列标识符。TIGER[26]: 利用RQ-VAE和码本将项目语义信息量化为外部令牌序列。LETTER[36]: 最先进的item tokenization方法之一,将CF和semantic information整合到RQ-VAE训练中,生成多维度信息的标识符。
5.4. 实现细节
- LLMs 实例化:
T5-small[25]: 编码器-解码器 (encoder-decoder) 架构。Qwen2.5[45]: 解码器-only (decoder-only) 架构,使用了 1.5B、3B 和 7B 不同规模的模型进行全面评估。
- 隐藏层维度: 采用
AE进行tokenizer训练的方法(包括TIGER、LETTER和SETRec)的隐藏层维度设置为 512、256 和 128,激活函数为ReLU。 - 提示词 (Prompt): 所有方法统一使用相同的提示词:"What would the user be likely to purchase next after buying items history?;" 以确保公平比较。
- 微调策略:
T5模型进行fully fine-tune(完全微调),而Qwen模型则采用LoRA[8](Parameter-Efficient Fine-Tuning)技术进行参数高效微调。 - 硬件: 所有实验均在四块 NVIDIA RTX A5000 GPU 上进行。
- 超参数选择:
SETRec的语义令牌数量 从 中选择。AE损失强度 从 中选择。- 语义强度 从 中选择。
6. 实验结果与分析
本节将详细分析 SETRec 在不同设置下的实验结果,包括与基线的整体性能比较、消融研究、项目流行度分析、模型参数可扩展性以及超参数敏感性。
6.1. 整体性能 (RQ1)
6.1.1. 在 T5 上的性能
以下是原文 Table 1 的结果:
| Dataset | Method | All | Warm | Cold | Inf. Time (s) All Users |
|||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| R@5 | R@10 | N@5 | N@10 | R@5 | R@10 | N@5 | N@10 | R@5 | R@10 | N@5 | N@10 | |||
| Toys | DreamRec | 0.0020 | 0.0027 | 0.0015 | 0.0018 | 0.0027 | 0.0039 | 0.0020 | 0.0024 | 0.0066 | 0.0168 | 0.0045 | 0.0082 | 912 |
| E4SRec | 0.0061 | 0.0098 | 0.0051 | 0.0064 | 0.0081 | 0.0128 | 0.0065 | 0.0082 | 0.0065 | 0.0122 | 0.0056 | 0.0078 | 55 | |
| BIGRec | 0.0008 | 0.0013 | 0.0007 | 0.0009 | 0.0014 | 0.0019 | 0.0011 | 0.0013 | 0.0278 | 0.0360 | 0.0196 | 0.0223 | 2,079 | |
| IDGenRec | 0.0063 | 0.0110 | 0.0052 | 0.0069 | 0.0109 | 0.0161 | 0.0081 | 0.0102 | 0.0318 | 0.0589 | 0.0236 | 0.0335 | 658 | |
| CID | 0.0044 | 0.0082 | 0.0040 | 0.0053 | 0.0065 | 0.0128 | 0.0049 | 0.0071 | 0.0059 | 0.0111 | 0.0047 | 0.0066 | 810 | |
| SemID | 0.0071 | 0.0108 | 0.0061 | 0.0074 | 0.0086 | 0.0153 | 0.0075 | 0.0100 | 0.0307 | 0.0507 | 0.0220 | 0.0292 | 1,215 | |
| TIGER | 0.0064 | 0.0106 | 0.0060 | 0.0076 | 0.0091 | 0.0147 | 0.0080 | 0.0102 | 0.0315 | 0.0555 | 0.0228 | 0.0314 | 448 | |
| LETTER | 0.0081 | 0.0117 | 0.0064 | 0.0077 | 0.0109 | 0.0155 | 0.0083 | 0.0101 | 0.0183 | 0.0395 | 0.0115 | 0.0190 | 448 | |
| SETRec | 0.0110* | 0.0189* | 0.0089* | 0.0118* | 0.0139* | 0.0236* | 0.0112* | 0.0147* | 0.0443* | 0.0812* | 0.0310* | 0.0445* | 60 | |
| Beauty | DreamRec | 0.0012 | 0.0025 | 0.0013 | 0.0017 | 0.0016 | 0.0028 | 0.0016 | 0.0019 | 0.0078 | 0.0161 | 0.0065 | 0.0094 | 1,102 |
| E4SRec | 0.0061 | 0.0092 | 0.0052 | 0.0063 | 0.0080 | 0.0121 | 0.0067 | 0.0082 | 0.0072 | 0.0118 | 0.0065 | 0.0077 | 120 | |
| BIGRec | 0.0054 | 0.0064 | 0.0051 | 0.0054 | 0.0008 | 0.0009 | 0.0006 | 0.0008 | 0.0106 | 0.0251 | 0.0095 | 0.0151 | 4,544 | |
| IDGenRec | 0.0080 | 0.0115 | 0.0066 | 0.0078 | 0.0106 | 0.0165 | 0.0078 | 0.0099 | 0.0187 | 0.0350 | 0.0186 | 0.0224 | 840 | |
| CID | 0.0071 | 0.0125 | 0.0060 | 0.0080 | 0.0098 | 0.0166 | 0.0077 | 0.0101 | 0.0087 | 0.0183 | 0.0071 | 0.0104 | 815 | |
| SemID | 0.0071 | 0.0131 | 0.0056 | 0.0078 | 0.0098 | 0.0174 | 0.0074 | 0.0103 | 0.0260 | 0.0465 | 0.0178 | 0.0255 | 1,310 | |
| TIGER | 0.0063 | 0.0098 | 0.0050 | 0.0062 | 0.0086 | 0.0131 | 0.0065 | 0.0082 | 0.0190 | 0.0325 | 0.0130 | 0.0178 | 430 | |
| LETTER | 0.0071 | 0.0103 | 0.0061 | 0.0070 | 0.0094 | 0.0135 | 0.0079 | 0.0091 | 0.0251 | 0.0410 | 0.0241 | 0.0285 | 430 | |
| SETRec | 0.0106* | 0.0161* | 0.0083* | 0.0103* | 0.0139* | 0.0212* | 0.0108* | 0.0134* | 0.0384* | 0.0761* | 0.0280* | 0.0413* | 126 | |
| Sports | DreamRec | 0.0027 | 0.0044 | 0.0025 | 0.0031 | 0.0032 | 0.0052 | 0.0028 | 0.0035 | 0.0045 | 0.0108 | 0.0026 | 0.0049 | 2,100 |
| E4SRec | 0.0079 | 0.0131 | 0.0075 | 0.0094 | 0.0092 | 0.0154 | 0.0085 | 0.0107 | 0.0031 | 0.0093 | 0.0019 | 0.0039 | 117 | |
| BIGRec | 0.0033 | 0.0042 | 0.0030 | 0.0033 | 0.0001 | 0.0002 | 0.0001 | 0.0001 | 0.0059 | 0.0104 | 0.0043 | 0.0061 | 7,822 | |
| IDGenRec | 0.0087 | 0.0127 | 0.0079 | 0.0092 | 0.0101 | 0.0149 | 0.0091 | 0.0107 | 0.0181 | 0.0302 | 0.0134 | 0.0179 | 1,724 | |
| CID | 0.0077 | 0.0131 | 0.0073 | 0.0092 | 0.0074 | 0.0119 | 0.0045 | 0.0061 | 0.0082 | 0.0149 | 0.0075 | 0.0099 | 2,135 | |
| SemID | 0.0094 | 0.0167 | 0.0088 | 0.0114 | 0.0119 | 0.0201 | 0.0104 | 0.0135 | 0.0254 | 0.0495 | 0.0175 | 0.0256 | 2,367 | |
| TIGER | 0.0085 | 0.0129 | 0.0080 | 0.0095 | 0.0100 | 0.0151 | 0.0091 | 0.0109 | 0.0190 | 0.0310 | 0.0120 | 0.0159 | 481 | |
| LETTER | 0.0077 | 0.0131 | 0.0073 | 0.0092 | 0.0074 | 0.0119 | 0.0045 | 0.0061 | 0.0082 | 0.0149 | 0.0075 | 0.0099 | 481 | |
| SETRec | 0.0114* | 0.0185* | 0.0101* | 0.0126* | 0.0134* | 0.0216* | 0.0115* | 0.0144* | 0.0341* | 0.0595* | 0.0233* | 0.0323* | 136 | |
| Steam | DreamRec | 0.0029 | 0.0046 | 0.0028 | 0.0035 | 0.0033 | 0.0053 | 0.0032 | 0.0040 | 0.0076 | 0.0150 | 0.0060 | 0.0088 | 4,620 |
| E4SRec | 0.0194 | 0.0351 | 0.0220 | 0.0270 | 0.0312 | 0.0558 | 0.0283 | 0.0370 | 0.0006 | 0.0010 | 0.0006 | 0.0010 | 328 | |
| BIGRec | 0.0037 | 0.0042 | 0.0030 | 0.0033 | 0.0001 | 0.0002 | 0.0001 | 0.0001 | 0.0099 | 0.0107 | 0.0099 | 0.0107 | 7,822 | |
| IDGenRec | 0.0101 | 0.0149 | 0.0091 | 0.0107 | 0.0134 | 0.0195 | 0.0121 | 0.0140 | 0.0086 | 0.0142 | 0.0075 | 0.0101 | 1,724 | |
| CID | 0.0090 | 0.0141 | 0.0078 | 0.0099 | 0.0108 | 0.0166 | 0.0093 | 0.0116 | 0.0068 | 0.0112 | 0.0060 | 0.0080 | 2,135 | |
| SemID | 0.0105 | 0.0169 | 0.0092 | 0.0116 | 0.0125 | 0.0201 | 0.0109 | 0.0138 | 0.0078 | 0.0128 | 0.0068 | 0.0090 | 2,367 | |
| TIGER | 0.0099 | 0.0162 | 0.0090 | 0.0115 | 0.0122 | 0.0200 | 0.0109 | 0.0138 | 0.0068 | 0.0112 | 0.0060 | 0.0080 | 481 | |
| LETTER | 0.0089 | 0.0138 | 0.0078 | 0.0099 | 0.0106 | 0.0166 | 0.0092 | 0.0116 | 0.0068 | 0.0112 | 0.0060 | 0.0080 | 481 | |
| SETRec | 0.0210* | 0.0326* | 0.0232* | 0.0287* | 0.0335* | 0.0520* | 0.0369* | 0.0456* | 0.0065* | 0.0103* | 0.0060* | 0.0081* | 256 | |
分析:
- 令牌序列标识符 vs. 单令牌标识符: 总体而言,
token-sequence identifiers(例如IDGenRec、SemID、TIGER)在“all”(所有)和“warm”(暖启动)设置下通常优于single-token identifiers(例如DreamRec、E4SRec)。这表明多令牌表示能够捕获更丰富的项目信息。 - 外部令牌 vs. 人类词汇: 在
token-sequence identifiers中,使用外部令牌(CID、SemID、TIGER、LETTER)的方法通常优于依赖人类词汇(BIGRec)的方法。这是因为外部令牌可以构建层次结构,更好地与自回归生成过程对齐,可能缓解local optima问题。 - 冷启动性能: 当推荐
cold items(冷启动项目)时,仅使用CF信息的方法(DreamRec、E4SRec、CID)表现不佳,因为CF严重依赖交互数据。相反,将语义信息整合到标识符中的方法(BIGRec、IDGenRec、SemID、TIGER、LETTER)在cold-start场景下表现出更好的泛化能力。其中,BIGRec和IDGenRec由于使用可读的人类词汇,更好地利用了LLMs中编码的世界知识。 SETRec的卓越性能:SETRec在所有四个数据集的“all”、“warm”和“cold”设置下,显著优于所有基线方法,且通常取得统计学上的显著性提升(标记为*)。这归因于SETRec结合了CF和semantic information到无序令牌集中,确保了准确的warm item推荐和强大的cold item泛化能力,并消除了标识符内部不准确的令牌依赖。- 效率提升:
SETRec相较于token-sequence identifiers显著降低了推理时间成本。在Toys、Beauty、Sports和Steam数据集上,SETRec分别实现了平均 15 倍、11 倍、18 倍和 8 倍的加速。这得益于其simultaneous generation(同时生成)机制,即通过单次LLM调用生成多个令牌,从而有望推动LLM-based generative recommendation的实际部署。
6.1.2. 在 Qwen-1.5B 上的性能
以下是原文 Table 2 的结果:
| Dataset | Method | All | Warm | Cold | Inf. Time (s) All Users |
|||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| R@5 | R@10 | N@5 | N@10 | R@5 | R@10 | N@5 | N@10 | |||||||
| Toys | DreamRec | 0.0006 | 0.0013 | 0.0005 | 0.0008 | 0.0008 | 0.0019 | 0.0007 | 0.0012 | 0.0076 | 0.0137 | 0.0052 | 0.0074 | 1,093 |
| E4SRec | 0.0065 | 0.0108 | 0.0056 | 0.0072 | 0.0089 | 0.0144 | 0.0075 | 0.0096 | 0.0084 | 0.0235 | 0.0055 | 0.0111 | 905 | |
| BIGRec | 0.0009 | 0.0016 | 0.0009 | 0.0012 | 0.0011 | 0.0013 | 0.0010 | 0.0011 | 0.0194 | 0.0311 | 0.0147 | 0.0191 | 43,304 | |
| IDGenRec | 0.0030 | 0.0053 | 0.0022 | 0.0031 | 0.0043 | 0.0086 | 0.0032 | 0.0048 | 0.0189 | 0.0364 | 0.0161 | 0.0224 | 30,720 | |
| CID | 0.0027 | 0.0047 | 0.0025 | 0.0033 | 0.0055 | 0.0084 | 0.0044 | 0.0056 | 0.0055 | 0.0156 | 0.0044 | 0.0081 | 27,248 | |
| SemID | 0.0024 | 0.0042 | 0.0018 | 0.0024 | 0.0034 | 0.0055 | 0.0026 | 0.0034 | 0.0140 | 0.0275 | 0.0095 | 0.0143 | 32,288 | |
| TIGER | 0.0068 | 0.0117 | 0.0054 | 0.0072 | 0.0094 | 0.0159 | 0.0070 | 0.0095 | 0.0384 | 0.0715 | 0.0291 | 0.0408 | 13,800 | |
| LETTER | 0.0057 | 0.0093 | 0.0050 | 0.0064 | 0.0080 | 0.0126 | 0.0066 | 0.0085 | 0.0217 | 0.0416 | 0.0170 | 0.0239 | 13,800 | |
| SETRec | 0.0116* | 0.0188* | 0.0095* | 0.0120* | 0.0144* | 0.0236* | 0.0118* | 0.0151* | 0.0531* | 0.0883* | 0.0382* | 0.0507* | 926 | |
| Beauty | DreamRec | 0.0007 | 0.0009 | 0.0005 | 0.0005 | 0.0010 | 0.0011 | 0.0007 | 0.0007 | 0.0090 | 0.0167 | 0.0075 | 0.0103 | 1,326 |
| E4SRec | 0.0067 | 0.0109 | 0.0056 | 0.0072 | 0.0088 | 0.0146 | 0.0072 | 0.0094 | 0.0017 | 0.0071 | 0.0010 | 0.0029 | 910 | |
| BIGRec | 0.0006 | 0.0010 | 0.0006 | 0.0007 | 0.0010 | 0.0010 | 0.0008 | 0.0008 | 0.0141 | 0.0246 | 0.0094 | 0.0135 | 29,500 | |
| IDGenRec | 0.0042 | 0.0078 | 0.0030 | 0.0043 | 0.0045 | 0.0104 | 0.0033 | 0.0054 | 0.0254 | 0.0471 | 0.0207 | 0.0292 | 35,040 | |
| CID | 0.0046 | 0.0077 | 0.0040 | 0.0052 | 0.0059 | 0.0107 | 0.0051 | 0.0068 | 0.0075 | 0.0155 | 0.0071 | 0.0096 | 27,792 | |
| SemID | 0.0030 | 0.0045 | 0.0027 | 0.0033 | 0.0050 | 0.0076 | 0.0042 | 0.0052 | 0.0159 | 0.0227 | 0.0116 | 0.0159 | 45,160 | |
| TIGER | 0.0041 | 0.0065 | 0.0032 | 0.0041 | 0.0054 | 0.0085 | 0.0042 | 0.0054 | 0.0083 | 0.0167 | 0.0064 | 0.0091 | 12,600 | |
| LETTER | 0.0040 | 0.0069 | 0.0031 | 0.0042 | 0.0051 | 0.0088 | 0.0039 | 0.0054 | 0.0043 | 0.0129 | 0.0043 | 0.0071 | 12,600 | |
| SETRec | 0.0104* | 0.0167* | 0.0085* | 0.0108* | 0.0140* | 0.0221* | 0.0109* | 0.0141* | 0.0477* | 0.0748* | 0.0370* | 0.0464* | 1,050 | |
分析:
Token-sequence identifiers竞争力有限: 与 T5 上的结果相比,Qwen-1.5B上token-sequence identifiers的竞争力有所下降。这可能因为Qwen-1.5B自身参数中蕴含更丰富的世界知识,使得pre-training和推荐任务之间的知识差距扩大,从而在有限的交互数据下难以适应推荐任务。E4SRec表现:E4SRec在大多数情况下表现出有竞争力的性能。这可能是因为它移除了原始的词汇表头,并替换为项目投影头,从而能更有效地适应推荐任务。- 人类词汇标识符在冷启动上的优势:
BIGRec和IDGenRec在Beauty数据集的cold items上表现优于其在 T5 上的对应模型。由于它们使用人类可读的词汇表示项目,这使得它们能更好地利用Qwen-1.5B内部丰富的世界知识,从而在泛化能力上更胜一筹。 - 外部令牌标识符在冷启动上的劣势: 相比之下,使用外部令牌的标识符 (
CID、SemID、TIGER、LETTER) 在cold items上的性能不如其在 T5 上的对应模型。这可能是因为训练外部令牌需要大量交互数据,否则在cold items上难以准确泛化。 SETRec的持续领先与泛化能力:SETRec持续优于所有基线模型,与在 T5 上的观察结果一致。值得注意的是,SETRec在Qwen-1.5B上的性能稳定超越了在 T5 上的SETRec,尤其是在cold设置下。这验证了SETRec在不同架构LLMs上的强大泛化能力。- 效率提升更为显著: 随着
LLM规模的增大,SETRec相对于token-sequence identifiers的效率提升更加显著,在Toys和Beauty数据集上平均实现了 20 倍的加速。
6.2. 深入分析
6.2.1. 消融研究 (RQ2)
以下是原文 Figure 6 的结果:
该图像是一个图表,展示了在不同条件下(例如热启动和冷启动)T5和Qwen-1.5B模型的召回率(Recall@10)和归一化折损累计增益(NDCG@10)。图表比较了不同算法(如SETRec、缺少语义、查询、稀疏注意力和协同过滤)在全量、热启动及冷启动情境中的效果。
图 6: 在 Toys 数据集上的消融研究。
为了评估 SETRec 各组件的有效性,论文进行了消融研究,在 T5 和 Qwen-1.5B 上分别移除了 semantic tokens(“w/o Sem”)、CF token(“w/o CF”)、用随机冻结向量替代可学习的 query vectors(“w/o Query”)以及使用原始注意力掩码(“w/o SA”)。
分析:
- 所有组件的有效性: 移除任何一个组件都会导致“all”、“warm”和“cold”设置下的性能下降,这验证了
SETRec各个组件的有效性。 - 语义令牌的重要性: 移除
semantic tokens会显著降低“cold”设置下的推荐准确性,这表明将语义信息整合到标识符中的必要性,尤其对于处理cold-start问题。 - 语义令牌 vs.
CF令牌: 有趣的是,移除semantic tokens导致的性能下降通常比移除CF token更严重。这可能是因为SETRec使用了多个语义令牌来表示每个项目,突出了利用多维度语义信息的重要性。这一观察也与一些现有研究结果一致。 CF令牌对 Qwen 的影响: 对于 T5,移除CF tokens会导致cold items性能下降。然而,对于 Qwen,使用CF tokens可能对cold items产生负面影响。这可能是因为更大规模的 Qwen 模型由于其更强大的知识库,更擅长理解语义,从而使得CF信息(在冷启动场景下本来就稀疏)的贡献变得不那么显著,甚至可能引入噪音。Query vectors和sparse attention的有效性: 移除query vectors和sparse attention同样会导致性能下降,这验证了它们在引导LLMs生成特定维度令牌和消除不必要token依赖方面的有效性。
6.2.2. 项目组分析 (RQ3)
以下是原文 Figure 7 的结果:
该图像是图表,展示了SETRec、LETTER和E4SRec在不同受欢迎程度的商品组上的表现,包括Recall@10(图(a))和NDCG@10(图(b))。可以看出,SETRec在受欢迎商品组中表现优异。
图 7: SETRec、LETTER 和 E4SRec (T5) 在 Toys 数据集上不同流行度项目组的性能。
为了深入理解 SETRec 如何提升性能,论文根据项目流行度将项目分为四组 (G1 最流行,G4 最不流行) 进行评估,并与两个具有代表性的基线(token-sequence identifier 的 LETTER 和 single-token identifier 的 E4SRec)进行比较。
分析:
- 性能趋势: 从
G1到G4(即从最流行到最不流行),所有模型的性能都逐渐下降。这是合理的,因为不流行的项目交互数据更少,LLMs难以学习,导致生成概率降低。 E4SRecvs.LETTER:E4SRec在最流行的项目(G1)上通常优于LETTER,但在不流行的项目(G2-G4)上表现不佳。这是因为E4SRec仅使用CF信息,它依赖于大量的交互数据,因此在交互稀疏的不流行项目上表现挣扎。相比之下,LETTER额外将语义信息整合到标识符中,因此在稀疏项目上具有更好的泛化能力。SETRec的全面优势:SETRec在所有流行度组上都始终优于E4SRec和LETTER。尤其值得注意的是,SETRec在稀疏项目(G2-G4)上的改进更为显著。这部分解释了SETRec在整体性能上优越的原因,表明其结合CF和语义信息的多维度无序标识符设计在处理各种流行度的项目时都具有鲁棒性。
6.2.3. 模型参数的可扩展性 (RQ3)
以下是原文 Table 3 的结果:
| All | Warm | Cold | |||||
|---|---|---|---|---|---|---|---|
| R@10 | N@10 | R@10 | N@10 | R@10 | N@10 | ||
| 1.5B | LETTER | 0.0093 | 0.0064 | 0.0126 | 0.0085 | 0.0416 | 0.0239 |
| E4SRec | 0.0108 | 0.0072 | 0.0144 | 0.0096 | 0.0235 | 0.0111 | |
| SETRec | 0.0188 | 0.0120 | 0.0236 | 0.0151 | 0.0883 | 0.0507 | |
| 3B | LETTER | 0.0109 | 0.0072 | 0.0151 | 0.0097 | 0.0471 | 0.0236 |
| E4SRec | 0.0096 | 0.0061 | 0.0129 | 0.0081 | 0.0218 | 0.0103 | |
| SETRec | 0.0195 | 0.0123 | 0.0258 | 0.0159 | 0.0964 | 0.0571 | |
| 7B | LETTER | 0.0099 | 0.0061 | 0.0137 | 0.0081 | 0.0406 | 0.0216 |
| E4SRec | 0.0088 | 0.0057 | 0.0114 | 0.0072 | 0.0133 | 0.0065 | |
| SETRec | 0.0194 | 0.0115 | 0.0239 | 0.0140 | 0.1016 | 0.0613 | |
为了探究 SETRec 随着模型参数规模的扩大(从 Qwen 1.5B 到 7B)是否能带来持续的性能提升,论文在 Toys 数据集上进行了实验。
分析:
SETRec在冷启动上的可扩展性:SETRec在cold-start items上的性能随着模型规模从 1.5B 增加到 7B 而持续提升(例如 R@10 从 0.0883 增加到 0.1016)。这表明SETRec在冷启动项目上具有良好的可扩展性,可能归因于模型参数增加带来的语义理解能力的持续增强。SETRec在暖启动上的限制: 然而,SETRec在warm items上的性能未能持续提升,这表明更大的模型不一定能带来更好的CF信息理解。这也反映在E4SRec在“warm”设置下改进有限。LETTER的弱可扩展性:LETTER在所有三种设置下都显示出较弱的可扩展性。这主要是因为LETTER使用外部令牌,这些令牌可能与LLMs的预训练知识对齐不佳,因此模型参数的增加对其性能提升有限。
6.2.4. 语义强度 的影响 (RQ4)
以下是原文 Figure 8 的结果:
该图像是图表,展示了在不同语义强度 eta 下,SETRec (T5) 在温暖和冷启动场景中的性能。左侧为温暖启动的召回率和NDCG@10,右侧为冷启动的性能指标,显示了不同 eta 值对模型效果的影响。
图 8: SETRec (T5) 在推理时不同语义强度 的性能。
为了探究语义信息在推理过程中对性能的贡献,论文改变了超参数 的值(从 0 到 1)。 表示仅使用 CF 分数进行排名,而 表示仅使用 semantic 分数进行排名。
分析:
- 整合语义的必要性: 在推理时整合语义信息是必要的( 时的性能优于 )。这表明语义信息有助于实现多维度信息的全局排名,从而增强泛化能力。
- 对冷启动的显著改进: 整合语义分数在
cold items上带来了更显著的性能提升,这强调了语义信息对于cold-start泛化的重要性。 - 纯语义的竞争力: 即使完全依赖语义信息(),
SETRec在warm items上仍能保持有竞争力的性能。这可能归因于训练过程中CF和semantic tokens之间形成的隐式对齐。
6.2.5. 超参数敏感性 (RQ4)
以下是原文 Figure 9 的结果:
该图像是图表,展示了SETRec(T5)在不同AE损失强度和不同语义token数量下的Recall@10效果。左侧子图(a)显示了对各种场景(所有、热启动、冷启动)的Recall@10的影响;右侧子图(b)展示了在相同场景下的效果。不同颜色的线代表了不同的数据类型,提供了对模型性能的比较分析。
图 9: SETRec (T5) 在不同 AE 损失强度 和不同语义令牌数量 的性能。
论文分析了两个关键超参数对 SETRec 性能的影响:AE 损失强度 和语义令牌数量 。
分析 的影响 (Figure 9(a)):
- 当 从 0 增加到 0.7 时,整体性能有所提升,但在
warm items上的性能显著下降。 - 这表明适度的
AE损失强度(例如 0.5 到 0.7)有助于semantic tokenizer更好地学习语义表示,从而提升整体性能,但过高的AE损失可能过度强调语义重建,反而影响CF信息的利用,导致warm items性能下降。
分析 的影响 (Figure 9(b)):
- 增加
semantic tokens的数量 通常可以提高性能。这可能是因为它能够缓解潜在的information conflicts(信息冲突)和embedding collapse(嵌入崩溃)问题,从而更好地表示多维度语义。 - 然而,盲目增加
semantic tokens的数量可能会损害性能。这可能是因为恢复与真实世界场景良好对齐的类别级偏好并非易事,过多的语义令牌可能引入冗余或难以有效学习的复杂性。
7. 总结与思考
7.1. 结论总结
本文深入剖析了 LLM-based generative recommendation 中现有 item identifier 存在的固有问题,包括信息不足、local optima 问题以及生成效率低下。针对这些挑战,论文提出了两项核心原则:1) 整合 CF 和 semantic information 以全面捕获多维度项目特征;2) 设计 order-agnostic identifiers(无序标识符)以消除令牌依赖,从而规避 local optima 并实现 simultaneous generation(同时生成)。
基于这些原则,本文创新性地引入了 set identifier paradigm(集合标识符范式),将每个项目表示为一组无序的令牌。为实现这一范式,论文提出了 SETRec 模型,它通过 CF 和 semantic tokenizers 获取无序的多维度令牌。为进一步消除令牌依赖,SETRec 采用了 sparse attention mask 进行用户历史编码,并通过 query-guided generation mechanism 实现令牌的同时生成。
实验结果在 T5 和 Qwen (1.5B 到 7B) 上进行了广泛验证,证明了 SETRec 在 full ranking、warm-start 和 cold-start ranking 以及不同项目流行度组等多种场景下的卓越有效性。此外,SETRec 在推理效率上展现出显著优势,并随着模型规模的扩大,在 cold-start items 上表现出强大的可扩展性。
7.2. 局限性与未来工作
论文作者也指出了当前工作的局限性并提出了未来的研究方向:
- 离散集合标识符的探索:
SETRec目前使用连续的嵌入作为令牌。未来值得探索如何设计discrete set identifiers(离散集合标识符),即一组无序的离散令牌,这可能更好地与LLMs的预训练任务对齐,并充分利用LLMs内的知识。 - 开放式推荐场景的应用: 尽管
SETRec在cold-start items等挑战性场景中表现出强大的泛化能力,但将其应用于open-ended recommendation(开放式推荐)和open-domain user behaviors(开放域用户行为)场景仍值得进一步研究。这可能需要模型处理更加动态和多样化的项目和用户意图。
7.3. 个人启发与批判
7.3.1. 个人启发
- 令牌化设计的关键性: 本文再次强调了在
LLM-based recommendation中item tokenization(项目标记化)设计的重要性。它不仅是信息编码的桥梁,更是影响模型性能、效率和泛化能力的核心环节。传统的sequential token设计固有的local optima和效率问题,促使我们跳出传统思维框架。 - 无序性与并行性:
order-agnostic identifier的思想极具启发性。将多维度信息解耦为无序集合,并通过simultaneous generation进行并行处理,巧妙地解决了autoregressive generation的效率瓶颈和local optima问题,同时保证了信息量。这为其他依赖序列生成的任务提供了新的设计思路。 - 多维度信息融合的精巧:
SETRec将CF和semantic information分别提取为独立的令牌维度,并通过query-guided generation机制统一在LLM框架下。这种“分而治之,合而用之”的策略,既保证了各维度信息的独立性,又实现了它们在推荐决策中的协同作用,尤其是在cold-start场景中展现出强大优势。 - 稀疏注意力掩码的应用:
sparse attention mask的引入,精确地控制了令牌间的依赖关系,这不仅是实现无序标识符的关键,也为Transformer架构在特定任务中进行结构化信息处理提供了灵活的范式。
7.3.2. 批判与潜在改进
CF Tokenizer的独立性:SETRec的CF tokenizer仍然依赖于一个预训练的传统推荐模型(如 SASRec)。这在一定程度上是模块化的,但也意味着CF信息的提取与LLM本身是解耦的。未来的工作可以探索如何让LLM内部直接学习和提取CF信息,实现更深层次的端到端集成,从而减少对外部传统模型的依赖。- 语义令牌数量 的确定: 论文通过超参数调优来确定
semantic tokens的数量 。虽然实验表明增加 可以提高性能,但过度增加可能适得其反。如何根据项目特征或数据集特性,自适应地确定最优的 值,或者引入动态的semantic token数量机制,是一个值得探索的方向。 Query Vectors的可解释性:query-guided generation机制引入了可学习的query vectors。这些向量在引导LLM生成特定维度令牌方面非常有效,但其具体学到了什么以及如何解释它们所代表的维度仍有待深入研究。提高这些查询向量的可解释性有助于更好地理解模型内部的工作机制。Warm-start性能的进一步提升: 尽管SETRec在warm-start场景下表现优秀,但其在Qwen大模型上未能实现与cold-start场景相同的持续性能提升。这可能暗示LLM在处理丰富CF信息方面的潜力仍未被完全挖掘。如何更好地将LLM强大的语义理解能力与传统CF的优势结合,进一步提升warm-start性能,是一个挑战。- 连续嵌入的离散化挑战: 论文提到了未来工作可以探索
discrete set identifiers。将连续嵌入离散化是一个经典但具有挑战性的问题,需要平衡信息损失和离散化带来的对LLM词汇表的兼容性。这可能需要新的quantization(量化)方法或tokenization策略。
相似论文推荐
基于向量语义检索推荐的相关论文。