WHALE: A Scalable Unified Model for Recommendation with Wukong-HSTU Architecture
Meta 提出 WHALE,把擅长高阶静态特征交互的 Wukong 与擅长长行为序列的 HSTU 放进每一层,并让 Wukong 表征通过注意力逐层查询 HSTU 历史证据。模型在 800 亿训练样本、40 亿评测样本上验证;14 天线上 A/B 中主指标提升 0.113%,两个辅助指标提升 0.824% 和 1.820%,推理 QPS 仅回退 5%。
INSIGHT可借鉴点是把用户、物料、上下文交叉与长序列证据做逐层交换,而不是只在网络末端拼接;平均池化替代注意力会造成 0.23% NE 回退,浅层融合回退 0.25%。共享门控将 FFN 矩阵乘从 3 次降到 2 次,配合 Triton 内核使训练吞吐提升 30%,为 UGC 搜索排序同时利用实时交叉特征与长期行为提供了可部署路线。
深度解读:WHALE
1. 问题与动机
大规模推荐排序依赖两类互补信号:一类是用户、物料、上下文及显式交叉等非序列特征,另一类是数千到上万步的用户行为历史。Wukong 通过可堆叠的高阶交互模块扩展前一类信号,HSTU 则以序列注意力扩展后一类信号,但生产模型通常沿两条独立路线演进,或在末端做一次浅层拼接。浅耦合的缺陷是:静态交叉无法在每一层有针对性地从长历史中寻找证据,序列分支也不能持续接收当前候选和上下文形成的交互查询。单独加宽或加深任一主干还会快速增加 FLOPs、内存带宽与延迟,难以满足大流量排序的 QPS 预算。WHALE 的动机因此不是简单把两个强模型拼起来,而是在每个递归层保留 Wukong 和 HSTU 的完整能力,并让二者逐层交换信息。论文用 Meta 大型短视频平台的 800 亿训练样本和 40 亿评测样本验证:在同等复杂度下,统一架构优于单一路线;线上主指标超过 0.03% 即被视为显著,而 WHALE 达到 0.113%。
2. 方法详解
每个 WHALE 层包含 Wukong 模块、HSTU 模块和注意力融合模块。Wukong 接收用户、物料、上下文与交叉字段,产生高阶 interaction representation;HSTU 对长行为序列建模,产生逐位置的 behavior representation。融合时,Wukong 表征经线性投影成为 query,HSTU 表征成为 key/value,点积注意力让当前候选—上下文交互主动检索历史中最相关的细粒度行为证据。注意力输出再经过 fusion MLP 与 SwiGLU FFN,回注到下一层,因此第 ℓ 层的交叉特征会影响后续序列证据选择,而不是只在顶部进行一次信息混合。作者以 2、4、6、8 层,64、128、256、512 宽度,以及 3k、6k、10k、15k 序列长度分别做 scaling,证明三个方向在测试范围内均持续带来 NE 改善。
系统侧针对注意力中的不规则长度和高吞吐矩阵运算编写 Triton kernel,并沿 query 维切分反向计算,减少中间张量与同步。SwiGLU 原本上投影、门控投影和下投影需要三次主要矩阵乘;WHALE 共享门控相关投影,将其从三次降到两次,即减少 33%。密集主干与 FFN 使用 BF16,损失与任务头等数值敏感部分保留 FP32;再用 torch.compile/TorchInductor 做算子融合、内存规划与图级优化。训练使用 NVIDIA B200、全局 batch 与优化器配置在各基线间保持一致,每个模型训练一轮。论文没有给出优化器名称、确切 batch size 或 B200 数量,这些并非摘要遗漏,而是正文也未披露的复现边界。
3. 核心技术贡献
第一,WHALE 提出逐层 progressive fusion:Wukong 的候选交互表征不是被动拼接,而是作为 query 重复检索 HSTU 的长历史,使静态高阶交叉与动态行为证据形成闭环。第二,论文证明“统一两个 scaling 轴”比只扩大一个轴更有效;在 8、14、32 GFLOPs 三档,WHALE 的 NE 增益分别为 0.40%、0.83%、1.39%,而匹配复杂度的 HSTU 仅为 0%、0.04%、0.06%。第三,模型—系统协同把研究结构变成可上线系统:定制内核、共享门控、混合精度和编译优化共同使训练吞吐提升 30%,并把额外 serving 成本压到 5% QPS。第四,消融把收益定位到具体结构:浅层混合相对完整 WHALE 回退 0.25% NE,平均池化替代注意力回退 0.23%,移除 fusion MLP 和 SwiGLU 分别回退 0.11% 和 0.08%,说明候选条件检索与融合后的非线性变换都不可省略。
4. 实验结果分析
离线指标是 normalized entropy(NE),越低越好;平台上 0.05% NE 改善即视为明显收益。关键比较如下:
| 配置/指标 | 基线或对照 | WHALE 结果 | 变化 |
|---|---|---|---|
| 8 GFLOPs NE gain | Wukong 0.00% / HSTU 0.00% | 0.40% | 明显超过阈值 |
| 14 GFLOPs NE gain | Wukong 0.54% / HSTU 0.04% | 0.83% | 统一结构更优 |
| 32 GFLOPs NE gain | Wukong 0.73% / HSTU 0.06% | 1.39% | 随规模差距扩大 |
| 14 天线上主指标 | 线上基线 | +0.113% | 阈值 0.03% |
| 线上辅助指标 1/2 | 线上基线 | +0.824% / +1.820% | 同向支持 |
| 推理 QPS | 线上基线 | -5% | 预算内回退 |
序列长度从 3k 增至 6k、10k、15k 时 NE 分别改善 0.32%、0.65%、0.95%;深度从 2 层增至 4、6、8 层时改善 0.12%、0.21%、0.28%;宽度从 64 增至 128、256、512 时改善 0.18%、0.31%、0.40%。三条曲线均未在测试上限前饱和,支持架构能实际吸收更多历史与容量。线上 A/B 持续 14 天,候选生成、延迟约束和服务栈与对照一致;主指标 0.113% 虽绝对值小,却是内部显著阈值的 3.77 倍。代价是 QPS 降低 5%,论文认为仍在预算内。需要注意,主指标和两个辅助指标被匿名化,读者无法判断它们对应点击、时长、互动还是留存,也无法分析业务权衡。
5. 局限与未来方向
论文没有专门的局限章节。作者明确给出的实验范围是单一大型短视频社交平台、单一主 engagement 预测任务和受匿名化约束的线上指标;因此跨电商、搜索或长内容场景的外推尚未验证。正文未披露数据字段、正负样本比例、优化器、batch size、硬件规模及线上流量比例,外部复现只能重建结构,不能复刻训练经济性。Scaling 曲线在 15k 序列、8 层、512 宽度处仍上升,但这不等于继续扩大一定划算,因为 FLOPs 从序列基线的 9 增至 38、宽度实验最高达 141 GFLOPs。论文也没有比较更简单的 late-fusion 加蒸馏、缓存或多阶段路由在相同 QPS 下的收益。未来应报告质量—延迟—成本 Pareto 曲线,公开至少一个可复现实验配置,并研究对新用户、稀疏历史和分布漂移的分组效果。
6. 工业实践意义
对于 UGC 搜索/推荐,WHALE 最直接的启示是让“当前 query/候选/场景交叉”成为读取长行为历史的查询,而不是对所有历史先做固定池化。可以从低风险版本开始:保留现有 DCN/Wukong 类精排分支和序列 Transformer,只增加一到两层候选条件 cross-attention,离线比较 nDCG、CTR 校准与 NE,再逐步增加层数和历史长度。系统侧应同步建立 FLOPs、显存、训练 QPS、推理 QPS、P99 延迟五维预算;若仅复制模型结构而忽视定制 kernel,5% QPS 回退可能被放大到不可上线。共享门控、BF16/FP32 分区及编译图融合属于相对通用的优化,可先于完整模型落地。还应复现四个消融:浅融合、平均池化、去 MLP、去 SwiGLU,以确认本业务的收益究竟来自候选条件检索还是单纯增参。对于搜索场景,query 表征还可与候选帖子交叉后共同查询用户历史,从而把“这个用户过去喜欢什么”收紧为“这个用户在当前 query 下的哪些历史行为最有证据价值”。