热门搜索:和平精英 原神 街篮2 

您的位置:首页 > > 教程攻略 > ai资讯 >淘宝闪购-爆品团精排Scaling Up迭代实践

淘宝闪购-爆品团精排Scaling Up迭代实践

来源:互联网 更新时间:2026-07-17 13:57

淘宝闪购爆品团排序模型全面升级:从“堆模块”到Token-Based架构

淘宝闪购爆品团排序模型近期完成了一次关键升级,从传统的DLRM架构全面切换到Token-Based的RankMixer架构,实现了模型规模与效果的双重突破。这次升级的核心不是简单增加一个局部模块,而是对模型主干进行了系统性的重构,并围绕新架构对负采样、多任务学习、序列建模等关键环节进行了深入的消融实验。

经过多期迭代,模型规模从85M扩展到107M,再到243M,并在爆品团频道页取得了稳定的线上收益。以下是本次升级的核心结论与详细实践。

一、为什么要重构排序模型

近年来,NLP领域通过Scaling Law确立了“大规模参数 + 稠密计算架构”的技术路线。相比之下,搜推广排序模型中仍有不少系统沿用DLRM类范式:稀疏特征、人工交叉、多个异构模块层层叠加。

爆品团线上旧排序模型也是类似路径。Embedding和Sequence层之后,模型继续串联EPNet、多层PLE、Task Specific Net、Task Bias Net、ResFlow Tower等模块。这里的ResFlow是组内提出的一种多任务交互结构,核心思想是在不同任务Tower的每一层之间传递残差信息,让CTR、Item CTCVR、Shop CTCVR等任务在逐层建模时保持信息流动,而不是只在底层共享或在最后独立预测。

这些模块各自解决过局部问题,但放在一起之后,系统开始呈现几个长期成本:

  • 结构碎片化。

    多个异构模块堆叠,缺少统一计算范式。
  • 计算冗余。

    不同模块之间存在重复的特征交互计算。
  • 维护成本高。

    模块多、联合调优困难。
  • 扩展性差。

    很难只靠增加层数或维度完成Scaling Up。

所以,这次重构的目标不是“继续补模块”,而是把主干换成更适合规模化的统一结构。

二、新架构:把特征组织成Token

新模型保留原有Embedding和Sequence部分,将序列和非序列特征聚合后的表示concat,再切割成指定维度的Token。之后,Token进入多层RankMixer,最后接3个独立任务的Task Tower,也就是MMCN,分别预测CTR、Item CTCVR和Shop CTCVR。

可以把这次升级理解成:从“人工设计多个特征交互模块”,转向“用统一Token主干自动学习高阶组合”。

RankMixer Block主要由两个部分组成:

  • Token Mixer

    负责不同Token之间的信息混合。
  • PerToken FFN

    负责每个Token内部的非线性变换。

下面这张图展开到Block内部:Token Mixer负责跨Token混合,PerToken FFN负责每个Token内部的非线性变换。后续实验也围绕一个问题展开:哪些结构值得作为主线继续放大,哪些只是局部有效,哪些在当前规模下还不适合。

三、结构消融:哪些选择真正有效

结构消融部分按决策顺序展开:数据怎么用,多任务怎么训,Token怎么切,主干怎么放大,Tower怎么接。

3.1 负采样:随机采样不如全量负样本 + Loss 加权

爆品团业务正负样本极度悬殊,尤其是CTCVR目标。初期尝试过随机负采样,负样本采样比例为0.1,但AUC明显下降

最终采用的方案是保留全量负样本,并配合Loss加权,也就是正样本加权、负样本降权,最终AUC提升约0.1%

随机采样的问题在于,它容易丢失与正样本相似的难负样本,影响排序边界学习;同时也会改变训练集正负比例,破坏真实分布,影响概率校准。

Loss加权的优势则是:保留足够多的负样本,让模型继续接触Hard Negatives;同时在不破坏样本分布的前提下,平衡正负样本梯度贡献。

小提示:对于以AUC为核心指标的排序任务,负样本不是简单噪声。与其粗暴采样,不如保留信息,再用Loss权重调节梯度。

3.2 多任务学习:GradNorm收益明确,但训练更贵

爆品团频道页同时优化Shop CTCVR、Item CTR和Item CTCVR。多任务学习的难点不只是“多几个Loss”,而是不同目标的数据密度和收敛速度都不一样。

  • 转化数据稀疏。

    模型学习的是CTCVR,线上再用CTCVR / CTR得到CVR,pCVR没有直接梯度监督,数值稳定性也更敏感。
  • 多任务梯度存在竞争。

    各任务收敛节奏不一致,固定Loss权重很难兼顾所有目标。

我们尝试了ESMM约束和GradNorm。

  • ESMM约束通过PCTCVR = PCTR × PCVR直接学习CVR,带来CTCVR AUC +0.2%,但

    CTR AUC -0.4%

  • GradNorm通过动态调整Loss权重来平衡任务学习速率,CTCVR持平,CTR AUC +0.7%

ESMM的问题是CTCVR梯度会反向传播到CTR Tower,改变CTR特征表示,使CTR学到的特征混入CTCVR目标。

因此,这里最终更偏向GradNorm:它不改变模型结构,主要通过动态权重缓解任务学习节奏不一致的问题。它的收益比较明确,但代价也明确,训练GFLOPs约翻倍

3.3 序列层:轻量改造有效,重替换未必收益

当前模型仍是两段式结构:先做序列建模,再将序列输出合入非序列Token中继续建模。

我们尝试用其他结构替代原MHA和EAT Based Target Attention。

  • HSTU使用QKVU无Softmax的类Transformer结构,AUC -0.44%
  • Gated Attention在MHA和ETA后增加Gated Attention,AUC +0.06%
  • STCA堆叠多层Cross Attention,AUC -0.32%

这组实验说明,序列层不是换得越新越好。在当前实验中,收益最稳的是在原Attention后增加Gated Attention。

3.4 Tokenization:Pad-Split是简单有效的选择

Tokenization决定了特征如何进入RankMixer,也会影响信息损失、参数量和收敛难度。

  • Auto-Split

    是block → allconcat → MLP → split → token,理论上可以学习最优投影,但大矩阵难学,效果最差。
  • Group-wise

    是block → proj → token,每个Token语义更清晰,但存在信息损失和参数冗余。
  • Pad-Split

    是block → allconcat → padding → split → token,优势是零信息损失,也不需要额外投影矩阵。
  • 均衡Group-wise

    会先合并为约10个大block再投影,可以缓解block不均衡,但仍然依赖人工划分。

实验结论很直接:Auto-Split最差,Pad-Split基本持平两类Group-wise,差异在万分位量级。考虑实现复杂度,我们选择Pad-Split做后续迭代。

小提示:Pad-Split能奏效,原因在于RankMixer的核心是Token-Mixing。初始Token的语义边界不是唯一关键,Mixer后续可以继续打乱、重组并学习有效组合。

Token切割粒度也会影响效果。原始allconcat padding后维度为5120,我们比较了32 × 160和16 × 320。结论是适当增大Token Dim、减少Token数量效果更好,AUC +0.14%。这里收益大概率来自PerToken-AFFN参数量和计算量的Scaling Up。

3.5 RankMixer层数:4层收益显著,6层边际下降

RankMixer层数是Scaling Up的重要方式之一。

  • 2层 作为baseline。
  • 4层 AUC +0.21%,收益显著。
  • 6层 AUC +0.12%,仍有收益,但边际收益递减,拉长周期后的收益不显著。

从结果看,4层是当前比较明确的收益点;6层仍有提升,但边际收益已经下降。由于当前使用PostNorm,对过深结构不够友好,因此6层之后没有继续扩层验证。

实验里还有一个有意思的现象:代码实现中曾经无意间丢失了Mixup后的Add & Norm,后续补回后效果反而下降,AUC -0.2%

我们的解释是,Mixup会重组各位置Token的语义,混合后的表示与原位置残差不一定对齐。直接相加可能稀释跨Token混合信号,甚至引入噪声。

3.6 Dense FFN:SwiGLU和AFFN v2更值得保留

PerToken FFN负责Token内部的信息变换,也是RankMixer中最直接影响参数量和计算量的部分之一。这里我们比较了FFN、AFFN、SwiGLU和Soft MoE等方案。

以FFN D→2D作为baseline,核心结论如下:

  • 零成本替换优先看SwiGLU D→4/3D。

    同76M参数、1.70 GFLOPs,AUC +0.07%
  • 有预算时AFFN v2性价比最高。

    额外19M参数、0.34 GFLOPs,AUC +0.13%
  • 单纯扩大容量不如换结构。

    FFN D→4D多13M参数、0.23 GFLOPs,但只带来+0.06%,不如零额外成本的SwiGLU D→4/3D。
  • Soft MoE当前不适合16 Token场景。

    同GFLOPs下全线负收益,AUC约-0.10%到-0.14%

因此,当前Dense方向里,SwiGLU适合作为低成本替换,AFFN v2适合有额外计算预算时使用。

3.7 Sparse MoE:当前配置下没有超过Dense

Sparse MoE我们尝试了多种结构,包括Shared Router + Shared Experts、PerToken Router + Shared Experts、Shared Router + PerToken Experts,以及PerToken Router + PerToken Experts。

但在当前16 Token、专家数量和样本规模设定下,还没有观察到明显Scaling Law,也没有超过Dense AFFN。

最优配置是Shared Router & Experts、E=16、Top2、H=4/3D、aux=0.01,对应77M参数、1.9 GFLOPs,但仍不如线上AFFN,也不如同资源下的SwiGLU D→4/3D。

小提示:Sparse MoE并不是加上就一定涨。对于推荐场景,Token数量、位置语义、专家容量、路由稳定性和样本规模都很关键。当前阶段,Dense仍然是更稳的主线;后续如果Token数量和样本量扩大,可以重新探索Sparse MoE。

3.8 Task Tower输入:Flat比Pooling更适合后续放大

RankMixer Block后,如何把输出送入Task Tower,也做了对比。

我们比较了三种方式:Mean Pooling对Token维度做平均;Task-Specific Attention Pooling为不同任务使用不同Attention Pooling;Flat Concat则保留完整RankMixer输出,让Task Tower自己降维。

最终训练效果是:Mean Pooling < TSAP < Flat

  • Mean Pooling效果较差,是因为最后一层Token之间并不会自然趋同,直接平均会损失信息。
  • Flat的参数量和计算量更高,但保留的信息更完整,也更适合后续做Task Tower Scaling Up。

吞吐量验证里还有一个反直觉结果:TSAP + 小Task Tower的参数量和计算量更小,但RT增加约5ms,吞吐量从100降到80。相比之下,Flat + 大Task Tower更适合GPU计算。这说明FLOPs、参数量和线上RT/吞吐量并不总是强正相关。

3.9 Task Tower:MMCN收益最明显

Task Tower输入为RankMixer Flat后的向量。这里我们对齐层数和降维比例,比较了MLP、ResFlow MLP和字节侧常用的MMCN结构。MMCN虽然没有公开论文,但在业界推荐排序实践中认知度较高,核心是通过多路交叉增强Tower内的特征交互。

  • MLP采用四层逐层降维,作为baseline。
  • ResFlow MLP可以看作对旧ResFlow思路的轻量化复用:在多任务Tower之间做逐层残差传递,让不同任务的中间表示发生交互,AUC +0.07%
  • MMCN使用4-head交叉结构,AUC +0.32%,是这组实验里收益最明显的结构。

MMCN的4-head结构包括:2个head做互相交叉,1个head与原始输入交叉,1个head引入domain信息或自身表示作为交叉项。它在当前RankMixer Flat输入下收益最明显。

继续扩大MMCN维度也能看到Scaling Up现象:

  • 基础配置为[1024, 512, 256, 128]。如果减少层数到[1024, 512, 256],AUC -0.18%
  • 将每层Dim × 2,配置为[2048, 1024, 512, 256],AUC +0.12%
  • 进一步扩到[4096, 2048, 1024, 512],更接近输入维度5120,AUC +0.21%
  • 继续加到5层[4096, 2048, 1024, 512, 256]时,训练出现NaN。

这也呼应了Flat输入的优势:保留完整Token表达后,Task Tower仍有继续扩维的空间。

四、三期实验:从85M到243M

下面先放页面侧核心收益,便于快速建立整体印象。

一期:RankMixer Base,验证新主干

时间:

2026-04-09

配置:

4层RankMixer + 3个独立MMCN,Token为32 × 160。

这一期先验证RankMixer主干是否值得替换旧模型。

离线:

Dense参数量从85M增加到107M,GFLOPs从2.82降到2.2611,CTCVR AUC从0.8540提升到0.8601,约+0.6%

线上爆品团频道页:

  • 页面侧直引导访购率 +0.97%,人均净G +1.14%。
  • 大盘侧人均订单 +0.26%,人均净G +0.30%。

从结果看,模型参数量增加,但计算量下降,离线和线上都有正收益。

二期:吞吐量结构优化 + GradNorm

时间:

2026-05-07

配置:

优化为2层RankMixer,Token调整为16 × 320,并结合GradNorm。

二期重点转向结构效率:在模型规模和推理计算量基本稳定的前提下,调整Token切分,并用GradNorm处理多任务学习节奏问题。

离线:

Dense参数量和推理计算量相对一期基本持平。训练计算量约翻倍,GFLOPs从2.26增加到4.78。吞吐量从80提升到90,约+12%。主目标CTCVR持平,CTR AUC +0.7%

线上爆品团频道页:

  • 页面侧直引导访购率 +0.27%,人均净G +0.51%。
  • 大盘实验分流样本中,人均订单 +0.32%,人均净G +0.36%。
  • 大盘回放样本中,人均订单 +0.04%,人均净G +0.07%。

这一期重点不是单纯放大,而是在吞吐量、训练成本和多任务学习之间重新找平衡。

三期:Scaling Up到243M

时间:

2026-05-21

配置:

RankMixer从2层扩到4层,Task Tower维度扩大,模型规模从107M到243M。

三期回到Scaling Up主线,继续增加RankMixer层数和Task Tower维度。

离线:

Dense参数量从107M增加到243M,GFLOPs从2.26增加到5.1807,吞吐量从90降到60。效果上,CTCVR AUC +0.37%,CTR AUC持平。

线上爆品团频道页:

  • 页面侧直引导访购率 +0.44%,人均净G +0.40%。
  • 大盘实验分流样本中,人均订单 +0.16%,人均净G +0.15%。
  • 大盘回放样本中,人均订单 +0.03%,人均净G -0.00%。

此外,RankMixer 243M也上线到超抢手业务:

  • 离线对比基线,CTCVR AUC +0.66%CTR AUC +1.6%
  • 在线实验中,页面侧直引导访购率 +1.09%,人均净G +1.16%;大盘分流样本中,人均订单 +0.31%,人均净G +0.21%;大盘回放样本中,人均订单 +0.14%,人均净G +0.09%。

这说明RankMixer 243M的收益并不只局限于爆品团单一场景。

五、后续方向

这次实践后,我们对排序模型Scaling Up的理解更清晰了一些:它不是简单堆参数,也不是继续叠局部模块,而是要让模型主干、计算形态和任务Tower都更适合放大。

短期方向:

  • 继续探索更优的PerToken FFN结构。目标是在同FLOPs下获得更高AUC。
  • 探索推理侧优化。例如通过算子融合、量化等方式降低RT。

中长期方向:

  • 继续跟进TokenMixer-Large、UniMixer、TokenFormer等排序模型工作。
  • 沿着Pure Model范式寻找更优结构。重点关注吞吐量和MFU利用率。
  • 在更大规模下重新探索Sparse MoE。当Token数量和样本量扩展后,Sparse MoE的可行性仍值得重新评估。
关于宇宙的好的网名有哪些
关于宇宙的好的网名有哪些

类型:角色扮演

大小:1

语言:简体中文

平台:互联网

游戏下载

热门手游

相关攻略

手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc