一、 SemanticIDInYouTube [2024]

《Better generalization with semantic ids : A case study in ranking for recommendations》

  1. 随机哈希的 item ids 在推荐模型中被广泛使用。然而,随机哈希(random hashing)所学到的 representations 会阻碍 similar items 之间的泛化,导致难以对 unseen items 和 long-tail items 进行有效学习,尤其是在 item corpus 规模庞大、呈幂律分布、以及动态演变的场景下。

    本文提出使用 content-derived features 来替代 random ids。研究发现,简单地将ID features 替换为 content-based embeddings 会因记忆能力(memorization capability)下降而导致模型性能变差。为了在记忆能力(memorization)和泛化能力(generalization)之间取得良好平衡,我们提出采用 Semantic IDs (《Recommender systems with generative retrieval》)来替代 random item ids。 Semantic IDs 是一种通过 RQ-VAE 从 frozen content embeddings 中学得到的紧凑的 discrete item representation,能够捕获 items 中概念的层次结构(hierarchy of concepts)。

    与 content embeddings 类似,Semantic IDs 的紧凑性(compactness)给推荐模型的适配(adaption)带来了挑战。为此,我们提出了新颖的方法,通过对 Semantic-ID sequences 的子片段(sub-pieces)进行哈希处理,从而将 Semantic IDs 适配到工业级规模的 ranking models中。特别地,我们发现常用于大语言模型(LLM)分词的 SentencePiece model(《Subword regularization: Improving neural network translation models with multiple subword candidates》),其性能优于 N-grams 等人工设计的 pieces。最后,我们在 YouTube 推荐系统的真实 ranking model 中对所提方法进行了评估。实验结果表明,Semantic IDs 能够替代 video IDs 的直接使用(direct use),在不牺牲模型整体性能的前提下,提升了对 new items 和 long-tail items 的泛化能力。

  2. 带有 large embedding tables 的神经模型(neural models)在工业级推荐系统中被广泛应用,用于海量的 items 进行评分和排序。这些 embedding tables 通常包含数百万甚至数十亿行数据,通过对 randomly-hashed item ids 进行建模,能够快速记忆 item quality 。值得注意的是,学习良好的 item representations 对于个性化推荐至关重要,因为用户通常被建模为 a sequence of items 。具体而言,本文研究的是 YouTube 视频推荐系统中的 neural ranking model。在该模型中,每个视频都有一个唯一的标识符,即 video ID,它是一个无意义的随机字符串。这种方法在众多工业级推荐系统中被广泛采用。

    本文旨在研究 content-based item representations,该 representations 能够在保持模型记忆能力且不牺牲整体性能的前提下,提升对 new items 和 long-tail items 的泛化能力,重点关注 recommendation ranking models。encoding item id 的常用技术是学习 one-hot embeddings。然而,对于包含数十亿视频的超大规模 item corpus 而言,为每个视频学习一个 embedding vector 不仅耗费资源;更重要的是,这种方法容易受到 torso and tail items 的数据稀疏性(data sparsity)的影响。为了使用有限数量的 embeddings,一种替代方法是采用哈希技巧(hashing trick)(《Feature hashing for large scale multitask learning》),将多个 items 映射到同一行。但当原始 item IDs 不具有语义意义时,这种方法会产生随机冲突(random collisions)。

    对于使用来自 pre-trained multimodal item encoders的 content embeddings,由于会损失 item-level memorization,目前尚不清楚是否能够完全替代 large item ID table 。在 《Where to go next for recommender systems? id- vs. modality-based recommender models revisited》 的研究中,作者发现对于规模达 150k-size 的 item corpus,在 SASRec (《Self-attentive sequential recommendation》)上,frozen item embeddings 的性能优于 item ID baselines;但是,在双塔模型(《Neural collaborative filtering vs. matrix factorization revisited》)上并非如此。在我们针对YouTube 更大 corpus 的实验中,当用 content embeddings 替代 video IDs 时,观察到模型性能显著下降。最近的一项研究(《A content-driven micro-video recommendation dataset at scale》)表明,通过端到端训练的 video encoders(VideoRec)替代短视频推荐模型中的 video ID 是有效的,但该方法的计算成本是 ID baseline 的 10-50 倍。

    我们提出了一种新的框架,用于在 ranking models 中适配 content embeddings,该框架能够灵活控制 generalization 和 memorization。我们的方法基于 item Semantic IDs(Semantic IDs: SIDs)。SIDs 概念最初在 TIGER 模型(《Recommender systems with generative retrieval》)中提出,是一种用于生成式检索(generative retrieval)的 hierarchical, sequential and compact representation。SID 的 hierarchical nature 允许通过使用不同 levels 的前缀来灵活控制粒度(granuality);其序列特性(sequential property)则与 subword tokenization 相关联,例如大语言模型中的 SentencePiece model: SPM(《Improving neural network translation models with multiple subword candidates》)。值得注意的是,TIGER 模型将 SIDs 用于生成式检索,而效率并非其首要考虑因素;而我们的研究重点是在资源受限且对延迟敏感的生产级 ranking models 中使用 Semantic IDs,其中 hashing 和 adaptation through embeddings 是关键。

    本文的具体贡献如下:

    • (1):提出了两种将 SIDs 适配到推荐模型中以替代 item IDs 的方法:N-gram 方法和 SentencePiece Model: SPM 方法。两种方法的核心思想都是通过 item SIDs 的 sub-pieces 创建 content-based hashing;其中 SPM 方法通过将长度不一的sub-pieces 分组,提供了一种从 item distribution 中学习的方法。

      即,当已经从 content embedding 中获得了 item code 之后,如何根据 item code 来生成 item representation?作者提出了 N-gram 方法和 SPM 方法。

    • (2):在 YouTube 数据集上进行了大量实验,以验证所提方法的有效性。结果表明,SID-based adaption 方法优于直接使用content embeddings 的方法;并且在每个 item 的 embedding lookups 相同的情况下,使用 large embedding tables 时,SPM 方法的性能优于 N-gram 方法。

    • (3):展示了 SIDs 在 YouTube 数十亿个视频的 corpus 中的生产化(productionization),并举例说明了有意义且细粒度的 hierarchical relationships,以及在生产场景中成功替换 video IDs 的情况。

1.1 相关工作

  1. Embedding learning:Recommender models 依赖于学习 categorical features 的 good representation。编码 categorical features 的常用技术是通过 one-hot embeddings 来训练 embeddings 。

    • Word2vec(《Distributed representations of words and phrases and their compositionality》)在 language models 领域普及了这种方法。

    • 当类别基数(category cardinality)较大时,通常会采用哈希技巧(hashing trick)(《Feature hashing for large scale multitask learning》),但这种方法会产生随机冲突(random collisions)。

    • 多重哈希(multiple hashing)(《Model size reduction using frequency based double hashing for recommender systems》)在一定程度上缓解了这一问题,但仍然会导致随机冲突。

    • Deep Hash Embedding (《Learning to embed categorical features without embedding tables for recommendation》)通过不维护 embedding tables 来规避这一问题,但代价是增加了 hidden layers 的计算量。

    相比之下,我们使用 Semantic IDs ——一种在 item IDs 的 embedding learning 过程中避免随机冲突的高效计算方法。 Semantic IDs 通过使语义相关的 items 产生冲突,提升了 recommender models 的 generalization 。

    即,在 Semantic IDs 中,只有语义相关的 items 才产生冲突。

  2. Cold-start and content information:content-based recommender models 已被提出用于解决冷启动问题(例如 《Methods and metrics for cold-start recommendations》、《Content-based neighbor models for cold start in recommender systems》)并实现可迁移推荐(《Transrec: Learning transferable recommendation from mixture-of-modality feedback》、《Learning vector-quantized item representation for transferable sequential recommenders》、《A content-driven micro-video recommendation dataset at scale》)。近年来,基于内容信息的 embeddings 也受到了广泛关注(例如,DropoutNet 《Dropoutnet: Addressing cold start in recommender systems》、CCCC 《Adaptive feature sampling for recommendation with missing content feature values》、《How to learn item representation for cold-start multimedia recommendation?》)。

    • PinSage (《Graph convolutional neural networks for web-scale recommender systems》)聚合了视觉信息、文本信息和 engagement 信息来表示 items。

    • 此外,PinnerFormer (《Pinnerformer: Sequence modeling for user representation at pinterest》)使用与 item history 对应的 sequences of PinSage embeddings 构建一个 sequential recommendation model。

    与这些研究不同,我们的目标是开发一种基于内容的 representations,不仅具有良好的泛化能力,还能相对于使用 item ID features 提升性能。这是一项极具挑战性的任务。

    • 《A content-driven micro-video recommendation dataset at scale》 成功解决了将 video encoders 生成的 content embedding 替代 video ID 的问题,该 video encoders 与短视频 recommendation model 进行端到端的训练。

    • 类似地,TransRec (《Transrec: Learning transferable recommendation from mixture-of-modality feedback》)也采用端到端的训练,并利用多模态信息来表示 items,以实现可迁移推荐(transferable recommendations)。

    然而,这两种方法都显著增加了训练成本,使其难以在实际生产中部署。Semantic IDs 能够将 content embeddings 高效压缩为discrete tokens,使得在生产级推荐系统中使用 content signals 成为可能。此外,与用于 offline inference 的PinnerFormer 不同,我们的重点是提升用于 real-time inference 的 ranking model 的泛化能力。因此,显著增加资源成本(包括存储、训练和服务成本)的方法在生产环境中是不可行的。《A content-driven micro-video recommendation dataset at scale》 引入了一个大规模短视频数据集,并表明现有的 video encoders 生成的 embeddings 对于推荐任务并非有效。

  3. Discrete representations:目前存在多种将 embeddings 离散化的技术,包括 VQ-VAE(《Neural discrete representation learning》)、 VQ-GAN (《Taming transformers for high-resolution image synthesis》)、以及它们在生成式建模中的变体(例如,《Scaling autoregressive models for content-rich text-to-image generation》、《Soundstream: An end-to-end neural audio codec》)。

    • TIGER 模型(《Recommender systems with generative retrieval》)在 recommender applications 场景中使用了 RQ-VAE 。

    • 许多推荐模型采用了传统的量化技术,如 Product Quantization (《Product quantization for nearest neighbor search》)及其变体(例如,MGQE 《Learning multi-granular quantized embeddings for large-vocab categorical features in recommender systems》和 《Learning vector-quantized item representation for transferable sequential recommenders》)。

    然而,这些技术不具备层次语义(hierarchical semantics),而我们的研究正是利用了这一特性。

1.2 提出的方法

1.2.1 概述

  1. 给定 a corpus of items 的 content embeddings,与直接将 embeddings 用作 input feature 的方法不同,我们提出了一种高效的两阶段方法,以在下游推荐模型中利用 content signal:

    • Stage 1:将 content embeddings 高效压缩为 discrete Semantic IDs 。我们提出使用残差量化(Residual Quantization)技术(称为 RQ-VAE )(《Recommender systems with generative retrieval》、《Autoregressive image generation using residual quantization》、《Soundstream: An end-to-end neural audio codec》),将 dense content embeddings 量化为 discrete tokens ,以捕获视频的语义信息(semantic information)。这种压缩至关重要,因为每个 item 可以被高效地表示为几个整数,而不是高维 embeddings,从而能够高效地表示用户的历史行为。训练完成后,我们冻结 trained RQ-VAE model,并在 Stage 2 中用于训练下游 ranking model。

    • Stage 2:使用 Semantic IDs 来训练 ranking model。我们使用 Stage 1 训练好的模型将每个 item 映射到其对应的 Semantic ID,然后训练 Semantic ID 的 embeddings 以及 ranking model 的其他部分。在实际场景中,ranking model 通常使用最近 logged data 进行训练。

  2. 我们方案中的一个关键设计选择是训练 Stage 1 的 RQ-VAE model,然后将其冻结。frozen RQ-VAE model 用于生成 Semantic IDs ,这些 Semantic IDs 被用于 ranking model 的 training 和 serving 。Recent data 可能包含不在 RQ-VAE model 的 training distribution 中的 items,这就引发了一个潜在问题:freezing the model 可能会随着时间的推移影响 ranking model 的性能。

    如附录 A.2 所述,我们分别对两种 Semantic IDs 对应的 YouTube ranking models 进行了分析:

    • 基于 older data 来训练的 RQ-VAE models 所生成的 Semantic IDs 。

    • 基于 recent data 来训练的 RQ-VAE models 所生成的 Semantic IDs 。

    结果表明两者性能相当。这说明 learned semantic representations 具有时间稳定性。

1.2.2 用于 Semantic ID 的 RQ-VAE

  1. SIDs 是通过残差量化变分自编码器(Residual-Quantized Variational AutoEncoder: RQ-VAE )(《Autoregressive image generation using residual quantization》、《Soundstream: An end-to-end neural audio codec》、《Recommender systems with generative retrieval》)从 item content embeddings 生成的。RQ-VAE 在 multiple levels 上对残差(residuals)进行量化,如 Figure 1 所示。RQ-VAE 包含三个联合训练的组件:

    • (1):一个 encoder E,将 content embedding x→∈RD 映射到 a latent vector z→∈RD′ 。

    • (2):一个具有 L 个 levels 的残差量化器(residual quantizer),每个 level 都有一个码本(codebook) Cl:={e→kl}k=1K ,其中 e→kl∈RD′ ,K 是 codebook 大小。quantizer 在每个 level l 递归地将残差 r→l 量化为 nearest codebook vector e→cl ,1≤cl≤K 。

    • (3):一个解码器(decoder) D ,它将 quantized latent z→^ 映射回原始 embedding space x→^ 。

  2. 我们使用以下损失函数训练 RQ-VAE 模型:

    L=Lrecon+LrqvaeLrecon=‖x→−x→^‖2Lrqvae=∑l=1Lβ‖r→l−sg[e→cl]‖2+‖sg[r→l]−e→cl‖2

    其中:

    • sg[⋅] 表示 stop-gradient 算子。

    • Lrecon  用于重建 content embedding x→。

    • Lrqvae  中的第一项和第二项旨在鼓励 encoder 和 codebook vectors 进行训练,使得 r→l 和 e→cl 相互逼近。

1.2.3 Ranking Model 中的 Semantic ID Representation

  1. 本节将讨论如何对基于 SIDs 的 item representations 进行建模,以用于 ranking models。对于给定的 item v, an RQ-VAE model with L levels 生成了一个 SID ,该 SID 是一个序列 (c1v,⋯,cLv) 。适配(adaptation)的核心思想是:创建子词(subwords),从而将 SID sequence 哈希为多个 learnable embeddings 。我们提出了两种适配技术:

    • N-gram-based:N-gram item representations 利用 SID codes ,通过将其分组为长度为 N 的 subwords。每个 subword 都与一个 learnable embedding 相关联,从而有效捕获 N-gram 内的语义关系(semantic relationships)。 item representation 通过对该 item 内所有 N-gram subwords 的 embeddings 求和来构建。例如:

      • 一个 unigram representation 包含 L 个 subwords ,每个 subword 包含一个单独的 code : (c1v),⋯,(cLv) 。

      • 具有 non-overlapping codes 的一个 bigram representation 包含 L/2 个 subwords ,每个 subword 包含两个连续的 codes: (c1v,c2v),⋯,(cL−1v,cLv) 。

      为了将 learnable embeddings 与这些 N-gram-based subwords 相关联,我们为每个 subgroup 学习一个独立的 embedding table 。由于每个 code 的基数为 K,因此 an N-gram group 的 embedding table 包含 KN 行。这些 embedding tables 与 ranking model 的其他参数一起进行联合训练,使网络能够学习在 ranking task 背景下有效捕获 semantic codes 之间关系的 representations 。

      以 unigram representation 为例,一共 L 个 subwords,因此需要学习 L 个独立的 embedding tables。总的 emebdding 参数规模为 L×KN 。

      VQ-Rec 模型就是采用的 N-gram-based 方法,且 N=1 。

    • SPM-based:虽然 N-gram-based video representations 提供了一种直接捕获 Semantic ID 中 sequential codes 之间关系的方法,但它们存在一些限制,影响了其有效性。

      • 首先,它们依赖于 predefined N-gram sizes 的 fixed grouping ,这限制了其适应 Semantic ID corpus 的 specific characteristics 的能力,导致 embedding table lookups 的效果不佳。

      • 其次,N-gram 的 embedding tables 的行数随 N 呈指数增长,带来了巨大的内存负担。

      这些挑战促使我们采用 SentencePiece Models: SPM (《Improving neural network translation models with multiple subword candidates》)对 Semantic IDs 进行适配。SPM 为 representing item content 提供了一种更具适应性和高效性的解决方案。

      我们提出使用 SPM 基于 distribution of impressed items 来动态学习 Semantic ID subwords 。这允许生成变长子词(dynamic length subwords),使得 popular co-occuring codes 被自动合并为一个 subgroup,而很少共现的 codes 则可能退化为 unigram。对于 SPM-based representation,我们学习一个 embedding table,其中每行对应一个特定的 variable-length subpieces。通过在固定的 embedding table size 的情况下自适应地构建 subword vocabularies,SPM vocabulary 能够在 generalization 和 memorization 之间取得平衡。

      N-gram方法通过为每个 subgroup 使用独立的 embedding table,能够捕获位置特定的语义;而 SPM 方法使用单一的embedding table,因此无法区分相同子词在不同位置的情况。但这并不一定是缺点,因为 SPM 方法在其他方面更有优势(如自适应长度、更好的泛化等)。

1.3 实验

  1. Ranking Model:我们在一个 multitask production ranking model(《Improving training stability for multitask ranking models in recommender systems》 、《Recommending what video to watch next: A multitask ranking system》)上进行实验,该模型用于:给定用户当前观看的视频以及用户历史行为的基础上,推荐用户接下来要观看的视频。该模型使用 O(10) million buckets 进行随机哈希,以容纳 corpus 中的 O(100) millions 个视频,并使用 logged data 进行训练。在 baseline 中,random hashing of video IDs 用于三个关键特征:用户的观看历史、当前观看的视频、以及待排序的候选视频。我们在 trained model 未见过的数据上评估所提出的方法,以了解 video corpus 的 data-distribution shift 情况下的性能。

    ranking models 固有的 scale 和实时性要求使得 embedding tables 必须具备特定的特性,以确保高效且有效的性能。

    • 首先,embedding table size 需要能够轻松放入内存,这是我们在确定 N-gram-based Semantic ID representations 中N 值时的关键考虑因素之一。由于 embedding tables 的行数随 N 呈指数增长,因此我们将基于 N-gram-based representations 的分析限制在 N≤2 。

    • 其次,embedding lookups 需要快速执行,从而对 user requests 提供近乎即时的 responses。

    我们的分析基于上述两个特性展开。

  2. Content Embeddings:Semantic IDs 是使用 dense content embeddings 来生成的。我们使用一个 video encoder 为每个YouTube 视频生成 dense content embeddings。该 video encoder 是一个基于 Video-BERT (《Videobert: A joint model for video and language representation learning》)的 Transformer 模型,以音频特征和视觉特征作为输入,输出 2048 维的 embeddings ,该 embeddings 能够捕获视频的主题信息(topicality)。该模型采用 《Large scale video representation learning via relational graph clustering》 中描述的技术进行训练。

  3. Experimental Settings:我们将所提出的两种 Semantic ID-based representations 与两种 baseline representation 技术进行比较:

    • 直接使用原始 content embeddings ,称为 "Dense Input"。

    • 以及常用的 randomized hashed IDs ,称为 "Random Hashing"。

    由于直接使用 dense input embeddings 作为 item representation 无需 embedding table parameters,为了进行公平比较,我们还为 Dense Input 方法引入了额外的 baselines ,将 ranking model layers 数量增加 1.5 倍和 2 倍,以研究增加 model depth 对 ranking 性能的影响。

    为了生成 Semantic IDs,我们使用 L=8 的 depth,使得每个视频的 Semantic ID 包含 8 codes。RQ-VAE 的 codebook size 设置为 K=2048。

  4. 评估指标:ranking model 使用前 N 天的数据进行依次训练(trained sequentially),其中每天的数据包含当天 user interactions 产生的 logged data 。

    我们使用第 (N+1) 天数据的 CTR 的 AUC 来评估模型性能。我们还在第 (N+1) 天引入的 new items 上对该指标进行细分,称为 CTR/1D 。CTR AUC 和 CTR/1D AUC 指标分别评估了模型由于数据分布偏移(data distribution shifts)和 cold-start items 带来的时间上的泛化能力。对于我们的ranking model 而言,CTR AUC 提升 0.1% 被认为是显著的。

1.3.1 Semantic ID 的性能

  1. 为用户观看历史中的每个视频存储 content embeddings 非常消耗资源。因此,训练一个使用 content embeddings 来表示用户观看历史中每个视频的 baseline large-scale ranking model 是不可行的。为了更好地理解哪种 representation 方法性能更佳,我们考虑了 ranking model 的两种设置。

    • 在第一种设置中,我们将 SID-based representation 与原始 content embeddings 和 random hashing based ID 进行比较,其中用户观看历史不作为输入特征(Figure 2)。在这种设置下,ranking model 使用两种视频特征(即当前视频、候选视频)作为输入特征。

    • 在第二种设置中,我们使用用户的观看历史作为输入特征(以及当前视频和候选视频),并将 SID-based representation 与 random hashing based ID 进行比较(Figure 3)。

  2. Dense Content Embedding vs. Random Hashing:我们观察到,在不对模型架构进行额外修改的情况下,直接使用 content embeddings(Dense Input)替代 random hashing-based IDs 并不会带来更好的性能。如 Figure 2a-2b ,Dense Input baseline 的性能不如 video-ID based baseline。我们推测,ranking models 严重依赖于来自 ID-based embedding tables 的 memorization;用 fixed dense content embeddings 作为特征来替代 embedding table 会导致 CTR 变差。

    能否结合 fixed dense content embeddings 和 ID-based embedding tables ?这两个特征可以互补:将它们拼接起来。作者并未尝试这个方法。

    为了验证这一假设,我们还进行了实验,将 ranking model 的层数增加 1.5 倍或 2 倍,以提升 Dense Input baseline 的 memorization 能力。结果发现,与 random hashing-baseline 相比,增加 depth 确实提升了整体性能和 cold-start items 的性能。事实上,Dense Input Model with 2x layers 的 CTR 提升高于 Dense Input with 1.5x layers ,这表明层数越多,memorization (Overall CTR )和 generalization(cold-start CTR/1D )越好。然而,增加层数会导致 serving 成本大幅增加。如下文所述,SIDs 能够保留原始 content embeddings 中的语义信息,同时通过 learned embedding tables 灵活高效地提供 memorization。

  3. SID vs. Baselines:我们将两种类型的 SID representations(N-gram 和 SPM)与 baselines 进行比较。其中,对于 N-gram-SID ,我们使用 Unigram (N=1) 和 Bigram (N=2) 。当使用 N-gram 时,embedding table size 基于相应 N-gram 的所有可能组合,即 Unigram-SID 有 8×K 行,Bigram-SID 有 4×K2 行。

    我们发现:

    • 当不将用户历史作为输入特征时,Unigram-SID 和 Bigram-SID 的 overall CTR 均低于 Random Hashing(Figure 2)。这可能是由于训练数据中的内容分布不均衡,导致 embedding table 的 sparse usage。而在 random hashing 中,由于视频被随机分配到embedding table 中的 embeddings ,embeddings 的使用是均匀的,因此不会出现这一问题。

    • 另一方面,当将用户历史作为输入特征时(Figure 3),Unigram-SID 和 Bigram-SID 的性能都明显优于 random hashing,因为用户观看历史中的视频内容可能涵盖更多样化的内容,从而使得 embedding table 的使用更加均匀。

    接下来,我们展示了 SPM-SID-based 的视频 representations 带来的显著性能提升。

    • 当使用更大的 embedding tables 时,SPM-SID 始终优于 N-gram representations ,这一点在 CTR/1D AUC 指标的提升中尤为明显(见 Figure 2b 和 Figure 3b),表明其对 cold-start items 具有更强的泛化能力。

    • 但对于较小的 embedding tables ,我们观察到了一些细微的差异。具体而言,当 embedding table size 有限时( 8×K 或 4×K2 ),N-gram 方法的性能略优于 SPM-SID 。这是因为在这些受限的 table sizes 下,SPM 学到的 subword vocabulary 较小,可能无法充分捕获复杂的语义关系(semantic relationships)。

    需要注意的是,对于大多数生产级 ranking models 而言,大型 embedding table 是保证良好性能的必要条件。因此, SPM-SID based representation 更适合大规模生产级 ranking models。总体而言,在我们的大规模 ranking models 实验中,Bigram-SID 和 SPM-SID 都显著优于 random hashing,这突出了结构化表征(structured representations)在捕获语义关系、提升 cold-start video recommendations 方面的重要性。

  4. Efficiency in SPM-SID vs. N-gram-SID:与具有 fixed embedding table sizes 的 N-gram SID representations 不同,SPM-SID 能够灵活适配给定的 embedding table size。这种适配(adaptation )是通过直接基于训练数据构建的 subwords 来实现的。

    • 给定一个 fixed embedding table,SPM 动态地生成 subwords,每个 subword 映射到一个唯一的 table entry 。这在 size constraint 内优化了 Semantic ID representation ,提升了 video representation 的效率。

    • 此外,在 embedding table lookups 方面,SPM-SID 比 N-gram-SID 更优。我们在 Figure 4 中绘制了每个视频的 embedding lookups 次数与 embedding table size 的关系。该图突出了 SPM 的自适应特性:对于训练数据中的 head/common videos ,lookups 次数动态减少,而平均 lookups 次数与 N-gram 中的 fixed number of lookups 相当。

    SPM 的这种自适应特性使其效率和可扩展性得到提升,使其更适合大规模 ranking models。

1.4 结论

  1. 本文旨在解决推荐模型中对广泛使用的 item IDs 的依赖这一难题。我们以 YouTube ranking model 为例,探讨了在大规模生产级推荐模型中使用 item ID features 的弊端。利用 RQ-VAE 算法,我们从 frozen content embeddings 中为数十亿个 YouTube 视频生成 Semantic IDs ,以捕获 corpus 中语义丰富的 hierarchical structures 。我们提出并验证了 Semantic IDs 作为一种有效的替代 video IDs 的方法,通过引入有意义的冲突(collisions)来提升模型的泛化能力。

二、附录

2.1 附录 A

2.1.1 RQ-VAE 的 Training and Serving Setup

  1. 模型超参数:对于 RQ-VAE 模型,我们使用一个 1-layer encoder decoder model ,维度为 256 。我们使用 L=8 级量化,每个 level 的 codebook size K=2048。

  2. RQ-VAE Training:我们在随机采样的 impressed videos 上训练 RQ-VAE 模型,直到 reconstruction loss 稳定(对于我们的corpus,约为数千万 steps)。

    已知 vector quantization 技术在训练过程中会遇到码本崩溃(codebook collapse)问题(《Jukebox: A generative model for music》),即模型仅使用一小部分 codebook vectors。为了解决这一挑战,我们在每个 training step 中将 unused codebook vectors 重置为 batch 中随机抽样的视频的 content embeddings (《Soundstream: An end-to-end neural audio codec》),这显著提高了码本的利用率(codebook utilization)。我们使用 β=0.25 计算 training loss 。训练完成后,我们冻结 RQ-VAE 模型,并使用 encoder 生成视频的 Semantic IDs。

  3. RQ-VAE Serving/Inference:当新视频被添加到 corpus 中时,我们使用 frozen RQ-VAE model 生成其 Semantic IDs。然后,Semantic IDs 被存储并像其他用于 ranking model 的特征一样被 served 。

2.1.2 Semantic IDs 的时间稳定性

  1. 为了研究 Semantic IDs 的稳定性,我们训练了两个 RQ-VAE 模型:RQ-VAE_v0 和 RQ-VAE_v1,使用的数据相隔 6 个月。 Figure 5 显示,使用最近的 engagement data 所训练的 production ranking model (使用 SID-3Bigram-sum ),其性能在基于RQ-VAE_v0 和 RQ-VAE_v 生成的 Semantic IDs 上是相当的。这证实了通过 RQ-VAE 学到的视频的 semantic token space 在下游 production ranking model 中具有时间稳定性。

2.1.3 作为 Hierarchy Of Concepts 的 Semantic IDs

  1. 我们展示了 corpus 中视频的 Semantic IDs 所捕获的概念层级结构(hierarchy of concepts)。实验章节详细介绍了用于训练 RQ-VAE 模型的超参数。直观地说,我们可以将 Semantic IDs 视为视频上的一个 trie 树,其中 higher levels 代表较粗粒度的概念、lower levels 代表较细粒度的概念。Figure 6 和 Figure 7 展示了我们训练的 RQ-VAE 模型中两个包含 4 tokens 的sub-tries 示例,它们分别捕获了体育(sports)和美食(food) vlog 视频中的概念层级结构。

2.1.4 Semantic ID 的相似性分析

  1. Table 1 显示了满足条件的所有视频在 content embedding space 中的 pairwise cosine similarity 的均值、以及它们对应的 sub-trie sizes :这些视频具有长度为 n 的 shared Semantic ID prefix 。我们考虑 Semantic IDs 分别为 (1, 2, 3, 4) 和 (1, 2, 6, 7) 的两个视频,它们 shared prefix 长度为 2。

    我们观察到,随着 shared prefix length 的增加,平均 pairwise cosine similarity 增加,而 sub-trie size 减小。这表明,随着 Semantic ID prefixes 长度的增加,它们所代表的概念粒度(granular concepts )越来越细。