找回密码
 立即注册
首页 业界区 业界 语义ID论文精读《Better Generalization with Semantic ...

语义ID论文精读《Better Generalization with Semantic IDs:

豌畔丛 昨天 11:52
语义ID论文精读《Better Generalization with Semantic IDs: A Case Study in Ranking for Recommendations》

大家好,接下来我将为大家系统性地梳理语义ID在推荐领域的两大主流技术路线相关论文,在此之前我先给出我目前关于语义id方面的认识,便于大家理解后续的论文。
路线一:作为辅助特征的语义ID

此路线将语义ID作为一种外部的、基于内容的信息源,增量式地融入到以协同过滤为核心的成熟推荐框架中。

  • 核心动机:
  • 主要动机在于增强现有模型的泛化能力。成熟的协同过滤框架在处理用户行为数据方面非常强大,但本质上依赖于ID的记忆能力,因此在数据稀疏性物品冷启动问题上存在固有缺陷。引入纯粹基于内容的语义ID,可以为模型提供一个不依赖于历史行为的、稳定的物品信息源,从而直接缓解这些问题。
  • 核心挑战:异构空间的对齐
  • 该路线的根本挑战源于需要处理两种不同性质的表征空间:

    • **行为驱动的协同过滤空间 **

      • 构建方式: 此空间基于用户-物品交互矩阵构建。物品的向量表示(Embedding)是通过优化协同过滤目标学习而来的。
      • 空间特性: 物品在此空间中的相对位置,完全由用户群体的行为模式决定。两个物品如果经常被同一批用户消费,即使内容毫无关系,它们的向量也会非常接近。其本质是行为共现性的数学表达。

    • 内容驱动的语义表征空间

      • 构建方式: 此空间基于物品自身的内容属性(如文本、图像)构建。物品的表示(即语义ID或其对应的向量)通过自监督学习(如语言模型、对比学习)或向量量化模型(如RQ-VAE)得到。
      • 空间特性: 物品在此空间中的相对位置,由其内在的语义相似性决定。所有关于“科幻小说”的物品,无论其流行度如何,它们的表示都会聚集在一起。其本质是内容相似性的数学表达。


  • 对齐的必要性: 这两个空间是异构的,它们遵循完全不同的组织逻辑。一个物品在协同空间中的近邻,与其在语义空间中的近邻可能毫无重叠。因此,若想让模型同时从这两种信息中获益,就必须解决二者的对齐问题。Alignment即指通过设计特定的模型结构(如共享参数、门控网络)或损失函数(如对比学习、对抗训练),在这两个异构空间之间建立起一座桥梁,学习一种映射关系或施加约束,促使一个统一的物品表示能够同时蕴含行为和内容两种信息。
路线二:作为核心表征的纯生成式范式

此路线是一次范式迁移,它不再将语义ID视为辅助,而是将其作为系统的核心基石,将推荐问题完全形式化为一个序列到序列的生成任务。

  • 核心动机:
  • 旨在构建一个端到端的、统一的推荐框架。通过将所有物品都表示为一系列离散的语义Token,可以借鉴自然语言处理领域中极其成熟的生成模型(尤其是Transformer),从而绕开路线一中复杂的异构空间对齐问题,追求一个理论上更简洁、统一的解决方案。
  • 核心挑战:表征的离散化与信息保真度
  • 此路线将核心挑战从空间对齐前移到了空间构建本身,即Tokenization过程:

    • Tokenizer的职责: Tokenizer(即生成语义ID的量化模型)的核心职责是将连续、高维的原始物品特征空间,离散化为一个有限的、结构化的语义Token集合。
    • 问题的根源: 这个离散化过程是有损压缩,必然面临信息保真度的挑战。一个设计不佳的Tokenizer可能会导致两种关键问题:

      • 语义模糊:将多个内容上有显著差异的独立物品,错误地映射到了同一个或过于接近的语义ID上,导致下游模型无法区分。
      • 信息丢失:无法在离散的ID中保留某些对推荐至关重要的细粒度特征,导致模型表达能力受限。

    • 挑战的本质:整个系统的性能上限,被Tokenizer所能实现的表征保真度牢牢限制。因此,如何设计出能够最大限度保留关键信息、同时形成良好结构以供下游模型学习的Tokenizer,是该路线成功的关键。

转向生成式范式的核心驱动因素

尽管纯生成式路线面临显著的技术挑战,但其之所以成为前沿研究方向,源于两个结构性优势:

  • 架构优势:对复杂序列依赖的深度建模

    • 原因: Transformer架构能够极其有效地捕捉用户行为序列中的长距离依赖高阶项目关系。它不仅能看到“A->B”,更能理解“在A和D的上下文中,B->C”的复杂模式。
    • 影响: 这种强大的序列建模能力与生成式范式完美契合,可以直接转化为推荐性能的提升,尤其是在理解用户动态、多变的会话意图方面。

  • 数据利用效率:高信息密度的训练范式

    • 原因: 传统推荐模型多采用PointwisePairwise的训练目标,每个训练样本仅包含有限的监督信号。
    • 影响: 生成式模型天然采用自回归的序列级训练目标,每个训练样本(一个用户行为序列)都包含了丰富的物品上下文和多组共现关系。这种信息密度更高的训练方式,使得模型能够更高效地从数据中学习,提升了样本利用率。

以上是我对目前语义id的认识和梳理,下面我们归回到本次要分享的论文,它属于是将语义id作为增强特征来处理

在推荐系统的广袤世界里,物品ID(Item ID)如同每个物品的“身份证”,是模型识别与记忆它们的基础。长期以来,我们习惯于使用随机哈希ID (Randomly-hashed IDs),这种方法凭借其高效的记忆能力,在工业界大规模排序系统中占据着主导地位。然而,这种“死记硬背”的方式也带来了明显的弊端:模型对新出现的、缺乏交互的长尾物品束手无策,因为这些随机ID本身不携带任何语义信息,无法帮助模型进行泛化推理。
如何在不牺牲现有模型强大记忆能力的前提下,赋予其理解内容、泛化未来的能力?Google 在论文《Better Generalization with Semantic IDs: A Case Study in Ranking for Recommendations》中,给出了一条极具工程价值的路径。本文将深入解析这一方法,探讨其如何在YouTube的生产环境中,为推荐排序模型构建一座连接记忆泛化的桥梁。
一、 背景:推荐系统中ID表示的困境

在深入语义ID之前,我们必须清晰地认识到传统ID表示法面临的根本矛盾。

  • 随机哈希ID的记忆优势: 工业级推荐系统通常拥有一个庞大的嵌入表(Embedding Table),通过随机哈希将海量的物品ID映射到表中的某一行。模型在训练中不断优化这些嵌入向量,从而能精准地“记住”每个热门物品的特性,例如点击率、用户偏好等。这是其强大性能的基础。
  • 随机哈希ID的泛化劣势: 这种优势的代价是牺牲了泛化能力。

    • 语义鸿沟: 两个内容上高度相似的视频(例如,都关于“深度学习入门”),它们的随机ID毫无关联,模型无法将从一个视频上学到的知识迁移到另一个,造成了巨大的信息浪费。
    • 冷启动困境: 对于一个新发布的视频,由于缺乏用户交互数据,其ID嵌入无法得到有效训练,导致模型无法准确预估其表现,难以将其推荐给合适的用户。

  • 现有方案的不足: 为了解决泛化问题,研究者们尝试了多种方案。

    • 纯内容嵌入 (Dense Content Embedding): 直接使用从视频内容(画面、音频、文本)中提取的稠密向量作为特征。这种方法泛化能力很强,但论文实验发现,它完全替代ID后会导致模型整体性能下降,因为它损失了ID所提供的强大记忆能力。
    • 端到端内容模型: 将内容编码器与推荐模型一起进行端到端训练。虽然效果显著,但其巨大的计算成本(通常是ID基线的10-50倍)使其难以在对延迟和成本极其敏感的大规模生产排序系统中部署。

面对这一困境,我们需要一种既能保留ID式记忆能力,又能融入内容语义进行泛化的新范式。
二、 核心方法:语义ID的生成与应用

语义ID的核心思想是通过一个两阶段流程,将物品的内容信息提炼并固化成一种新型的、离散化的ID。这篇论文语义Id的生成也是用的tiger论文提出的RQVAE方法,只不过这里是将语义Id用于排序阶段,将语义Id作为增强特征与其他特征进行拼接后,送入传统的排序模型。而tiger则是针对召回阶段,系统训练一个 Transformer Seq2Seq 模型,编码器输入用户历史交互物品的语义 ID 序列,解码器自回归地预测目标物品的语义 ID 序列。
第一阶段:语义ID的生成


此阶段的目标是将高维、连续的内容嵌入,高效地压缩为低维、离散的ID序列,同时保留其核心语义。

  • 内容嵌入的获取:内容嵌入的获取依赖预训练多模态编码器对原始特征的编码。以 YouTube 视频为例,系统首先收集标题、描述、标签、字幕等文本信息,以及视频帧和音频等多模态数据。这些原始内容通过预训练模型(如 SentenceT5 或 CLIP 类模型)编码为高维稠密向量 x∈R^D,该向量捕获了视频的核心语义信息。
  • 核心组件 (RQ-VAE): 论文采用残差量化变分自编码器 (RQ-VAE) 来完成此任务。其工作流程可以通俗地理解为一种“逐层精炼”的量化过程:

    • 编码: 首先,一个编码器将原始的内容嵌入向量 x 映射到一个潜在向量 z
    • 多层残差量化: 这是RQ-VAE的关键。在第一层,模型在码本(Codebook)中寻找与 z 最相似的编码向量,记录下其ID,并计算出两者之差,即残差 (Residual)。在第二层,模型不再对原始向量进行量化,而是对第一层的残差进行量化,再次记录ID并计算新残差。
    • 循环往复: 这个过程会持续L层,每一层都是对上一层留下的“剩余信息”(即残差)进行精细化捕捉。

  • 输出: 最终,一个物品得到了一个由L个整数组成的ID序列,如 (1723, 541, 1129, ...)。这个序列具有分层语义:ID的前缀部分代表了物品最广泛、最粗略的概念(如“体育”),而后续的ID则不断在细节上进行补充和限定(如“户外运动”->“沙滩排球”)。
第二阶段:在排序模型中适配语义ID

生成了语义ID后,如何让排序模型理解并使用它?论文提出,可以将这个定长的ID序列视为一个“句子”,通过类似自然语言处理中的“分词”思想来处理。

  • 核心思想: 将SID序列分解为“子词(subwords)”,为每个子词学习一个嵌入向量,最后将这些子词的嵌入组合起来,形成最终的物品表示。
  • 方法1:基于N-gram的表示法

    • 原理: 采用固定长度的滑窗来切分SID序列。例如,Unigram (N=1) 将每个ID都视为一个独立的子词;Bigram (N=2) 则将每两个相邻的ID组合成一个子词。
    • 优劣分析: 这种方法简单直观,但其主要缺陷在于灵活性差。更重要的是,嵌入表的规模会随着N的增大呈指数级增长(\(K^N\)),这极大地限制了其捕捉更长、更复杂语义组合的能力。

  • 方法2:基于SPM的表示法 (SentencePiece Model)

    • 原理: 借鉴NLP中广泛应用的SentencePiece模型,该方法不再使用固定的N,而是根据ID组合在训练数据中出现的频率,动态地、自适应地学习最优的子词切分方案。那些频繁共现的ID组合(如代表某个热门主题的ID序列)会被自动合并成一个更长的子词,而稀有的ID则可能保持为单个的子词。
    • 优势: SPM能够在给定的嵌入表预算内,智能地分配其“记忆容量”。它用更长的子词去“记忆”重要且常见的语义模式,用更短的子词去“泛化”不常见的组合,从而在记忆和泛化之间取得了更优的平衡。

  • N 大和 N 小的好处与核心思想
N-gram 长度 \(N\) 的选择,体现了泛化能力记忆能力之间的权衡。
特性 \(N\) 较小(如 \(N=1\) Unigram) \(N\) 较大(如 \(N=4\))
组合长度短(1 个编码)长(多个编码)
嵌入表开销(\(K\) 的倍数),内存高效。(\(K^N\) 爆炸式增长),资源消耗高。
语义粒度粗糙。只捕获单个层级的语义。精细。捕获多个层级编码的联合语义
泛化能力。项目更容易共享短片段的嵌入(例如 \(\mathbf{emb}(c_v^1)\)),知识共享多。。只有极其相似相同的项目才会共享长片段的嵌入,泛化能力差。
记忆能力。无法为热门项目的特定组合学习独特的嵌入,记忆细粒度偏差的能力不足。。为热门 SID 的长片段组合学习了独特的嵌入,能够精确记忆该项目的独有特征。
核心思想提升泛化能力。 牺牲对单个项目的精确记忆,换取对新/长尾项目的语义迁移提升记忆能力。 牺牲泛化能力,换取对热门/核心项目的精确拟合
三、 实验分析:语义ID的性能表现

论文在YouTube的生产级多任务排序模型上进行了详尽的实验,结果有力地证明了语义ID的有效性。



  • 实验设置:

    • 模型: 真实的YouTube视频推荐排序模型。
    • 基线: 传统的随机哈希 (Random Hashing) 和直接使用纯内容嵌入 (Dense Input)
    • 评估指标: 整体CTR AUC(衡量模型在所有视频上的总体排序能力)和CTR/1D AUC(仅衡量模型对24小时内新发布视频的排序能力,即冷启动性能)。

  • 核心结论:

    • 语义ID vs. 纯内容嵌入: 实验验证了前文的观点,直接使用Dense Input替代ID会导致整体性能(CTR AUC)的显著下降,因为它破坏了模型长期依赖的记忆能力。
    • 语义ID vs. 随机哈希: 这是最关键的对比。

      • 冷启动场景 (CTR/1D AUC)下,无论是N-gram还是SPM-SID,其表现都远超随机哈希基线。这表明语义ID凭借其内容理解能力,极大地提升了模型对新视频的泛化预测能力。
      • 整体性能 (CTR AUC)上,当使用足够大的嵌入表时,SPM-SID的表现能够持平甚至超越随机哈希基线。这证明了语义ID可以在不牺牲(甚至提升)模型整体记忆和排序能力的前提下,带来额外的泛化增益。

    • SPM-SID vs. N-gram-SID: 在嵌入表规模较大时,SPM凭借其自适应的“分词”能力,在整体性能和冷启动性能上均优于固定的N-gram方法,展现了更强的效率和扩展性。

四、 总结与思考

《Better Generalization with Semantic IDs》这篇论文为推荐系统领域贡献了一个极具价值的范式。

  • 总结: 利用 RQ-VAE,从固定的内容嵌入中为数十亿YouTube视频开发了 语义ID(Semantic IDs),以捕获整个语料库中具有语义意义的分层结构。我们提出并证明,语义ID是一种有效的方法,能够通过引入有意义的碰撞来取代视频ID,从而提高泛化能力。
  • 优缺点分析:



      • 优点:有效解决冷启动: 显著提升对新物品和长尾物品的推荐效果。
      • 资源高效: 相比直接使用高维内容嵌入,语义ID(几个整数)的存储和查询成本极低。
      • 可解释性更强: 分层的ID结构使得分析和理解物品间的语义层级关系成为可能。
      • 缺点:实现复杂度更高: 相比即插即用的随机哈希,引入语义ID需要额外的RQ-VAE模型训练、ID生成和特征适配流程。


  • 工业启示: 对于希望提升模型内容理解和泛化能力的大规模推荐系统而言,语义ID提供了一条工程上可行效果显著的演进路径。它并非要求推倒重来,而是可以在现有成熟的排序模型架构上,通过“特征升级”的方式平滑地引入,这对于追求稳定迭代的工业界系统具有极大的吸引力。
附录

A.1 RQ-VAE 训练与服务设置

模型超参数:对于 RQ-VAE 模型,我们使用一个维度为 256 的单层编码器-解码器模型。我们应用 L = 8 层量化,每层使用码本大小 K = 2048。
RQ-VAE 训练:我们在一个随机抽样的曝光视频数据集上训练 RQ-VAE 模型,直至重建损失趋于稳定(对于我们语料库,约需数千万训练步数)。向量量化技术在训练过程中已知会遭遇码本坍塌问题,即模型仅使用一小部分码本向量。为应对这一挑战,我们在每个训练步骤中,将未使用的码本向量重置为从当前批次内随机采样视频的内容嵌入,这显著提高了码本利用率。我们使用 β = 0.25 来计算训练损失。模型训练完成后,我们冻结 RQ-VAE 模型,并使用其编码器为视频生成语义 ID。
RQ-VAE 服务/推理:当有新视频加入语料库时,我们使用冻结的 RQ-VAE 模型生成其语义 ID。随后,这些语义 ID 会与其他用于排序的特征一样,被存储并提供服务。
A.2 语义ID随时间推移的稳定性



  • 研究目的:验证语义ID是否稳定,即当底层生成模型(RQ-VAE)随着新数据更新后,先前生成的语义ID是否仍然有效。
  • 实验方法:使用相隔6个月的数据训练了两个RQ-VAE模型(v0和v1),并用它们分别为视频生成语义ID。然后,在同一个最新的生产排名模型上比较这两组ID的性能。
  • 核心发现:如图5所示,使用旧模型(RQ-VAEv0)和新模型(RQ-VAEv1)生成的语义ID,其下游排名模型性能相当
  • 结论:这表明通过RQ-VAE学习到的视频语义标识空间是稳定的,不会随时间推移而迅速过时,满足生产系统对特征一致性的要求。
A.3 作为概念层次结构的语义ID


  • 核心观点:语义ID天然地捕获了视频内容的层次化概念结构
  • 形象比喻:可以将语义ID视为一棵前缀树(Trie),其中:

    • 高层级(ID序列的前几位):代表粗粒度的概念(如“体育”)。
    • 低层级(ID序列的后几位):代表细粒度的概念(如“沙滩排球教学”)。

  • 实例证明:论文中的图6和图7展示了从训练好的模型中提取的两个示例子树,分别对应于“体育”和“美食视频”领域,直观地显示了这种从一般到具体的概念层级关系。
A.4 基于语义ID的相似性分析



  • 研究目的:定量分析语义ID的层级结构是否与内容本身的语义相似度相符。
  • 实验方法:计算所有共享前n位语义ID前缀的视频,在原始内容嵌入空间中的平均余弦相似度,并统计对应的子树大小。
  • 关键发现:如表1所示:

    • 随着共享前缀长度n的增加,视频间的平均内容相似度显著提高
    • 同时,对应的子树大小(即共享该前缀的视频数量)急剧减少

  • 结论:这定量地证明了语义ID的前缀确实代表了越来越精细和具体的语义概念。前缀越长,所标识的视频集合在内容上越相似、越具体。

来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册