传统 DLRM 类排序模型用随机哈希 item ID(或直接的 item 大表 embedding)作为 item 的唯一稀疏特征。这套方案在工业界已沿用多年,但随着模型规模扩大和对冷启动/长尾的要求提升,暴露出三个根本性缺陷:
下图展示了 SID 在 DLRM 中替换 item ID embedding 的总体思路:
(图文/视频/文本)
(MLLM/CLIP)
RK-Means
(替换 item ID)
以下 7 篇论文均在工业级排序模型(YouTube / Meta Ads / ByteDance / Alibaba / LinkedIn Feed / 快手广告)中验证了将 SID 引入 DLRM 类模型的效果,各有侧重:
核心问题:YouTube 亿级视频语料,随机哈希制约长尾和冷启动泛化。直接用稠密内容 embedding 替换 item ID 会大幅降低整体 CTR AUC(记忆能力不足)。
具体做法:两阶段方案。① 用 RQ-VAE 将视频内容 embedding 离散为 L=8 层 SID,codebook 大小 K=2048;② 用 N-gram 或 SPM(SentencePiece Model)将 SID token 序列切分为子词,对子词做 embedding lookup 并求和,作为排序模型的 item 特征。
实验结论:用户历史序列用 SPM-SID 表示时,整体 CTR AUC 和冷启动 CTR/1D AUC 均优于随机哈希基线,serving cost 不变。
核心问题:Meta 广告系统中 item 基数极大(数十亿),随机哈希导致(a)embedding 不稳定(新旧 ID 交替引起梯度冲突),(b)尾部物品曝光不足,(c)A/A 测试方差大。
具体做法:将 RQ-VAE 生成的 SID $[c_1,c_2,..,c_L]$ 按层级前缀切分为 Prefix-Ngram 子词集合:
- $(c_1)$ 对应最粗粒度语义(如"食品类"),越长的前缀越细粒度
- 每个前缀 tuple 独立查 embedding 表,所有 lookup 相加得 item 表示
- 比纯 N-gram 更充分利用 SID 层次结构,上下层共享梯度
关键洞察:SID 前缀长度与 item 点击损失率单调相关(更深前缀 → 语义越精确 → 预测越精确),验证了层次语义的有效性。
生产部署:在 Meta Ads 大规模排序系统上线,成为排序模型中重要度最高的稀疏特征之一;注意力机制(Transformer/PMA)与 SID prefix 结合收益更大。
核心问题:随着 SID 层数增加,传统 N-gram embedding 表呈指数增长($K^N$ 行),存储不可行。同时 N-gram 方案仅使用简单加法聚合,忽略了 SID 内部的结构信息。
三大创新:
实验结论:广告系统上线,NE 提升 2.4×,数据 footprint 减少 3×,部署机器成本降低 20×,推理延迟 <500ms,内存 ≤2.5GB。
核心问题:大排序模型 scaling 时,item ID embedding table 的分布不稳定(norm variance 随参数增大持续震荡)成为 scaling law 的主要障碍。直接换 semantic token 性能反而下降(token 无法记忆高频 item)。
三大创新:
核心问题:判别式排序模型(CTR/CVR)训练时数据稀疏,存在两种过拟合:单轮过拟合(epoch 切换时突然发生)和轮内过拟合(首轮 epoch 内持续)。过拟合随模型规模扩大恶化,导致大模型不如小模型。
关键洞察:生成式模型(自回归预测用户行为序列)不存在过拟合——因为通过大量随机负采样避免了数据稀疏问题。
具体做法(GPSD 三阶段):
实验结论:成功将模型从 13K 扩展到 0.3B 稠密参数,性能遵循幂律。线上 A/B:GMV +7.03%,订单 +2.11%,CTR +3.78%。
核心问题:LinkedIn Feed 排序模型依赖数百个手工特征,维护成本高、泛化受限。随着模型规模扩大(54亿稀疏参数),Post ID 嵌入表巨大且存在冷启动问题(新帖无 embedding)。
具体做法:LiGR 将 Feed 排序重构为基于 Transformer 的 scaling-friendly 架构,关键创新之一是用 Prefix-Ngram SID 替换 Post ID:
关键结论:仅用 7 个特征即可超越使用数百特征的基线模型;Semantic ID 替换 Post ID 后 Long Dwell AUC +0.4%,同时模型参数从 54 亿降到 13 亿。整体架构 Long Dwell AUC +2.4%,DAU +0.27%,Feed 停留时间 +0.28%,已在 LinkedIn Feed 生产部署。
核心问题:SID 由 MLLM 内容 embedding 量化而来,缺乏协同信号(用户行为),与 CTR/CVR 下游任务目标存在错位。现有两阶段对齐方案(先训 CF 再量化,或先量化再用 CF 对齐)存在信息损失且对齐灵活性差。
核心创新(三大模块):
SID 接入排序模型的方式(四种特征):推理阶段生成的 DAS SID 以四种形式接入下游判别式 RS:① ID-based sparse feature(Prefix-Ngram,如 ad_l1=2, ad_l2=2_31, ad_l3=2_31_142);② List-wise 序列 feature(用户历史行为中各广告的 SID 拼成序列);③ Cross match feature(候选广告 SID 与用户历史 SID 匹配计数);④ Dense frozen feature(冻结的 SID 稠密 embedding)。
实验结论:离线 CTR AUC +0.0024(GAUC +0.0026)vs 基线;线上 A/B:eCPM +3.48%,冷启动场景 +8.98%,服务 400M+ DAU。TIGER++ 生成模型也受益:HR@5 +7.3%。
给定 SID $[c_1,c_2,...,c_L]$,如何设计 embedding 参数化方案直接决定泛化-记忆的 tradeoff 和存储开销:
① Unigram(最简单)
每层 code 独立 lookup:$L$ 次 lookup,每次查 $K$ 行的表。
✅ 参数少($L \times K \times d$),泛化好
❌ 不同层组合信息完全丢失,记忆能力差
② N-gram(固定分组)
每 N 个相邻 code 合并为一个 token,lookup 表大小 $K^N \times d$。
✅ 捕获局部组合;Bigram 已显著优于 Unigram
❌ N>2 时表大小指数爆炸;分组边界固定
③ SPM(自适应子词)
从 SID corpus 学习可变长子词,高频 code 组合自动合并,一张 embedding 表。
✅ 自适应 corpus;单表高效;大表情况下胜过 N-gram
❌ 需额外训练 SPM;推理时分词有额外开销
④ Prefix-Ngram(多粒度前缀)
所有长度的前缀都做 lookup:$L$ 次 lookup,表大小逐层增大(第 $l$ 层 $K^l$ 行)。
✅ 充分利用层次语义;不同粒度梯度共享
❌ 深层前缀表大小仍是 $K^L$,实际需 hash 截断
⑤ SIDE(无表 codebook 投影)
直接用 codebook vector 线性组合,无独立 embedding 表。
✅ 内存最小;OOV 友好;部署简单
❌ 依赖 codebook 质量;码本需在线
⑥ Hybrid Gen+Mem(TRM)
Gen-token(SID)+ Mem-token(BPE k-gram),分别走 deep 和 wide 路径。
✅ 泛化+记忆兼顾;BPE 仅对高频 item 生效
❌ 系统复杂;需额外 BPE 训练流程
除替换 embedding 外,部分论文对排序模型的训练目标做了扩充,利用 SID 结构引入额外监督信号。
5.1 纯判别式(基础)
Google SemID 和 Meta Prefix-Ngram 只使用标准 CTR BCE loss,SID 仅作为输入特征替换:
5.2 判别 + 生成联合训练(TRM)
在 BCE loss 基础上增加 Next-Token Prediction(NTP)辅助 loss,给定 query + user context 预测正样本 item 的 gen-token 序列:
- $\mathcal{L}_d$:标准 BCE 判别 loss(CTR/CVR 预测)
- $\mathcal{L}_g$:生成 loss,仅对正样本 $y{=}1$ 计算;对 gen-token 序列 $[s_1,...,s_L]$ 做逐步自回归预测
- $\lambda = 0.1$:平衡系数(论文设置)
用户历史:[运动鞋→篮球],正交互目标商品 SID = [5, 12, 3](3 层 gen-token)
NTP 要求:给定 user context + "已预测到 5",预测下一个 token = 12;给定 context + "已预测到 5,12",预测 3。
这迫使模型学到 "SID 第 1 层=粗类目,第 2 层=细类目,第 3 层=风格" 的语义层次关系,增强 SID 在交叉特征中的信息量。
5.3 生成式预训练 → 判别式微调(GPSD)
GPSD 最激进:用完全独立的生成式预训练初始化判别式模型的 embedding,冻结后再微调。
SID 天然支持冷启动(新 item 有内容特征就能生成 SID),但各方案利用程度不同:
| 论文 | 冷启动策略 | 新 item AUC 改善 |
|---|---|---|
| Google SemID | RQ-VAE 语义空间稳定,新 item 自动分配 SID,即刻获得有意义 embedding | CTR/1D AUC 显著提升 vs 随机哈希 |
| Meta Prefix-Ngram | 同上;Prefix 共享梯度使语义相似新 item 受益 | 新 item NE -0.41% vs 随机哈希 |
| SIDE | codebook 本身是稠密向量,新 item 立即有 embedding,无冷启动问题 | 广告系统冷启动显著改善 |
| TRM | Gen-token 主要改善新 item;Mem-token(BPE)为老 item 增强记忆;新旧分段评估 | Gen-token: 新 item +0.06%;老 item +0.11%(>7天) |
| GPSD | 生成预训练在大量序列上见过更多 item,embedding 先验质量高 | 泛化改善是核心,未单独报告冷启动 |
| LiGR | SID 替换 Post ID 彻底消除冷启动:新帖无论曝光量多少,立即获得 SID embedding | 新帖 AUC 提升(Long Dwell AUC +0.4% 含冷启功劳) |
| DAS | 一阶段联合训练使 SID 感知 CF 信号,冷启动场景也能获得有意义的 CF 对齐表示 | 冷启动场景 eCPM +8.98%(最大增益场景) |
从五个维度对比七篇论文的方案选择:
| 论文 | SID 生成方式 | Embedding 参数化 | 训练目标 | 冷启动 | 线上收益 |
|---|---|---|---|---|---|
| Google SemID 2306.08121 |
RQ-VAE,L=8,K=2048,冻结 | N-gram / SPM(推荐 SPM) | 纯判别 BCE | ✓ 原生支持 | CTR AUC + 冷启动 CTR/1D 双提升 |
| Meta Prefix-Ngram 2504.02137 |
RQ-VAE,多模态内容 | Prefix-Ngram(全前缀 hash) | 纯判别 BCE | ✓ 新 item NE -0.41% | +0.15% NE;A/A 方差 -43% |
| SIDE 2506.16698 |
DPCA 三元码本(VQ-fusion) | 无表 codebook 投影(SIDE) | 纯判别 BCE | ✓ 天然 OOV 友好 | NE 2.4×;数据 3×↓;机器成本 20×↓ |
| TRM 2601.22694 |
RQ-KMeans(协同感知 MLLM),5层×4096 | Wide&Deep Gen+Mem(BPE) | BCE + NTP 联合(λ=0.1) | ✓ Gen-token 新 item +0.06% | CTR AUC +0.65%;稀疏参数 -33% |
| GPSD 2506.03699 |
标准 SID/item ID(生成预训练序列) | Transformer 嵌入表(预训练后冻结) | 生成预训练 → 判别微调(冻结稀疏) | △ 泛化改善 | GMV +7.03%;scale 到 0.3B |
| LiGR 2502.03417 |
RQ-VAE,3层×1000 codes,Post 内容 | Prefix-Ngram concat pooling(非 sum) | 纯判别 BCE + 集合级注意力 | ✓ 新帖即刻有 SID | Long Dwell AUC +2.4%;参数 5.4B→1.3B |
| DAS 2508.10584 |
RQ-VAE,3层×512 codes,MLLM 内容(用户+广告双侧) | Prefix-Ngram + List-wise + Cross-match + Dense(四种) | 一阶段:BCE + CF Debias + Multi-view 对比对齐 | ✓ 冷启 eCPM +8.98% | eCPM +3.48%;400M DAU |
1. Embedding 参数化的选择独立于 SID 生成方式,可以解耦实验。
2. Google 和 Meta M1 只做最保守的特征替换(无训练目标改变),效果已显著,工程代价小,应先做。
3. TRM 三大创新中 Hybrid Tokenization 贡献最大(消融 -0.09% QAUC),NTP loss 次之(-0.05%),协同感知量化第三(-0.03%)。
4. GPSD 方案最激进,GMV 提升 7% 也最大——高收益伴随高工程复杂度。
你的模型是 TF 实现的 DLRM(稀疏 embedding + dense feature + interaction + MLP),目标是把 SID 融入进去。以下按工程难度从低到高排列 5 个可执行 idea:
- 灵感来源:Google SemID + Meta Prefix-Ngram
- 做法:为每个商品预计算 SID,生成 Prefix-Ngram 子特征,每个子特征独立 embedding lookup 后求和,拼接原始 item ID embedding(而非替换,不损失原有能力)。
- 接合点:DLRM sparse embedding 层;用 tf.nn.embedding_lookup_sparse 聚合多个 SID 子词 embedding。
- 预期收益:尾部商品和新品 CTR AUC 改善,参考 Meta +0.15% NE。
- 工程代价:低。1 周内可完成离线实验。
- 灵感来源:Google SemID(历史序列中每个 item 用 SID embedding 替换)
- 做法:用户历史行为序列中,每个历史商品用 SID Prefix-Ngram 求和 embedding 代替 item ID embedding。SID 向量共享语义前缀,在 attention 层更容易匹配语义相关物品。
- 接合点:DLRM 中 user_history_items 特征组;有 DIN/attention pooling 时收益更大(Meta 实验验证)。
- 预期收益:跨类目泛化和新品推荐改善。
- 工程代价:中低。
- 灵感来源:TRM 的 Gen-token(泛化)+ Mem-token(记忆)
- 做法:① Coarse SID(泛化路):只用 SID 前 3 层,走 deep MLP;② Fine SID(记忆路):对高频 k-gram token 组合用 BPE 生成新 token,走 wide 层独立 embedding 表;最终在 interaction 层拼接两路向量。
- 预期收益:头部商品保持记忆能力;尾部/新品获语义泛化收益。TRM Hybrid 比纯 Gen-token AUC 提升约 0.05-0.11%。
- 工程代价:中。需 BPE 离线预计算,训练侧双路接入。
- 灵感来源:TRM 的 discriminative + generative 联合训练
- 做法:增加 2-4 层 causal transformer 分支,以 query/user context 为条件,对正样本商品 SID 序列做 next-token prediction(逐步预测 c1→c2→...→cL)。NTP loss 加权叠加在主 CTR BCE loss 上(λ=0.1)。
- 接合点:复用 DLRM 的 user/query 表示向量作为 NTP 分支 context;SID codebook 作为 NTP 的 vocab。
- 预期收益:TRM 消融:NTP loss 贡献约 +0.05% QAUC,仅增加 1.7% 参数和 0.5% FLOPs。
- 工程代价:中。
- 灵感来源:GPSD 三阶段框架
- 做法:用商品序列数据训练独立 Transformer 生成式推荐模型,预训练完成后把 item/SID embedding 参数迁移到 DLRM,并在 DLRM 训练阶段冻结这部分 embedding,只训练 dense MLP 部分。
- 接合点:DLRM 稀疏 embedding 层用预训练权重初始化后冻结;dense MLP 从头训练。
- 预期收益:大幅缓解过拟合,DLRM 可安全 scale up;GPSD 线上 GMV +7.03%。
- 工程代价:高。需独立的生成式预训练流程,但收益最大。
- 灵感来源:快手 DAS 的 ICDM + MDAM 模块
- 核心洞察:SID 由 MLLM 内容 embedding 量化而来,天然缺乏协同信号(CF)。如果直接用带流行度偏差的 CF 对齐,会把偏差注入 codebook,导致冷启动 item 被忽视。正确做法:先去偏(分离流行度 vs 内容兴趣),再用纯净无偏 CF 对齐。
- 具体做法(分两步):
① CF Debias:在 SID 量化训练时,同时训练因果解耦网络,分离商品侧无偏内容表示 $c^{pro}_i$ 和流行度表示 $c^{pop}_i$;用户侧分离兴趣表示 $c^{int}_u$ 和从众表示 $c^{con}_u$;用无偏 CF 表示做后续对齐。
② Multi-view 对比对齐:三路对比学习让 SID 表示 $z_i$, $z_u$ 感知无偏 CF 信号:Dual U2I(用户 SID ↔ 商品 CF;商品 SID ↔ 用户 CF)+ Dual I2I/U2U(同侧 SID 与 CF 交叉对齐)+ Co-occur I2I/U2U(共现商品/用户的 SID 对齐)。总 loss: $\mathcal{L} = \mathcal{L}_{\text{Sem}} + \alpha\mathcal{L}_{\text{CF}} + \beta\mathcal{L}_{\text{Align}}$ - 接合点:在 SID 训练(RQ-VAE 量化)阶段加入,不需要修改 DLRM 主模型结构;完成后直接升级 SID 特征,Idea A/B/C/D 自动受益。
- 预期收益:DAS 在快手广告系统 eCPM +3.48%,冷启动场景 +8.98%(冷启收益最大,因 CF 对齐帮助 SID 理解协同偏好,即使新 item 无历史也能泛化)。
- 工程代价:高。需重新设计 SID 训练流程,引入 CF 对齐 loss 和解耦网络,工作量约 2-4 周。但不改动 DLRM 主模型,完成后直接升级 SID 特征,ROI 可能最高。