GenRec | | arXiv:2610.17467 |★ 深度解读

Computed, not Memorized: Bit-Factorized Identifiers for Efficient Generative Retrieval

计算而非记忆:面向高效生成式检索的位分解标识符

🧭 生成式检索 · 数值 DocID 零样本适配

Leiden University · Shandong University · Radboud University

I-Fan Lin, Zhen Zhang, Faegheh Hasibi, Suzan Verberne

将文档向量符号位作为 DocID,结合多树束搜索,实现零训练新文档适配与最低推理延迟

📌 工作参考价值

  • 新物品/新文档冷启动:可用预训练编码器对物品标题、属性、描述做 tanh 后取符号位,直接生成可打分的二进制 DocID,无需为新 ID 训练 embedding;通过 weight interpolation(α=0.5)融合通用编码器与任务调优编码器,能在 seen/unseen 间取得平衡。
  • 推理工程:采用 flat token 评分,所有候选 token 在一次 encoder 前向中完成打分,不需要 autoregressive decoder;再用多棵不同 bit 排列的前缀树做 constrained beam search(h=8),可比单纯增大 beam 更有效地减少早剪枝,提升未见文档召回。
  • 资源与延迟:120-bit DocID 仅需 15 bytes/doc,单 query 延迟 24 ms(A100),显著低于现有生成式检索方法;适合商品库频繁更新、需要低延迟检索的场景,可作为生成式推荐索引层。
  • 局限与改进:平坦 ID 缺少层级先验,高召回略弱;若业务需要 Hit@100 更优,可尝试将 bit-factorized 与 RQ-VAE 等残差量化层级结构结合。

动机:生成式检索通常需要在训练中记忆 DocID token embedding,导致新文档加入后数值 DocID 几乎无法泛化,而增量训练或模型编辑成本高。需要一种无需重训即可对新文档打分、同时保持推理高效的 DocID 设计。

方法关键点:

  • 用编码器得到文档 embedding,经 LN + tanh 得到 k 维连续向量,取 sign 作为 k-bit 二进制 DocID;用 InfoNCE 对齐 query/document 表示,得到 DocID 编码器 M1。
  • 查询经 M1 初始化编码器输出 zq,再乘以可学习位权重 w 得 uq;文档得分 s(q,d)=bd^T uq。在 seen 文档上训练 retriever M2。
  • 对 M1 和 M2 做 WiSE-FT 权重插值:θ’2=0.5θ1+0.5θ2,平衡 seen/unseen 泛化。
  • 推理时把 k bits 分成 T tokens,token score 只依赖当前 query 段,无需 autoregressive decoder;用 h=8 棵不同 bit 排列的 prefix tree 做 constrained beam search,合并候选。

关键实验:在 NQ320K/TriviaQA 60/40 split 上,unseen 文档 Hit@10 达到 77.74/77.15,比 NCI、DSI、MEVI 等数值 DocID 高 40-60 个百分点;seen 文档 Hit@1 最高。在 MS MARCO 90/10 split 上,零训练 Hit@10 74.5,仅比 DSI++/DOME 低约 3 点。单 query 延迟 24 ms,比 NCI/DSI/MEVI 快 7×,比 SEAL 快 397×,存储 15 bytes/doc。

最值得记住:把 DocID 从“训练出的 ID embedding”改为“从文档内容计算得到的符号位”,结合多树束搜索,使生成式检索能对任意新文档零样本打分,同时保持低延迟。