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

APAO: Bridging the Training-Inference Gap in Generative Recommendation via Adaptive Prefix-Aware Optimization

Yuanqing Yu, Yifan Wang, Weizhi Ma, Zhiqiang Guo, Min Zhang · arXiv 2603.02730 · 发表 2026-08-13
16 分钟阅读时长 6298字 4.30综合分 第 1 名08-17 Generative 日报
目录 · 6 节1问题与动机2方法详解3核心技术贡献4实验结果分析5局限与未来方向6工业实践意义
相关 4新颖 4实用 4证据 4时效 5
生成式召回的优化目标必须模拟线上 beam search 的真实分支裁剪,而不是只优化完整目标序列的 token likelihood。对社区搜索或推荐场景,可先统计候选在不同前缀深度的淘汰率,再把前缀保留率作为辅助训练信号;这种改造比扩大 beam 或盲目增加模型参数更容易形成可控实验。

1. 问题与动机

APAO 研究的是生成式推荐里一个很容易被平均 loss 掩盖、但会直接决定线上召回结果的失效模式:训练阶段使用 teacher forcing,模型每一步都拿到真实的目标前缀;推理阶段却使用 beam search,只保留累计概率最高的少量前缀。于是,一个最终完整序列概率很高的物品,可能因为第 1、2 或 3 个语义 ID token 暂时不够高而被提前剪掉,后面的高概率 token 再也没有机会把它救回来。普通交叉熵只最大化整条目标序列的 token likelihood,并没有要求每一个中间前缀都能在 beam 中存活。

论文把这种差异形式化为两种成功条件。全量排序只关心完整物品的总分是否进入 Top-K;beam search 则要求目标前缀在每一个解码步都进入 Top-K,最终成功事件是所有前缀存活事件的乘积。任何一个中间步骤失败,最终物品都会永久丢失。这对生成式推荐尤其重要,因为物品通常由多个离散 semantic ID 组成,语义码的早期层级决定后续搜索空间;对生成式检索同样如此,错误的短前缀会把相关文档从后续搜索树中删除。

作者指出,直接在推理时扩大 beam 或改用全量 item sorting 可以缓解问题,但会增加服务延迟和计算量,因此将修复放在训练侧。论文的目标不是再造一个更大的 backbone,而是让训练目标显式模拟线上 beam 的逐步剪枝。该问题建立在 TIGER、Semantic ID、DPO、DMPO 和 S-DPO 等前序工作之上:已有工作主要改进 token 化、完整物品偏好或最终序列排序,APAO 则把优化粒度推进到每一个 prefix。

2. 方法详解

生成式推荐把用户历史记为 x,把目标物品表示为 T 个离散 token 的序列 y=(y1,...,yT)。标准训练在每个位置 t 计算下一个 token 的条件概率,并用交叉熵平均所有位置。推理时,beam size 为 K,算法在每一步将已有 K 条前缀扩展成候选集合,按累计 log probability 取 Top-K。APAO 的基本思想是对每一个长度 m 的合法前缀单独计算一个训练损失,再与原始 CE 损失相加:L_unified = L_CE + beta * sum_m w_m L_m。beta 控制前缀监督的强度,w_m 控制不同长度前缀的重要性。

作者给出两种 prefix-aware loss。Pointwise 版本直接把前 m 个 token 的交叉熵作为 L_point(m),相当于要求每个截断到 m 的目标前缀本身拥有较高概率。它不需要额外负采样,可以从已有 token logits 直接计算,因此每个 batch 的时间复杂度与 CE 相同,都是 O(BT(d^2+|V|d))。Pairwise 版本则将正物品的 m 长度前缀与随机负物品截断后的同长度前缀比较,先把各 token 的 log probability 累加成 prefix score,再用带 log-sum-exp 的 logistic ranking loss 拉开正负前缀分数。Pairwise 更贴近 beam 的相对排序,但如果采样 N 个负物品,复杂度变为 O(B(N+1)T(d^2+|V|*d))。

如果给所有 prefix 使用固定权重,会遇到两个问题:前缀数量随 token 长度增长,调参组合很多;更重要的是,beam search 的成功由当前最弱的 prefix 决定。APAO 因而提出 adaptive worst-prefix optimization。它先把最坏前缀的 hard max 写成 max_m L_m,但直接选择当前 mini-batch 的最大 loss 会产生训练震荡,于是改为在 T 维概率单纯形上做带 KL 正则的软最坏优化。权重更新有闭式解:w_m^(t+1) = w_m^t exp(etaL_m) / sum_j w_j^t exp(etaL_j)。高损失前缀会获得更大权重,但 KL 项限制权重相对上一轮变化过快;eta 越小,权重变化越平滑。

整个方法保持 one-stage 的 CE 加 prefix loss 训练,也可以将 pointwise 或 pairwise 变体用于两阶段对照。理论部分证明,最小化 prefix-aware loss 等价于优化 beam search 排名指标的一个下界;pointwise 不需要额外 forward pass,pairwise 只增加负样本相关计算。作者还给出 PyTorch 风格伪代码与开源仓库,代码、checkpoint 和脚本均公开。

实验使用四个公开数据集:Office(4,905 用户、2,420 物品、53,258 条交互、密度 0.45%)、Grocery(14,681 用户、8,713 物品、151,254 条交互、密度 0.12%)、Beauty(22,363 用户、12,101 物品、198,502 条交互、密度 0.07%)和 Yelp(30,431 用户、20,033 物品、316,354 条交互、密度 0.05%)。用户和物品先做 five-core 过滤,采用 leave-one-out 切分,以 Recall@10/20 和 NDCG@10/20 评价。物品语义码由 Llama-3.1-8B-Instruct 的 embedding 经 4-level RQ-K-means 量化得到,用户历史截断为最近 20 个物品。模型包括 encoder-decoder 的 TIGER 与 decoder-only 的 Llama,规模约 0.01B;AdamW、学习率 5e-4、1% warmup、cosine decay,最多 200 epochs、early stopping patience 20,batch 1024(128 样本乘 8 次梯度累积),单张 NVIDIA A100-SXM4-40GB,beam size 20,负采样数固定为 100。beta 在 0.05–0.4 中搜索,eta 在 5e-6 到 5e-4 中搜索。

3. 核心技术贡献

第一,APAO 首次把生成式推荐的 training-inference inconsistency 单独提出并进行结构化分析。它不是把 beam search 当作固定解码器,而是把“目标前缀必须在每一步活下来”写成训练约束,解决了标准 CE 对中间错误不敏感的问题。相对于只在完整物品层面对齐的 DPO、DMPO 和 S-DPO,APAO 的监督粒度更细,能够定位错误发生的解码深度。

第二,prefix-aware objective 将 token likelihood 和逐前缀 ranking 结合起来。Pointwise 版本从已有 logits 直接计算,适合对延迟敏感、需要快速复现的团队;Pairwise 版本对正负语义码前缀作显式比较,适合更看重候选顺序的场景。作者的理论分析表明,这类前缀损失可以作为 beam 下 Recall 等排名指标的下界代理,而不是一个与线上指标无关的辅助 loss。

第三,adaptive worst-prefix 用熵正则化的指数权重更新替代手工给每个前缀设权重。它的关键机制是把训练资源推向当前最容易掉出 beam 的 prefix,同时用 KL 约束避免权重在相邻 step 之间剧烈抖动。消融结果显示,去掉 adaptive weighting 会削弱对困难前缀的平衡能力,固定均匀权重或指数衰减权重都不如自适应方案。

第四,APAO 不要求更大的推理 beam,因此可以在不改变线上解码接口的前提下获得收益。论文的线上部署在微信公众号平台的真实推荐系统中进行,APAO-Pointwise 相对生产 CE baseline 使 pCTR 提升 0.9%,图片 CTR 提升 0.706%,人均图片点击提升 0.907%,人均图片曝光提升 0.205%。这让方法从离线 loss 改进落到了实际推荐指标。

4. 实验结果分析

主实验覆盖两种 backbone、四个数据集、Recall/NDCG 两类指标。下面列出 TIGER backbone 上 R@10 的一组对照,以及作者报告的跨指标最大相对提升;APAO-Pairwise 在四个数据集均高于 CE,Pointwise 也保持一致优势。

Backbone / 方法Office R@10Grocery R@10Beauty R@10Yelp R@10
TIGER CE0.06080.07750.06110.0384
TIGER APAO-Pointwise0.06670.08150.06370.0411
TIGER APAO-Pairwise0.06710.08110.06390.0412
Llama CE0.04690.06470.05160.0267
Llama APAO-Pairwise0.05570.07410.05480.0287

在 TIGER 上,APAO 的跨指标最大相对提升范围为 Office +2.50% 至 +5.17%、Grocery +3.75% 至 +5.19%、Beauty +3.77% 至 +6.60%、Yelp +5.45% 至 +6.31%;在更偏 decoder-only 的 Llama 上,最大提升范围为 Office +5.08% 至 +13.39%、Grocery +5.12% 至 +11.78%、Beauty +7.80% 至 +9.49%、Yelp +6.78% 至 +9.30%。这说明方法并不依赖 encoder-decoder 的特定结构,且在 decoder-only backbone 上改善更明显,可能是因为自回归路径和 beam 分支的错配更直接。

消融实验在 Beauty 数据集的 Llama backbone 上进行。移除 CE 或 prefix loss 都会造成明显下降,说明两者承担不同职责:CE 维持完整序列建模,prefix loss 负责逐步存活约束。去掉 adaptive weighting 后性能也下降;固定均匀权重和固定指数衰减权重都不如根据当前 loss 动态更新。前缀级消融尤其有启发:移除最早的 Prefix 0 影响最大,后续 prefix 的影响逐步减弱,说明越早的 token 越像搜索树的“入口”,一旦入口决策失误,后续高质量语义码没有机会出现。

作者还对 one-stage 与 two-stage 训练作了对照。在 Office/Beauty 的 NDCG@10 表中,TIGER 的 one-stage APAO-Pointwise 为 0.0337/0.0332,APAO-Pairwise 为 0.0337/0.0339;Llama 对应为 0.0265/0.0300 与 0.0269/0.0293。它们都超过 one-stage 的 CE+S-DPO(TIGER 0.0116/0.0167,Llama 0.0089/0.0146)以及两阶段 S-DPO 对照(TIGER 0.0321/0.0310,Llama 0.0256/0.0262)。这说明收益主要来自前缀级目标,而不是简单地把 DPO 换成另一种训练阶段。

在 beam size 扩展实验中,APAO 在不同 K 下都超过 baseline;K=20 的 APAO 可以达到或超过 baseline 在 K=100 时的 NDCG@5,表明训练侧补齐前缀存活能力后,可以用更小 beam 换取相近或更好的排序效果。效率方面,TIGER 的 pointwise APAO 每 epoch 时间与 CE 接近,例如 Office 都为 15 秒、Grocery 都为 39 秒;pairwise 在使用 100 个负样本时更贵,但比需要 reference model 额外推理的 S-DPO 更快。生产 A/B 结果则补齐了论文最关键的外部证据:pCTR、图片 CTR、人均点击和人均曝光均提升,没有只改善离线 Recall 的情况。

5. 局限与未来方向

论文没有单独设置长篇 Limitations 小节,正文和附录中明确写出的限制主要有三点。第一,作者为了公平比较采用 uniform random negative sampling,并明确把更先进的负采样策略留作 future work;Pairwise APAO 的效果和成本可能随着负样本质量变化。第二,Pairwise 版本在每个 prefix 上比较 100 个负物品,虽然比 S-DPO 更高效,但仍然显著慢于 Pointwise。第三,实验 backbone 约 0.01B,用户历史固定截断为最近 20 个物品,尚不能直接推出在超大模型、超长行为序列或超大 item vocabulary 上的成本结论。

从实验边界看,公开数据集只有 Office、Grocery、Beauty 和 Yelp,密度从 0.45% 到 0.05%,与社区 UGC 搜索中的曝光、点击、跳过、停留和内容新鲜度机制仍有差别。线上验证来自微信公众号推荐系统,证明了可部署性,但没有公开流量规模、延迟预算、灰度比例和训练资源变化,因此无法直接估算迁移到高 QPS 短文本召回的基础设施成本。论文还没有系统讨论 Semantic ID 碰撞、冷启动 item、实时索引更新和 tokenization 漂移;这些问题可能会改变 prefix 的难度分布。

未来可以沿三个方向推进。其一,把 random negative 换成 beam 内真实被淘汰的 hard prefix,减少训练分布和线上错误分布之间的差距;其二,把 adaptive weight 与内容新鲜度、query 意图或 item 业务价值联合起来,在商业目标不同的 prefix 上使用不同风险权重;其三,研究 prefix-aware 蒸馏,把大型生成式推荐模型学到的中间存活信号迁移到小型排序模型或候选重排器。

6. 工业实践意义

对搜索/推荐工程最直接的启示是:当系统采用 Semantic ID、自回归生成和 beam search 时,不能只看最终 item 的 Recall@K,而要记录目标 item 在每一层 prefix 是否进入 beam。建议在离线回放中输出 prefix survival curve:横轴是语义码层级,纵轴是目标 item 保留率;如果 Prefix 0 或 Prefix 1 的损失明显高于后续层,优先做前缀训练对齐,而不是盲目把 beam 从 20 扩到 100。APAO 的实验已经表明,K=20 的方法可以达到或超过 baseline K=100 的 NDCG@5,这意味着训练侧修复有机会直接节省推理预算。

在社区搜索场景可以采用渐进式落地。第一步保留现有召回和排序链路,把短文本、帖子或评论的多级语义码接到离线生成模型上,只统计 prefix 命中率和候选覆盖;第二步先部署 Pointwise 版本,因为它不需要额外负样本 forward,复杂度与 CE 相同,适合高频训练;第三步在有稳定候选集后尝试 Pairwise,用 beam 实际淘汰的近邻作为 hard negatives,并把 nDCG、CTR、长尾曝光和延迟共同作为目标。

训练侧要注意 beta 和 eta 的业务含义。论文在不同数据集上的最优 beta 落在 0.05–0.4,eta 落在 5e-6–5e-4,且大数据集往往偏好更小 eta 以稳定权重更新;这不应被当成可直接复制的固定超参,而应与 prefix 长度、item vocabulary 大小和负采样噪声一起调节。由于 Prefix 0 的影响最大,推荐先对前一两个 token 加更强的监控和校准,再决定是否让所有层均匀受训。

最后,APAO 的线上 +0.9% pCTR、+0.706% 图片 CTR、+0.907% 人均图片点击和 +0.205% 人均图片曝光说明它不仅是离线排序技巧,但这些结果来自微信公众号平台,不能直接外推到社区 UGC。上线时应保留传统召回回退、对 Semantic ID 失配和新 item 做内容塔回退,并灰度观察候选覆盖、beam survival、nDCG、CTR、pCTR 校准、GPU/CPU 利用率和端到端 P99 延迟。最值得先做的试验是把 prefix survival 作为一个诊断面板接入现有生成式召回,再以 Pointwise APAO 做低风险 A/B;如果收益主要出现在前缀易错的长尾内容,说明该方法能在不扩大 beam 的情况下改善社区搜索的召回上限。

← 全部深度解读 出现于报告:2026-08-17 · Generative #1 (4.30)2026-03-05 · Personalization #8 (3.55) 原文 ↗