Skip to main content

TIGER

(上)生成式检索推荐系统研究

1. 推荐系统简介

推荐系统在信息爆炸时代通过分析用户的历史交互行为,捕捉其兴趣、爱好和偏好,从而预测用户可能感兴趣的商品、视频、电影、书籍、音乐,甚至社交网络上的好友。传统推荐系统将用户与物品的交互表示为矩阵,通过矩阵分解等方法学习用户和物品的潜在表征。

2. 深度推荐系统框架

深度推荐系统的整体框架包括以下几个部分:

  • 输入层:包含用户特征、物品特征、相关上下文以及用户与物品的交互数据。
  • 嵌入层(Embedding Layer):通过嵌入层生成相关向量嵌入。
  • 隐藏层(Hidden Layer):采用多层感知机(MLP)、卷积神经网络(CNN)等深度神经网络,学习查询和物品的精准表征。
  • 预测层(Prediction Layer):通过查询与物品的相似性度量(例如内积)对相关物品进行排序,生成最终预测结果。

现代推荐系统采用检索和排序的策略:在检索阶段从庞大的候选集中筛选出一组可行的候选对象,然后在排序阶段使用排序模型对其进行排序。因此,推荐系统的流程通常是从检索到排序,或称为从召回到排序。建立检索模型的标准方法包括通过矩阵分解在同一空间学习查询和候选的嵌入。为了更好地捕捉数据中的非线性关系,近年来多采用神经网络将查询和候选嵌入到同一空间的框架。由于候选集规模可能非常庞大,需通过索引快速筛选用户可能感兴趣的候选集,通常使用近似最近邻搜索(ANN)方法进行高效筛选。

3. 当前推荐系统的局限与挑战

当前推荐系统存在以下局限和挑战:

  • 复杂流程:基于召回、排序和重排的流程复杂,需要对每个阶段分别优化。
  • 召回阶段依赖:召回阶段的目标是从庞大的候选集中快速筛选相关物品。如果召回阶段无法高效筛选出用户感兴趣的物品,即使后续排序模型再高效、再精准,也难以获得满意的推荐结果。因此,召回阶段的局限直接影响排序阶段的效果。
  • 反馈循环:推荐系统主要基于用户的历史交互行为进行预测,容易产生反馈循环,导致更倾向于推荐热门商品、热门产品或频繁交互的物品。这引发了冷启动问题(新商品因交互次数少难以被推荐)和长尾问题(倾向推荐热门产品)。
  • 个性化与多样性不足:推荐结果可能缺乏个性化,即使用户交互历史相似,推荐内容也应体现个性化差异。此外,由于反馈循环,推荐系统易生成单一的、类似性质的推荐内容,缺乏多样性。
  • 过度依赖协同信号:当前推荐系统过度依赖用户和物品的协同信号和特征,导致可解释性和灵活性不足。

因此,需要研究一种新的推荐系统范式。本文提出基于生成式检索的全新推荐框架,并将其应用于序列推荐,旨在创建语义上有意义的token序列作为物品的语义ID,反映物品内容及相似物品间的语义关联。通过深度用户交互序列中的语义ID,训练基于Transformer的序列到序列模型,生成用户下一步可能交互的物品语义ID,采用生成方式而非传统匹配或相似性度量方法,目标是提升性能并解决上述局限。

4. 研究动机

本文的研究动机包括以下几个方面:

  • 冷启动能力:支持推荐此前未出现的新物品,解决冷启动问题。
  • 多样性控制:通过调节生成参数实现推荐内容的多样性,使推荐结果更加灵活。
  • 新范式探索:构建端到端的生成式推荐范式,提升推荐系统的泛化能力、可解释性和灵活性,开辟新的研究方向。
  • 性能提升:提出的TIGER模型在多个数据集上,通过不同性能指标(如召回率和NDCG)显著优于当前最先进的(SOTA)推荐模型。

5. TIGER模型:生成式检索推荐框架

5.1 模型概述

本文提出TIGER(Transformer Indexer for Generative Retrieval)模型,一种端到端的生成式检索模型。与传统基于匹配和排序的推荐方式不同,TIGER直接预测候选物品的ID,将推荐任务(特别是序列推荐)转化为生成式检索任务。

5.2 工作流程

TIGER的工作流程如下:

  • 输入用户交互历史

    :例如,用户交互了两件商品:

    • 商品1:橘色鞋子,品牌X,物品ID 233。
    • 商品2:红色鞋子,品牌Y,物品ID 515。
  • 语义ID生成

    :随机生成的物品ID(如233、515)缺乏内容或语义关联。本文为每个物品生成语义ID,例如:

    • 商品1(ID 233)生成语义ID 52115。
    • 商品2(ID 515)生成语义ID 521578。 每个语义ID中的数字具有层次性,反映物品的语义含义及相似物品间的关联。
  • 生成式检索:将语义ID输入生成式检索模型,预测用户下一个可能感兴趣的物品语义ID(如52555)。通过哈希表查询,映射为具体物品ID(如64,对应橘色鞋子,品牌Y)。

5.3 建模流程

TIGER的建模流程包含两个阶段:

  1. 语义ID生成
    • 输入物品的文本特征,包括物品ID、标题(Title)、描述(Description)、类别(Category)、品牌(Brand)等。
    • 使用预训练文本编码器(如T5或BERT)生成稠密内容嵌入(Embedding)。
    • 通过量化器将连续嵌入向量量化为离散的语义ID(如三元组52155),每个数字对应一个嵌入向量并具有语义含义。
    • 这些语义ID形成一组离散有序的token序列,用于后续序列推荐任务。
  2. 生成式检索模型训练
    • 将语义ID输入基于Transformer的序列到序列(Seq2Seq)生成模型。
    • 使用双向Transformer编码器生成用户下一步可能感兴趣的物品语义ID。
    • 通过映射表将语义ID转换为具体物品ID及其内容。

5.4 语义ID的优势

将物品表示为语义ID序列具有以下优点:

  • 知识共享与泛化:在语义数据上训练Transformer,支持相似物品间的知识共享,促进迁移和泛化。
  • 缓解反馈循环:减少对热门物品的依赖,支持新物品推荐,缓解冷启动问题。
  • 可扩展性:物品规模可能达数十亿,使用有限代码词组合生成的语义ID显著降低存储成本和参数规模,提升系统可扩展性。

6. 贡献总结

TIGER框架的贡献包括:

  • 提出基于生成式检索的推荐框架,为每个物品分配语义ID,训练生成模型预测用户下一步交互的物品语义ID。
  • 通过召回率和NDCG等指标验证,TIGER在多个数据集上显著优于现有SOTA推荐模型。
  • 解决当前推荐系统局限:
    • 支持新物品或冷门物品推荐,改进冷启动问题。
    • 通过可调参数生成多样化推荐结果,实现可控的多样性。
  • 开辟端到端生成式推荐新范式,提升泛化能力、可解释性和灵活性。

7. 相关工作

序列推荐的相关工作包括:

  • SASRec:将Transformer的自注意力机制应用于序列推荐,建模用户历史行为,预测下一个可能物品。包含Embedding层、自注意力层和预测层。
  • BERT4Rec:采用双向自注意力Transformer,克服单向模型局限,捕捉用户行为的双向上下文。相比单向模型(如SASRec),双向模型能更精准地学习用户行为模式,适应兴趣交杂或转变的场景。
  • GRU4Rec:基于循环神经网络(RNN)的序列推荐。
  • CasRec:采用卷积神经网络(CNN)架构,通过横向和纵向卷积捕捉高阶马尔可夫链。
  • HGN:层次门控网络,捕捉用户长期和短期兴趣。
  • FDSA(2019):通过特征级深度自注意力,将物品特征和嵌入融合到同一空间。
  • TrioRec:使用自监督双向Transformer预训练,提升模型性能。
  • P5:基于预训练大语言模型,将多种推荐任务融合到统一框架,依赖随机分配物品ID的tokenization生成token。

与P5通过大语言模型生成token不同,TIGER通过残差量化生成多层次语义ID。实验结果表明,TIGER的语义ID相比P5的token更能体现语义共享和关联。

(下)TIGER模型详解与实验分析

1. TIGER模型概述

本文提出的TIGER(Transformer Indexer for Generative Retrieval)模型是一种端到端的生成式检索推荐框架,包含两个核心部分:

  1. 基于内容特征生成语义ID:将物品的内容特征编码为嵌入向量,并通过量化器将嵌入向量量化为语义ID(Semantic ID)的token序列。
  2. 基于语义ID的生成式推荐系统:使用基于Transformer的模型,以语义ID为基础在序列推荐任务上进行训练,生成用户下一步可能交互的物品语义ID。

TIGER通过生成式检索直接预测目标物品的语义ID,而非传统推荐系统中的匹配或排序方式,解决了物品ID(如233、515)缺乏语义关联的问题。语义ID通过内容特征生成,能够表达物品间的语义相似性和内容关联,为下游预测任务提供支持。

2. 语义ID的设计与生成

2.1 语义ID的定义与特性

语义ID被定义为长度为M的token序列,每个token来自不同的代码簿(codebook)。例如,语义ID 52115由多个token组成,每个token具有不同层次的语义粒度,整体可表示的物品数量为各层codebook大小的乘积。语义ID的关键属性是:具有相似内容特征或嵌入向量的物品,其语义ID应具有较高的重叠性。例如,语义ID 52135与52140相比于12332更相似,因为前者与52135在左侧token有更多重叠,而左侧token通常包含更粗粒度的语义信息。

与大语言模型的tokenization不同,语义ID具有以下特点:

  • 基于内容生成:不依赖随机分配的物品ID,而是基于物品的内容语义生成。
  • 固定大小代码簿:每个token来自固定大小的codebook,可重复利用,支持组合式表达。例如,若每个语义ID由3个token组成,每个token来自1000个候选项的codebook,则可表达10亿个组合,足以覆盖大规模推荐系统中的物品。
  • 规避空间问题:推荐系统中物品ID数量庞大,传统嵌入表随物品数量线性增长,而语义ID通过有限代码词组合显著降低存储成本,提升可扩展性。

2.2 语义ID生成过程

语义ID的生成基于残差量化变分自编码器(RQ-VAE),具体流程如下:

  1. 内容编码:通过预训练的内容编码器(如T5)将物品的文本特征(如物品ID、标题、描述、类别、品牌)编码为连续的嵌入向量(Embedding)。

  2. 残差量化(RQ-VAE):

    • RQ-VAE是一个多层量化器,对连续嵌入向量进行逐层残差量化,生成语义ID。
    • 第一层量化:在第一层codebook中找到与输入嵌入向量(记为R₀)最接近的向量(例如索引为7的向量E₇),计算残差R₁ = R₀ - E₇。
    • 后续层量化:对残差R₁在第二层codebook中找到最接近的向量(例如索引为1的向量E₁),计算新的残差R₂ = R₁ - E₁。重复此过程,直至第M层,生成M个token的语义ID(如[7, 1, 4])。
    • 逐层逼近:通过从粗到细的残差量化,逐步逼近原始嵌入向量,最终生成精确的量化表征向量。
  3. 解码与损失:

    • 量化后的向量通过解码器生成重建嵌入,与原始嵌入计算重构损失(Reconstruction Loss),即输入嵌入X与重建嵌入X̂之间的误差。
    • 量化损失(Quantization Loss):每层残差Rᵢ与对应codebook向量Eᵢ之间的误差。
    • 通过联合优化内容编码器、codebook和解码器,RQ-VAE实现更强的表达力和更大的表示空间,优于传统的一次性量化方法(如VQ-VAE)。

2.3 其他量化方法比较

实验中对比了其他量化方法:

  • LSH(局部敏感哈希):简单粗糙的离散化方法,性能较差。
  • VQ-VAE:生成带层次的编码,但编码间可能失去语义关联。 RQ-VAE因其多层递进量化和层次性语义表达,在性能上显著优于LSH和VQ-VAE,验证了基于内容语义信息的重要性。

2.4 冲突处理

不同物品可能生成相同的语义ID,导致冲突。解决方案包括:

  • 附加标识位:通过添加额外位(如0或1)区分冲突的语义ID,仅需在训练后处理一次,不影响训练效率。
  • 前缀匹配:利用RQ-VAE的层次结构,通过前缀匹配预测物品类别,进一步提高召回率。

3. 生成式检索预测过程

TIGER的预测过程基于生成式检索,具体步骤如下:

  1. 输入用户交互序列:将用户的历史交互物品(按时间序列)转换为语义ID序列。例如,交互物品ID 233和515分别对应语义ID 52115和521578。

  2. 生成模型训练:使用基于Transformer的Seq2Seq生成模型,包含双向编码器和解码器,训练目标是预测用户下一个可能交互的物品语义ID(例如52555)。

  3. 映射到物品ID:通过映射表将生成的语义ID转换为具体物品ID(如64)及其内容。

  4. 无效ID处理:

    • 由于生成式解码的自回归特性,模型可能生成无法映射到物品的无效语义ID。实验表明,无效ID比例较低(0.1%至1%)。
    • 解决方案包括增加束搜索(Beam Search)大小以过滤无效ID,或通过前缀匹配预测物品类别。
    • 尽管存在无效ID,TIGER仍能实现优于传统推荐系统的性能,且通常生成有效ID。

生成式检索使TIGER将推荐任务转化为序列生成任务,规避传统推荐系统中对大规模嵌入表的依赖,支持动态变化的数据环境。

4. 实验设置与结果

4.1 数据集与评估指标

实验使用以下数据集,涵盖1996年5月至2014年7月的Amazon Product Reviews:

  • Beauty:用户数22,363,包含美妆产品。
  • Sports and Outdoors:用户数35,598,包含运动和户外服装。
  • Games:包含游戏相关产品。

每个数据集的文本特征(物品ID、标题、描述、类别、品牌等)通过T5模型编码为内容嵌入。评估指标包括:

  • Recall@K(K=5, 10, 15):衡量推荐结果中正确物品的比例。
  • NDCG@K(K=5, 10, 15):衡量推荐结果的排序质量。

4.2 比较模型

实验对比了以下基线模型:

  • GRU4Rec:基于RNN的序列推荐。
  • CasRec:基于CNN,捕捉高阶马尔可夫链。
  • HGN:层次门控网络,捕捉长短期兴趣。
  • SASRec:基于单向自注意力Transformer。
  • BERT4Rec:基于双向自注意力Transformer。
  • FDSA(2019):特征级深度自注意力。
  • TrioRec:自监督双向Transformer预训练。
  • P5:基于大语言模型的统一推荐框架,依赖随机物品ID的tokenization。

4.3 性能结果

TIGER在所有数据集和指标上均优于基线模型,具体表现包括:

  • Beauty数据集:NDCG@5提升29.04%(0.0321 vs. 次佳0.0249),Recall@5和NDCG@10提升显著。
  • Sports and Outdoors:NDCG@5提升17%以上。
  • Games:NDCG@5提升21.245%,Recall@5提升明显,尤其在K值较小时表现突出。
  • 稳定性:在三轮不同随机种子实验中,TIGER的指标均值稳定,标准差较小。

4.4 冷启动推荐

为验证冷启动性能,实验从Beauty数据集中移除5%的测试物品作为未见过的新物品。结果表明:

  • TIGER vs. KNN:TIGER在所有K值(Recall@K,K从1到50)的冷启动推荐中均优于KNN,特别是在未见过物品的比例(α=0.1)下表现突出。
  • 语义ID优势:TIGER依赖物品内容生成语义ID,而非用户-物品交互历史,显著提升新物品推荐能力。

4.5 推荐多样性

多样性通过Entropy@K指标衡量,基于Top-K推荐物品的类别分布:

  • 使用温度系数(T)采样控制解码器生成的推荐结果类别分布。
  • 实验表明,随着T值增加,Entropy@K值上升,推荐结果的类别多样性增强(见Table 4)。
  • TIGER通过可调参数实现多样性可控,优于传统推荐系统的单一性。

4.6 消融实验

  • 语义ID质量:

    • 第一层token(C₁)提供粗粒度分类,第二层token(C₂)进一步细化,验证了语义ID的层次性。
    • RQ-VAE生成的语义ID优于LSH和随机生成的语义ID,凸显基于内容语义的重要性。
  • 模型层数:增加Transformer层数使模型更复杂,性能略有提升。

  • 用户信息:加入用户ID等信息对性能有轻微提升。

  • 语义ID长度与codebook大小:TIGER对这些参数具有鲁棒性。

  • 数据集组合:组合数据相比单独Beauty数据集性能略降,但仍具竞争力。

4.7 推理与存储成本

  • 推理成本:自回归解码的束搜索增加推理时间,但TIGER强调生成式检索范式的创新。
  • 存储成本:使用两张映射表(物品ID到语义ID,语义ID到物品ID),存储成本为64N,远低于传统嵌入表(随物品数量线性增长)。

5. 不足与未来改进

  • 静态语义ID:当前语义ID仅基于物品内容,未融合用户-物品交互的协同信号,限制了进一步优化空间。
  • 无效ID:自回归解码可能生成无效语义ID,尽管比例低(0.1%至1%)。未来可通过前缀匹配或扩大束搜索范围进一步优化。

6. 相关工作与前沿进展

TIGER开启了生成式推荐新范式,相关前沿工作包括:

  • 2024年ICML:Meta提出的基于HSTU的生成式推荐框架。

  • 2025年CIKM:美团设计的工程级生成框架。

  • 2025年:百度和快手分别提出CARBER框架和端到端生成框架。

  • 其他工作:

    • 双向对齐的物品token推荐。
    • 多任务物品ID推荐。
    • 多模态混合量化方法。

这些工作共同推动了基于语义ID的生成式推荐研究,验证了层次性语义表示在推荐系统中的重要性。

7. 总结

TIGER通过生成式检索和语义ID设计,将推荐任务转化为序列生成任务,核心创新包括:

  • 语义ID生成:使用RQ-VAE进行层次残差量化,生成反映内容语义的token序列。
  • 生成式检索:基于Transformer的Seq2Seq模型预测用户下一步交互的语义ID。
  • 性能优越性:在Beauty、Sports and Outdoors、Games数据集上,TIGER在Recall@K和NDCG@K指标上显著优于SOTA模型。
  • 解决局限:支持冷启动推荐、可控多样性,降低存储成本,提升可扩展性。

TIGER为生成式推荐开辟了新方向,尽管存在静态语义ID等不足,但其层次性语义表示和实验验证展示了其在序列推荐中的引领作用。