← 全部深度解读
📖 深度解读 · GENERATIVE

PRQ-KMeans: Projection Residual Quantization for Semantic ID Tokenization

Yunxiao Luo, Siyuan Wang, Ben Chen, Chenyi Lei · Kuaishou · arXiv 2608.24207 · 发表 2026-08-25
10 分钟阅读时长 3991字 4.40综合分 第 1 名08-31 Generative 日报
目录 · 6 节1问题与动机2方法详解3核心技术贡献4实验结果分析5局限与未来方向6工业实践意义
相关 5新颖 4实用 4证据 4时效 5
语义 ID 的关键并非只追求向量重构误差,而是让每层 token 真正剥离已表达的共性,避免后续码本重复编码同一方向。对社区 UGC 搜索与生成式推荐,可在不改动主模型的情况下先升级离线 tokenizer,并用码本利用率、前缀覆盖率与线上召回指标共同验收。

1. 问题与动机

生成式检索与推荐通常不直接预测海量物品的原子 ID,而是把每个物品编码成由粗到细的语义 ID(SID)序列,再用自回归模型逐 token 生成。常用的 RQ-KMeans 在每一层选择一个质心作为 token,并把“当前向量减去整个质心”所得残差交给下一层。论文指出,这个看似自然的递归并不能为每个样本彻底去掉已由当前 token 表达的方向:同一簇内不同向量沿质心方向的投影系数不同,而算法对所有样本减去同一个质心长度,因此会留下正或负的 residual carryover,迫使后续码本重复表示前层已经解释过的变化。

作者在工业数据的三层 RQ-KMeans(码本规模 1024-512-128)中测得 L1、L2、L3 的平均相对 carryover 分别为 9.89%、10.17% 和 7.44%;128 维独立各向同性方向的期望绝对余弦仅 7.07%,说明前两层残留并非随机噪声。固定 L1 分配、逐步把 carryover 保留比例从 1 降到 0 时,L2 前缀利用率由 47.88% 单调升至 48.46%。这给出直接证据:残差传递方式会限制下一级 token 空间的有效利用。与此同时,数据全集的公共方向会浪费第一层容量,硬 K-Means 又忽略分簇边界附近的渐进相似性。论文因此把层次 SID 重新解释为“逐层剥离共性”,目标是让后层只接收尚未表达的差异。

2. 方法详解

PRQ-KMeans 是一个后处理 tokenizer,不要求各层码字之和重构输入,因此可以自由丢弃不利于区分物品的方向分量。输入先做 L2 归一化,计算全体向量均值 μ,然后从每个向量中减去其在 μ 方向上的投影并再次归一化。与普通中心化不同,这一步移除的是样本自身沿全局均值方向的系数,目的是让第一层码本专注于实体间的粗粒度差异,而非重复表示整个语料共有的背景。

每一层码本拟合采用 Top-k 软质心精炼。对残差 r 与每个质心 c 计算余弦相似度,只保留最相近的 k 个候选,再用 softmax(β·cos(r,c)) 得到局部权重;每个质心由所有把它列入 Top-k 的样本按权重求均值。软权重仅用于 25 轮质心精炼,真正发射 token 时仍执行硬余弦最近邻分配。公开数据使用 k=2,工业数据因码本更大使用 k=5,两者都取 β=15。

核心更新是投影残差。普通 RQ-KMeans 使用 r-c;PRQ-KMeans 使用 v = r - (r·c / ||c||²)c,再对 v 归一化后交给下一层。它等价于在约束 v·c=0 下寻找与原向量 r 欧氏距离最小的残差,因此既严格正交于已选质心,又以最小改动保留其余方向信息。训练时依次拟合各层码本;编码新物品时冻结全局均值和所有码本,重复“全局投影去除—硬余弦分配—投影残差—归一化”,最终得到固定长度 SID。

工业实验使用 7,797,542 个物品和 9,046,403 条训练 query,共 16,843,945 个 tokenizer 拟合向量。128 维表示由蒸馏 BGE 编码 query 文本、标题、价格、关键词与 OCR 文本,并通过 query-query、item-item、query-item 目标对齐。下游是 BART-Base,三阶段训练样本分别为 35,689,588、54,459,755 和 45,916,427,batch size 512、学习率 5×10⁻⁵,训练 4/3/6 个 epoch。公开实验使用 Sentence-T5-Base 的 768 维物品向量、256-256-256 码本和 TIGER:4 层编码器、4 层解码器、隐藏维 128、FFN 1024、6 个注意力头,最多 200 epoch,batch size 256,学习率 10⁻⁴,beam size 30。tokenizer 在双路 AMD EPYC 9654、2.2 TB RAM 的 CPU 服务器上拟合;下游训练使用 8 张 80GB H800。

3. 核心技术贡献

第一,论文把“残差量化”从重构视角转成“渐进共性剥离”,并推导出普通质心相减的残留项 (α-ρ)ĉ。即使质心是簇均值,它只能保证该残留在簇内均值为零,均方残留仍等于样本投影系数的簇内方差;这解释了为什么后层会重复编码前层方向。

第二,投影残差按每个样本自己的投影系数去除当前质心分量,并证明它是唯一的最小欧氏改动正交解。相比设计复杂的新生成模型,这一变化只发生在离线 SID 构造环节,能直接替换 RQ-KMeans 前缀,并与 balanced K-Means、OPQ 后缀组合成 PRQ-OPQ。

第三,全局分量去除与 Top-k 局部软更新分别解决第一层容量浪费和簇边界估计粗糙的问题。完整方法把工业三层码本的独立编码比例从 55.52% 提至 58.45%,L2/L3 利用率由 47.88%/3.61% 提至 57.78%/3.99%,同时把对应 Gini 从 0.774/0.569 降至 0.758/0.546,说明更多路径被更均衡地使用。

4. 实验结果分析

工业检索主结果如下(均为 @50):

TokenizerOrder HitRateOrder MRRClick HitRateClick MRR
RQ-VAE0.24740.05010.29210.0446
RQ-KMeans0.29130.06440.32790.0540
PRQ-KMeans0.31280.07200.34880.0588

相对最强三层基线 RQ-KMeans,PRQ-KMeans 的 Order HitRate/MRR 提升 7.4%/11.8%,Click HitRate/MRR 提升 6.4%/8.9%。在五层混合结构中,PRQ-OPQ 相比 RQ-OPQ 的四项指标仍提高 0.6%–1.9%,表明它并不要求重做整个 SID 后缀。四个公开数据集的八项 Recall@20/NDCG@20 全部达到最优或并列最优;LastFM 增益最大,Recall 从 0.0115 增到 0.0179,NDCG 从 0.0042 墓到 0.0076,说明稀疏域更能受益于更充分的层次路径利用。

消融中,完整模型为 0.3128/0.0720(Order)和 0.3488/0.0588(Click)。去掉全局分量后降至 0.3017/0.0697 与 0.3379/0.0560;把软更新改为硬更新后为 0.3067/0.0705 与 0.3460/0.0584;去掉投影、恢复欧氏分配与完整质心相减后跌至 0.2985/0.0687 与 0.3328/0.0548,是工业四项指标中损失最大的组件。公开 Amazon 三个数据集同样对 Projection 最敏感,而 LastFM 对 Soft 最敏感。k=2 或 5 优于 1 和 10,β=15–25 基本稳定、β=10 较差,显示邻域过宽会稀释局部性,权重太平也会模糊质心差异。

定性案例中,RQ-KMeans 把 12 个 Kitty 主题拖鞋压到同一个完整 SID;PRQ-KMeans 保持共同 L1 前缀,在 L2 分为两支,最终形成三个各含四件商品的 SID,分别对应室内软底、户外/宿舍、浴室/旅行等细粒度用途。弱意图 query“hotel”的 L2 邻域也从 22 个物品、14 个 L3 分支扩展到 100 个物品、29 个分支,并覆盖入口、浴室、走廊与商业设施等相关场景。这说明更高利用率并非纯粹分散码本,而是形成了更有用的语义分叉。

5. 局限与未来方向

论文没有单独的 Limitations 章节,也未报告线上 A/B 测试;其最强证据来自公开工业数据集上的离线 HitRate/MRR,因此不能直接等同于真实 CTR、转化率或收入提升。代码注明“录用后发布”,当前复现还依赖后续开放;工业完整训练使用 8 张 H800,且 tokenizer 拟合需要 192 个 CPU 核与 2.2 TB 内存,资源门槛不可忽视。

方法限定在 post-hoc tokenizer,因为投影丢弃的方向不再满足 RQ-VAE 那类加性重构约束;它能否与端到端可学习量化器联合优化仍未验证。实验以固定周期离线重建 SID 为主,没有讨论新增物品、分布漂移、码本版本迁移、旧 SID 兼容及索引重建成本。公开评测对碰撞 SID 随机挑一个代表物品(固定 seed 42),虽比 SID 级指标更谨慎,仍可能与生产环境基于库存和业务分数的展开逻辑不同。未来应重点验证增量编码稳定性、跨版本映射、长尾 UGC 文本与多模态内容上的收益,以及线上延迟和索引运维成本。

6. 工业实践意义

这项工作的落地点非常明确:若现有生成式召回/推荐已经使用 RQ-KMeans SID,可以先保持下游 Transformer、训练样本和解码器不变,只离线替换 tokenizer 做影子实验。首轮应同时比较旧新 SID 的 ICR、各层前缀利用率/Gini、碰撞率、弱意图邻域覆盖,再用完全相同的下游训练预算比较 Recall、MRR、nDCG;这样可以把收益归因到 token 空间,而不是模型容量或数据变化。

对社区 UGC 搜索,输入表示可融合 query、帖子标题/正文、话题、作者与 OCR/ASR 内容。全局投影去除可能抑制“帖子”“分享”等平台通用背景,投影残差则让后层 token 更专注于地点、需求、风格和场景等差异。上线前需额外检查热门主题是否被过度拆散、敏感属性是否形成集中前缀,以及新内容是否能稳定落入已有语义树。论文的“hotel”案例提示该方法可能改善弱意图 query 的候选多样性,但必须配合相关性重排,避免单纯扩大邻域稀释精度。

部署上,SID 生成本身是离线 CPU 任务,在线仍只是按既有 token 序列训练与解码,理论上不会增加主模型推理延迟;真正成本在全量重编码、索引双写和模型重训。建议采用版本化码本:先抽样拟合并离线回放,再全量编码形成 v2 索引,双路训练后进行小流量 A/B;若指标不佳可立即回切 v1。k 与 β 不宜照搬,论文显示 k=2/5、β≈15 是稳健起点,但应按码本规模和内容密度网格搜索。最值得借鉴的设计原则是:每一层 token 都应有清晰的信息职责,后层看到的残差要经过可测量、可解释的“已表达信息去除”,而不是机械地沿用向量量化的重构惯例。

← 全部深度解读 出现于报告:2026-08-31 · Generative #1 (4.40) 原文 ↗