标题:# Zenith:面向十亿规模直播推荐的排序模型扩展
单位:字节
链接:Zenith: Scaling up Ranking Models for Billion-scale Livestreaming Recommendation(2026.01)
摘要
准确捕捉特征交互对推荐系统至关重要,近期趋势表明,扩大模型容量可能是进一步提升预测性能的关键驱动力。以往工作探索了多种模型架构来捕捉不同粒度的特征交互,但对如何高效处理特征、如何在不引入过高推理延迟的情况下扩大模型容量,关注仍相对较少。
本文提出 Zenith,一种可扩展且高效的排序架构,能够以很小的运行时开销学习复杂的特征交互。Zenith 通过词元融合(Token Fusion)和词元增强(Token Boost)模块处理少量高维主词元(Prime Token)。得益于更强的词元异质性,与其他最先进的排序方法相比,Zenith 展现出更优的缩放定律。
我们将该架构部署到 TikTok Live,以验证其在真实场景中的有效性。TikTok Live 是全球领先的在线直播平台,吸引了数十亿用户。A/B 测试表明,Zenith 在线 CTR AUC 提升 ,LogLoss 降低 ,用户人均高质量观看会话数提升 ,用户人均高质量观看时长提升 。
关键词: 排序;缩放定律;特征交互;推荐系统。
1 引言
推荐系统在现代在线平台中发挥着至关重要的作用,帮助用户发现相关内容、商品或服务。特征交互已被认为是推荐模型中的关键机制。近年来,深度学习成为建模此类交互的强大范式。深度神经网络通过学习用户、物品和其他上下文信息的层次化非线性表征,能够捕捉复杂的特征交互和高阶相关性。
随着超大规模用户行为数据集日益普及,以及缩放定律在大语言模型中得到验证,近期研究也开始关注推荐模型的扩展。一些工作致力于扩展稀疏特征嵌入,另一些工作则侧重于增强嵌入之上的稠密模型组件或序列建模层。
尽管已经取得上述进展,随着模型规模增大,基于深度学习的推荐系统仍面临若干关键挑战。
首先,Transformer 等许多神经网络架构最初是为自然语言处理等任务设计的。它们在原生领域中很高效,却没有针对推荐场景的独特特征进行直接优化,尤其不适合处理规模不断扩大、类型愈发多样,并且需要在词元级别谨慎处理的稀疏特征嵌入。Hiformer 已经表明,原始注意力机制对于排序模型的表达能力不足,但仍需进一步研究以获得更深入的认识。
其次,大多数现有工作没有提供灵活的扩展设计,只能增加层数或层内隐藏单元数量。这种暴力扩展方法通常会带来边际收益递减,也会增加模型适配不同特征集合和框架时的部署难度。
第三,真实的大规模在线推荐系统需要同时处理数百万次请求,并将延迟维持在毫秒级。对于传统模型而言,要保留复杂架构带来的收益,同时避免难以承受的计算成本,十分困难。
为应对这些挑战,我们提出 Zenith(Optimized Efficient Neural Interaction with Tokenwise Handling),这是一种在不牺牲在线性能的前提下增强模型表达能力的新型排序模型架构。Zenith 的核心思想是,将少量高维特征词元作为基本处理单元。
具体而言,初始嵌入层将输入的稀疏特征分别投影为嵌入,再把同一类别中的特征嵌入,例如用户人口统计特征和用户历史交互序列,组合成更高维的主词元。与原始特征数量相比,这会显著减少词元数量。为了处理这些主词元,我们设计了两个专用组件:词元融合模块和词元增强模块。
词元融合模块通过建模输入词元之间的两两交互,发挥类似交叉网络的作用;词元增强模块则独立处理每个词元,保留并细化其自身语义。本文后续将说明,独立处理每个主词元对于在交互层之间维持词元异质性、获得更好的扩展潜力至关重要,同时还能显著降低计算开销。
我们在服务全球数十亿用户的 TikTok Live 推荐平台上进行离线和在线评估,证明 Zenith 在不同模型规模下均优于其他最先进的排序架构。
本文的主要贡献如下:
- 提出 Zenith,一种采用主词元设计和逐词元处理的新型排序模型架构。我们分析了词元异质性对扩展排序模型的重要性,并展示了本文设计如何细致地强化这一关键性质。
- 分别为 Zenith 的词元融合与词元增强模块提出两类有效设计。对于词元融合,我们提出重词元化自注意力(Retokenized Self-Attention,RSA)和逐词元多头自注意力(Tokenwise Multi-Head Self-Attention,TMHSA);对于词元增强,我们提出逐词元 SwiGLU(Tokenwise SwiGLU,TSwiGLU)和逐词元稀疏专家混合(Tokenwise Sparse Mixture of Experts,TSMoE)。与最先进的排序架构相比,这些设计在模型参数和计算量两个维度上均表现出更优的缩放定律。
- 基于 TikTok Live 推荐平台中数十亿条真实用户交互数据,进行离线评估与在线 A/B 测试。与基线相比,新架构使离线 AUC 提升 、LogLoss 降低 ,在线 A/B 测试中的用户人均高质量观看会话数提升 、用户人均高质量观看时长提升 ,充分证明了它在工业生产环境中的强大实用效果。
2 相关工作
推荐系统中的特征交互
推荐系统通常依赖来自多个领域的丰富特征输入,建模这些特征之间的交互是实现准确预测的关键。早期系统通常使用人工设计的交叉特征显式捕捉这类交互。因子分解机(Factorization Machine,FM)随后成为建模两两特征交互的经典方法,但它缺乏建模高阶关系的能力。
随着深度神经网络出现,研究人员发现 DNN 可以隐式建模高阶特征交互,由此催生了显式建模与隐式建模相结合的混合方法。Deep & Wide 将线性组件与 DNN 相结合,DeepFM 和 DLRM 则将 FM 融入深度架构。xDeepFM、DCN 等模型引入增强的交叉网络,用于捕捉高阶显式交互。
基于注意力的特征交互架构
随着注意力机制在多个领域取得成功,基于注意力的模型也逐渐被用于特征交互建模。AutoInt 使用多头自注意力层,InterHAt、ACN 等模型则在此基础上进行面向特定任务的增强。通过将输入特征转换成统一词元,可以有效应用注意力层。
然而,注意力机制最初是为自然语言设计的,其中的词元相对独立且语义清晰。相比之下,推荐系统中的特征词元通常依赖上下文,语义也彼此纠缠。Hiformer 通过引入异质注意力层来弥补这一差距,但仍有若干开放问题尚待解决,例如如何缓解深层网络中的词元同质化,以及如何实现词元之间的显式信息交换。
排序模型中的缩放定律
大语言模型的研究发现表明,扩大模型规模可以显著改善性能。这一趋势在大规模排序模型中同样得到观察。Wukong 通过实验证实,缩放定律也适用于推荐模型。
扩大嵌入规模和增加隐藏层维度是直接的扩展方法,而 DLRM 和 DHEN 等工作表明,在计算资源约束下堆叠不同架构模块同样可以带来性能收益。专家混合(Mixture of Experts,MoE)框架最初用于多任务学习,现已在多个领域证明有效。MoE 通过引入多个专家子网络来提高模型容量,但推理期间只激活其中一部分。这种称为稀疏 MoE 的稀疏激活策略,可以在将模型扩展到数十亿参数的同时保持高效训练与推理,因此很适合用于扩展具有严格推理延迟要求的大型排序模型。
尽管已有这些进展,人们仍缺乏对不同扩展策略有效性的系统分析,尤其缺乏对模块化堆叠与 MoE 架构组合的研究。Wukong 虽然探索了固定 FLOPs 或参数预算下模型深度与隐藏维度的影响,但主要关注增加层数或宽度等直接扩展方式,没有考虑不同词元交互策略、基于 MoE 的稀疏激活等更先进的组合。
生成式推荐系统
另一条研究路线聚焦于生成式推荐系统。传统推荐系统预测用户与物品之间的交互分数,生成式推荐系统则根据用户行为序列直接生成未来物品。尽管近期取得了进展,生成式推荐系统仍不太可能完全取代传统方法。实践中,生成建模过程使其在训练效率和推理延迟方面面临重大挑战。此外,传统推荐模型可以充当奖励模型来指导生成,与生成式推荐系统形成互补。因此,生成式推荐属于一条平行的研究方向,不在本文讨论范围之内。
3 方法
3.1 设计概述
如图 1 所示,本文提出的排序模型架构 Zenith 由一个词元化层和其后堆叠的神经网络层组成。词元化层同时处理稀疏类别特征和稠密特征,将其投影为一组紧凑的高维表征,本文称之为主词元。随后,每个神经网络层对这些主词元进行处理,并包含两个核心组件:词元融合(Token Fusion,TF)模块和词元增强(Token Boost,TB)模块。
图 1:Zenith 架构的High-level结构。Zenith 采用堆叠层,每一层都包含一个token融合模块和一个token增强模块。这些模块的具体实现见图 2。
词元融合模块负责捕捉特征交互,发挥类似传统特征交叉的作用。但它不同于因子分解机或交叉网络等显式方法,而是专门针对主词元设计。该模块同时执行显式的词元间交叉和隐式的词元内特征融合,使模型能在训练中有选择地关注最相关的交互。
接下来,词元增强模块对各个词元分别执行变换,以增强词元异质性并提高模型整体表达能力。第 4.3 节将说明,维持词元异质性是高效增加模型深度的关键。传统全连接前馈网络往往会使词元表征随网络加深而逐渐同质化,本文提出的逐词元模块则鼓励每个词元专门表征不同信息,从而在各层之间保持异质性。
以下小节首先介绍特征的主词元化,再介绍词元融合与词元增强模块。这些模块可以采用不同的架构实现。我们分别为每个组件介绍两种有效设计,它们共同构成 Zenith 和 Zenith++ 两个版本。Zenith++ 在较大模型规模下具有更优的可扩展性和性能;Zenith 实现更简单,超参数调优需求更少,同时仍能优于现有基线。最后,我们还会讨论实践中使用的其他训练与推理优化方法。
3.2 特征的主词元化
既有工作已经证明了特征词元化的有效性。在直播推荐场景中,我们发现,与为每个输入特征使用一个或多个词元相比,使用更少、维度更高的主词元效果更好。
因此,在进行标准特征分桶和嵌入查找后,我们使用多层感知机将特征嵌入映射到全局词元空间。语义相似的特征,例如用户人口统计特征,会先拼接,再映射为单个主词元。只有用户 ID、序列特征等重要特征才会分别映射成独立词元。因此, 个输入特征会被映射为 个词元,其中 。
传统方法依赖显式特征交互,词元融合模块则会在训练期间自动学习如何筛选和聚合相关词元交互。因此,相比经常需要为所有特征对计算显式交互的传统模型,这一方法显著减少了资源消耗。同时,我们也能够使用更复杂的逐词元方法,加深对每个主词元的理解。
具体词元化策略如下:
- 为 ID 特征分配独立词元。 用户 ID、物品 ID 等 ID 类特征的嵌入对大多数交互对都至关重要,因此应当拥有显式的独立词元表征。
- 词元应保留完整的特征嵌入。 单个特征嵌入不应被拆分到多个词元中。保持特征嵌入的完整性,对有效进行词元融合十分重要。
- 其余词元应根据语义分组,并保持信息负载均衡。 对于非 ID 特征,我们对嵌入进行分组,使每个词元包含数量相近且语义相似的特征嵌入,从而保证信息在不同词元之间均衡分布。
3.3 词元融合
词元融合模块的功能与传统特征交互机制类似,主要区别在于,本文设计中的每个主词元都可能聚合来自多个特征的信息。图 2(a)展示了 Zenith 使用的词元融合设计,以及 Zenith++ 采用的增强版本。
重词元化自注意力(RSA)
Zenith 使用重词元化自注意力网络。该网络由一个自注意力模块和随后的重词元化组件组成,用于促进词元交互,如图 2(a)左侧所示。自注意力机制在传统 FM 结构上增加值组件和可学习权重矩阵,使模型能够关注输入的不同部分。
由于采用主词元设计,每个词元可能编码多个仍需进一步交互的特征。为此,我们引入重词元化模块,让主词元交换信息,使原本嵌入同一词元中的特征能够相互融合,并在下一自注意力层继续交互。
输入主词元构成矩阵 ,其中 是词元数量, 是词元维度。自注意力交互计算如下:
随后,将 展平并重新词元化为 ,满足 。重词元化不需要额外计算,却能够增加每个词元所包含的上下文信息,并使同一个主词元内的特征发生交叉。
由于 输出 个词元,我们使用 MLP 将原始输入 加到 上,以构建残差网络。最终输出 为:
逐词元多头自注意力(TMHSA)
在 Zenith++ 中,我们将融合自注意力网络升级为逐词元多头自注意力,以执行词元融合。TMHSA 为每个主词元分配不同的查询、键和值投影矩阵,显著增强模型表达能力,并使模型可以容纳更多参数。传统注意力机制在词元之间共享投影权重;逐词元注意力则为每个词元引入独立投影,因此能在不显著增加计算成本的情况下实现更丰富的交互。
由于 TMHSA 已经具备足够容量,使主词元充分交互和交换信息,因此 Zenith++ 不再使用重词元化模块。
具体而言,将第 个词元记为 ,多头注意力层的输出计算为:
其中:
这里, 是注意力头数, 是每个注意力头的维度。投影权重 均为词元特定且注意力头特定的参数。经过残差连接后,词元增强模块的输入为:
3.4 词元增强
词元增强模块对于提高模型表达能力和增强词元异质性起着关键作用。第 4.3 节将说明,词元异质性是高效扩展的关键。主词元设计让每个词元都能捕捉丰富且多样的信息,使其实际上类似于专家混合网络中的一组专业专家。作为配套设计,词元增强模块以逐词元参数化为核心,即每个词元都有自己的词元增强网络。
逐词元 SwiGLU(TSwiGLU)
Zenith 版本的词元增强使用逐词元 SwiGLU,如图 2(b)左侧所示:
其中:
,, 表示逐元素的 Hadamard 积。这种逐元素乘法与 DCN-V2 网络类似,能够提高乘法交互的阶数,因此我们选择 SwiGLU 作为前馈神经网络的骨干。
Zenith 的 只包含 个词元,因此我们对 应用一个轻量 MLP,重新生成剩余的 个词元。Zenith 的最终输出为:
逐词元稀疏专家混合(TSMoE)
为进一步提高模型的扩展效率,Zenith++ 使用逐词元稀疏专家混合替换标准前馈神经网络,其灵感来自标准稀疏专家混合。如图 2(b)右侧所示,该模块包含两类专家:始终参与计算的共享专家,以及根据词元特定路由决策有选择地激活的稀疏专家。这种设计能够在不增加计算开销的情况下显著提高模型容量。
令 表示共享专家数量, 表示稀疏专家总数, 表示每个词元激活的稀疏专家数量。对于每个词元 ,门控机制按下式决定激活哪些专家:
其中, 是词元 特定的路由权重矩阵。 中排名前 的元素决定被激活专家的索引。
词元 经过 MoE 增强的 FFN 后,输出为:
其中, 和 分别表示第 个共享专家和第 个被激活的稀疏专家。每个专家都使用与 Zenith 相同的 TSwiGLU 函数实现。每个词元经过稀疏 MoE 后,得到词元增强的输出 。
最后,模块输出经过残差连接和层归一化:
图 2:Zenith 与 Zenith++ 的Token Fusion和Token Boost模块设计。(a)Zenith 使用重token化自注意力,Zenith++ 使用逐token多头自注意力。为了补偿 Zenith 重token化后输出token数量的减少,我们使用辅助 MLP 从输入token生成额外token。(b)Zenith 使用逐token SwiGLU,Zenith++ 使用逐token稀疏专家混合。右侧展示 Zenith++ 处理单个token的流程,其中 3 个稀疏专家会激活 2 个。
3.5 训练与推理优化
Zenith 依赖融合词元表征和逐词元计算。逐词元操作虽然提高了建模灵活性,却也会增加矩阵乘法总数,降低现代加速器的吞吐量。引入稀疏 MoE 层还会带来两个问题:一是专家激活不均衡,即少数专家承接了大部分流量;二是只将计算路由到被选中专家会产生额外开销。我们采用以下互补策略解决这些问题。
高效逐词元计算
如果每个词元分别触发一次独立矩阵乘法,就会产生大量内核启动开销。为了消除这项开销,我们采用 NVIDIA cuBLAS 库提供的 GroupedGEMM 原语。GroupedGEMM 将 次逐词元 GEMM 操作打包为一次批处理调用,可以显著提高 GPU 利用率和逐词元设计的端到端吞吐量。
学习率预热
训练早期,稀疏 MoE 路由器倾向于将大多数词元仅路由到一两个专家,使其他专家无法获得梯度信号。我们通过延长学习率预热来对抗这种坍缩:训练从基础学习率的 开始,在前 100 万步中线性增加到标称值。由此形成的低梯度阶段,使随机初始化的路由器有时间探索多样化路由模式。此后,专家负载会变得均衡,每个专家都能获得足够的训练数据。
辅助损失
为了进一步鼓励专家之间的负载均衡,我们引入两个辅助损失项。第一项是负载均衡损失,它会惩罚路由器输出概率与实际路由到各专家的词元数量之间的不一致:
其中:
是实际路由到专家 的词元比例,而
是分配给专家 的平均路由概率。
为了进一步防止专家坍缩,即某个专家支配路由决策,我们使用第二个损失项 -loss,抑制路由器产生过大的 Logit:
其中, 表示位置 上路由器为专家 产生的 Softmax 前输出。
4 评估
我们在不同模型规模下,将 Zenith 和 Zenith++ 与其他常用架构进行比较。为证明本文方法的实际效果,所有模型都部署在 TikTok Live 推荐平台上。
4.1 评估设置
4.1.1 数据集
我们使用 TikTok Live 推荐平台排序阶段的生产数据集进行训练和评估。该数据集以流式方式包含真实用户与物品交互数据,其统计信息见表 1。
表 1:数据集统计信息。
4.1.2 指标
我们采用多项指标,综合评估各模型的计算成本和预测性能。
模型规模。 使用以下指标衡量模型大小与计算开销:
- 参数量: 模型中的参数总数,包括所有层的可训练权重。实验中的稀疏嵌入表由所有模型共享,因此不参与比较。
- GFLOP: 单次推理所需的浮点运算总数,以十亿次为单位。尤其在并非所有参数都会被激活的情况下,该指标可以更准确地衡量计算负载。
模型性能。 针对主要 CTR 目标,报告以下标准性能指标:
- LogLoss: 预测概率相对于真实标签的对数损失。
- AUC: ROC 曲线下面积,衡量模型将正样本排在负样本之前的能力。
- UAUC: 用户平均 AUC,对每位用户的 AUC 分数取平均,以反映个性化排序质量。
所有结果均同时报告原始值及其相对于生产环境基线模型的提升。
4.1.3 基线与超参数
我们选择了若干广泛使用的深度学习推荐模型和近期表现强劲的基线,包括 DCN-V2、DHEN 和 Wukong,并分别调整其超参数以达到所需扩展规模。
- DCN-V2: 通过增加层数扩展模型,并在交叉网络中使用 MLP 替代单个投影矩阵。交叉网络之后使用深度网络进行序列建模。
- DHEN: 结合 DCN-V2 的交叉网络与多头自注意力模块。通过增加 DHEN 层数,以及扩大每个交互模块后所连接的 MLP 来扩展模型。
- Wukong: 通过增加 Wukong 层数,以及增加 FM 块中 MLP 的隐藏单元数量来扩展模型。
对于 Zenith 和 Zenith++,我们将原始特征嵌入分组成 32 个主词元,其中包括 3 个基于 ID 特征的词元、13 个基于序列特征的词元,以及 16 个基于其他具有泛化能力特征的词元。根据模型规模,每个主词元的维度在 256 至 1024 之间,层数在 2 至 8 之间。
4.1.4 训练
所有模型都使用 RMSPropV2 优化器,学习率设为 0.01,动量设为 0.99999,初始化因子设为 0.015625,并采用学习率预热。
4.2 离线结果
图 3 从不同模型规模和计算预算出发,对相对 LogLoss 进行比较分析。我们从两个视角报告结果:一是性能与模型规模的关系,二是性能与推理 FLOPs 的关系。基线是一个包含 2280 万参数的 DCN-V2 模型。
DCN 扩展到 1 亿参数时能够取得中等程度的收益,但继续增加 DCN 层数或扩大其 MLP 并不会带来更多改善。相比之下,Wukong 的可扩展性优于 DCN,但只有在参数量达到 5 亿及以上时才能超过 DCN,而且性能增益仍然有限。Wukong 使用大型 MLP 将交互结果映射回词元,这会产生很高的参数成本并降低参数利用效率,因此只有在超大规模下才体现出优势。
DHEN 将 DCN-V2 的交叉网络与自注意力结合,在各种规模下都稳定优于 DCN 和 Wukong,LogLoss 大约改善 至 。DHEN 也具有良好的可扩展性,但其收益仍然有限,而且混合架构包含异质组件,增加了调优复杂度。
本文提出的 Zenith 在不同规模下均稳定优于所有基线。与 DCN 基线相比,LogLoss 降低 至 。得益于高效设计,包括使用主词元减少输入词元数量,以及通过重词元化轻量地融合词元,Zenith 在取得更好性能的同时尽可能降低训练 FLOPs。与最佳基线 DHEN 相比,在计算量相同的情况下,Zenith 将 LogLoss 改善 至 ,这在真实业务场景中是一项显著收益。此外,Zenith 架构更简单、模块化程度更高,因此在生产环境中更容易进行算子级优化与调优。
Zenith++ 通过引入 TMHSA 和 TSMoE 进一步改善模型性能。这些组件使用稀疏性和逐词元计算,在降低计算成本的同时保持表达能力。因此,Zenith++ 在将整体 FLOPs 控制在合理范围内的同时,性能超过 Zenith。当两者激活的参数数量相近时,Zenith++ 的 LogLoss 平均比 Zenith 低 。值得注意的是,在参数量不超过 5 亿时,Zenith++ 实际使用的 FLOPs 更少。相关曲线还表明,Zenith++ 具有更大的进一步扩展潜力。
图 3:本文架构与基线的模型性能比较。在(a)中,我们还为 Zenith++ 报告了每次推理实际生效的参数量,记为 Zenith++(act),它反映 Tokenwise Sparse MoE 带来的活跃参数减少。所有 LogLoss 均以 DCN-V2 基线模型为参照。
如表 2 所示,Zenith 和 Zenith++ 在所有模型规模下均取得最高的 AUC 和 UAUC。在小规模设置下,Zenith 显著优于 DCN-V2、Wukong 和 DHEN。在中等规模下,Zenith++ 的总参数量为 9.16 亿,但只激活 3.83 亿参数;它相对于 DCN 基线取得 的 UAUC 增益,优于所有其他模型。鉴于其强劲性能和高效计算,我们选择这一版本的 Zenith++ 进行真实在线 A/B 测试。
在大规模设置下,Zenith++ 总参数量为 18.22 亿,激活其中 9.20 亿,取得最佳结果:AUC 提升 ,UAUC 提升 ,使 Zenith++ 成为最先进的架构。总体而言,Zenith 系列模型表现出更强的可扩展性和更高的效率。在所有规模下,Zenith 不仅能降低预测损失,还能在计算量与性能之间取得良好权衡,因此非常适合 TikTok Live 这类真实的大规模推荐系统。
表 2:不同规模下的模型性能。括号内的数值表示相对于 DCN-V2 基线模型的提升。Zenith++ 使用Sparse MoE,因此报告激活参数量与总参数量(count/total)。
4.3 词元异质性
本节强调词元增强模块中逐词元参数化方案的关键优势。正是这种方案使 Zenith 和 Zenith++ 获得了更优的缩放定律。
最初,我们尝试在词元增强模块中使用传统的非逐词元 SwiGLU 和稀疏 MoE,但模型在达到 5000 万参数后出现明显的性能饱和。我们尝试将主词元维度从 512 增加到 768、将词元数量从 8 增加到 16,并将层数从 4 增加到 6。这些操作都使参数总量翻倍,却没有带来任何性能提升。
这些观察促使我们深入分析架构,理解主词元如何在模型中彼此交互。令人惊讶的是,如图 4(a)和图 4(c)所示,我们发现主词元在经过几层特征交互后几乎完全同质化。这说明,继续堆叠交互层已经无法从特征词元中提取额外信息,从而解释了性能饱和现象。
为解决该问题,必须确保主词元在每一交互层后仍保持异质性,携带不同信息以供后续提取。我们将传统 SwiGLU 和稀疏 MoE 模块升级为逐词元参数化,以实现这一点。这为每个主词元提供了捕捉不同信息所需的模型容量,即使经过多层特征交互,词元仍能维持很强的异质性。
如图 4(b)和图 4(d)所示,采用逐词元参数化后,词元增强模块显著降低了平均绝对相似度:Zenith 从 0.5 降至 0.06,Zenith++ 从 0.68 降至 0.47,使两个版本都能继续扩大规模而不会遭遇性能平台期。
图 4:比较 Zenith 的token增强网络使用和不使用 TSwiGLU,以及 Zenith++ 使用和不使用 TSMoE 时的token相似度。相似度定义为token对的绝对余弦相似度,红色越深表示输出越相似;这会损害深层网络的表达能力,并限制模型的扩展能力。为便于展示,我们采样前 10 个token,并使用各模型第三层输出token的平均token相似度。
4.4 消融研究
我们进行消融研究,以评估 Zenith++ 中关键设计选择的影响。如表 3 所示,TSMoE 和 TMHSA 均对模型性能有重要贡献,学习率预热和辅助损失等训练技术也能带来额外收益。这证明每个组件都发挥了积极作用,其中架构设计带来的改善最为显著。
与此同时,使用基于 MLP 的自动分组方法替换主词元化,只会导致 AUC 下降 。这说明,即使没有经过专家调优的特征词元化方案,Zenith 仍然具有很强的鲁棒性。
4.5 在线 A/B 测试结果
为了充分验证所提出架构在真实场景中的有效性,我们在 TikTok Live 上开展了为期一个月的在线 A/B 测试,对比 DCN-V2 基线与 Zenith++ 的 3.83 亿活跃参数、9.16 亿总参数版本。TikTok Live 是领先的在线直播平台,在全球吸引了数十亿用户。
我们报告在线性能指标 AUC 和 LogLoss,以及直播推荐的两组关键业务指标:用户人均高质量观看会话数和用户人均高质量观看时长。高质量观看会话被定义为深度观看会话,例如观看超过一分钟,或者伴随点赞、评论、关注、分享、送礼等正向用户行为的会话。高质量观看时长则定义为用户在其所有高质量观看会话中花费的总时长。
结果见表 4。Zenith++ 在在线 AUC 和 LogLoss 上均显著优于基线,同时使用户人均高质量观看会话数提升 ,用户人均高质量观看时长提升 。这些结果体现了新型排序架构在真实场景中的显著影响。
表 4:关键指标的在线性能增益。
5 结论
本文提出 Zenith,一种专为大规模推荐系统设计的可扩展、高效神经网络架构。通过引入主词元概念,并设计专用的词元融合与词元增强模块,Zenith 有效平衡了模型表达能力和计算效率,与现有方法相比表现出更优的缩放定律。
本文还强调了词元异质性对扩展排序模型的重要性,并在架构设计中给出了增强词元异质性的实用方法。我们希望,这项工作能成为通过个性化推荐优化用户体验的重要一步。
附录 A 复杂度分析
本节对 Zenith 和 Zenith++ 进行形式化复杂度分析。
Zenith
令 为词元数量, 为词元维度, 为中间投影维度, 为 SwiGLU 的隐藏层大小。自注意力交互计算 ,其中 ,因此引入 个参数,计算复杂度为 。
重词元化步骤将 重塑为 ,满足 ,不需要计算或参数。
词元增强模块应用 SwiGLU 激活,权重为 和 ,总计包含 个参数,计算复杂度为 。轻量 MLP 处理剩余的 个词元,增加 个参数,计算复杂度为 。最终输出还包含残差连接和归一化,其成本可以忽略不计。
总体而言,模型包含:
个参数,计算复杂度为:
由于 、 和 通常处于同一数量级,并且 ,可以将 与 视为常数,因此计算复杂度接近 。
Zenith++
在逐词元注意力中, 个词元的每一个都在每个注意力头上拥有独立的投影矩阵,因此参数总数为:
其中 。计算成本由复杂度为 的逐词元投影,以及复杂度为 的注意力计算构成,因此整体复杂度为:
对于稀疏 MoE 层,路由权重引入 个参数,全部 个共享专家和 个稀疏专家共引入:
个参数。每个词元的路由和专家计算需要 次运算,因此总计算量为:
由于 可以视为常数,、 和 也都是常数,而 与 处于同一数量级,因此参数量可简化为 ,计算复杂度同样接近 。