← Back to list
OneRank

OneRank: Unified Transformer-Native Ranking Architecture for Multi-Task Recommendation

判别式推荐 Shopee
Abstract 8 Reading 8 Rating —
2026-06-15
Jiakai Tang, Sunhao Dai, Kun Wang, Zhiluohan Guo, Yu Zhao, Cong Fu, Kangle Wu, Yabo Ni, Anxiang Zeng, Xu Chen, Jun Xu
Renmin University of China, Shopee, Nanyang Technological University
提出 OneRank,把多任务推理内化进 Transformer 栈以消除编码器-预测器分离:任务 token 互不可见实现早期特化、候选感知上下文化弥合训练-服务 gap、带策略性梯度解耦的跨任务注意力做受控知识迁移、动态匹配打分替代静态 MLP head,在 Shopee 线上取得 GMV/UU +1.01%。
评分原因
摘要评分:判别式排序 scaling 主线,提出 Transformer-native 多任务排序架构,消除编码器-预测器分离、引入任务私有前向/反向通道与梯度解耦缓解跷跷板,并有大规模工业离线+线上实验,方法与落地兼具。
精读评分:方法新颖(把多任务推理内化进 Transformer、用梯度解耦把跨任务注意力变只读记忆、动态匹配打分替代 MLP head),消融/scaling/A-B 系统完整且为端到端无两阶段瓶颈的可扩展设计;但仅自有 Shopee 数据无公开复现、模型规模偏小(2 层/4.9M)。
transformer multi-task search-ranking industrial

OneRank:把多任务排序「内生」进 Transformer 的统一原生架构

来自 中国人民大学高瓴人工智能学院 + Shopee + 南洋理工大学(Jiakai Tang、Sunhao Dai 共同一作,Xu Chen、Jun Xu 为通讯作者),KDD 2026,2026-06-15 挂 arXiv(2606.16838v1,cs.IR)。核心主张:现代工业排序已从 DNN 转向 Transformer 以增强序列建模与 scaling 能力,但仍沿用「编码器–预测器」(encoder–predictor,记作 $\mathcal{F}$–$\mathcal{G}$)分离的范式——Transformer 只当一个任务无关(task-agnostic)的编码器 $\mathbf{Z}=\mathcal{F}(\mathbf{X})$,下游再用一堆静态前馈 MLP 任务塔 $\mathcal{G}(\cdot)$ 出预测。本文论证这一分离带来三重结构性瓶颈:(1) 共享表示 $\mathbf{Z}$ 形成任务无关信息瓶颈,任务特异信号被纠缠丢失;(2) 共享底座诱发跷跷板现象(seesaw)——梯度冲突使优化一个任务损害另一个;(3) 把 $\mathcal{F}$ 里「注意力驱动、上下文自适应」的表征学习,硬交给 $\mathcal{G}$ 里「静态前馈」的预测,造成数据流与计算范式的不兼容断裂。OneRank 直接消除 $\mathcal{F}$–$\mathcal{G}$ 切分,把多任务推理内化进 Transformer 栈本身:前向上自底向上搭「任务私有通道 + 任务共享通路」(任务 token 互不可见实现早期特化、候选感知上下文化弥合训练–服务 gap、可配置跨任务关系注意力做受控知识迁移),后向上用策略性梯度解耦(gradient detachment)阻断跨任务梯度、把跨任务注意力变成「只读记忆」,预测时用动态匹配打分取代静态 MLP scorer。在 Shopee 大规模工业数据上离线全面超越 SOTA,线上 7 天 A/B 拿到 GMV/UU +1.01%、Paid GMV/UU +1.17%。

研究动机与背景

多任务学习(Multi-Task Learning, MTL)已是现代推荐系统的事实标准——联合建模「稠密但含噪」(如点击)与「稀疏但信息量大」(如下单)的多种用户反馈,能让任务之间互补学习。早期的深度学习推荐模型(DLRM)主要用两种方式利用任务依赖:

  • 显式依赖建模(explicit dependency modeling):通过结构化知识迁移,如 ESMM、ESCM²、AITM、ResFlow;
  • 隐式知识共享(implicit knowledge sharing):通过动态路由与专家平衡机制,如 MMoE、PLE。

受大模型进展启发,近年工作转向 Transformer-centric 架构以利用其强序列建模与良好 scaling 行为。但本文指出,这一转型并未构成真正的架构变革:现有方法大多仍保留编码器–预测器设计,可形式化为 $\mathbf{Z}=\mathcal{F}(\mathbf{X})$,其中 $\mathcal{F}(\cdot)$ 把原始输入 $\mathbf{X}$ 映射到共享、任务无关的表示 $\mathbf{Z}$,再由任务特定预测器 $\mathcal{G}(\cdot)$ 在 $\mathbf{Z}$ 上运算。这一范式有三个根本局限:

  • 第一,任务无关信息瓶颈。 共享表示 $\mathbf{Z}=\mathcal{F}(\mathbf{X})$ 是任务无关的,任务特异信号在其中被纠缠、丧失辨识度。把 $\mathcal{F}(\cdot)$ 换成 Transformer 只是增大编码容量,并不改变这个结构性约束——下游预测器 $\mathcal{G}(\cdot)$ 仍缺乏显式机制把任务特异信息从混合 embedding 里解纠缠。这迫使复杂的解纠缠发生在「建模容量通常受限」的预测阶段。
  • 第二,跷跷板现象。 共享底座架构容易出现 seesaw——共享参数上的梯度冲突会「改善一个任务却恶化另一个」。根因是任务无关瓶颈 $\mathbf{Z}$ 缺乏显式机制去分离「反传经过 $\mathcal{F}$ 的各任务优化方向」。
  • 第三,数据流与设计范式断裂。 编码器–预测器分离强行造成一次数据流与设计范式的切换:上下文自适应的学习在 $\mathcal{F}(\cdot)$ 里完成,却被交给静态前馈任务预测器 $\mathcal{G}(\cdot)$。具体说,Transformer 通过注意力做迭代的、上下文相关的信息路由,而 DNN 预测器寻求一个全局非线性决策边界、适应动态用户上下文的能力有限。这种范式错配破坏了端到端任务推理与连贯的计算 scaling。

为此本文提出 OneRank,一个 Transformer-native 多任务排序框架,通过把多任务推理内化进 Transformer 栈本身来消除编码器–预测器切分。设计哲学是自底向上地在「任务共享通路」旁边搭建「任务私有通道」,在多个架构层级上同时实现任务特化与有益的知识共享:

  • 前向传播:输入层用「带互不可见性的任务特定 token 注入」做早期特化;中间层用「候选感知上下文化」聚合跨候选信号、弥合训练–服务 gap;预测层用「受控跨任务关系注意力」在有益时选择性迁移领域特定的任务依赖。
  • 后向传播:用策略性梯度解耦阻断跨任务梯度流,把任务特定参数的更新与共享组件隔离,有效地把跨任务注意力变成一块用于知识迁移的「只读记忆」,防止负迁移。
  • 预测时:用动态匹配打分公式取代静态全局 MLP scorer——任务感知的全局表示直接与「上下文条件化的候选 embedding」做内积匹配,实现上下文感知、任务自适应的排序,且不引入额外架构组件。

Figure 1:(a) 传统编码器–预测器范式 vs (b) OneRank 框架的架构对比。左侧 (a):Raw Feature X → Encoder F(X) → 任务无关共享表示 Z → 三个任务特定预测器分别出 Task-A/B/C。右侧 (b):Transformer-native 统一架构内部自底向上完成 Task-Specific Encoding(Raw Feature + Task Tokens)→ Candidate-aware Contextualization + Task-aware 表示 Z_A/Z_B/Z_C → Dynamic Multi-Task Scoring,全程在 Transformer 栈内完成任务特化、动态上下文感知排序与受控跨任务知识迁移,无架构切换。

核心方法 / 模型架构

OneRank 把方法组织为:结构化 tokenization(§2.1)把异质输入编成统一 token 序列;任务特定编码(§2.2)用「带互不可见性的任务 token 注入」实现早期特化、缓解梯度冲突;候选感知上下文化(§2.3)聚合跨候选信号弥合训练–服务 gap;多任务预测(§2.4)用「灵活跨任务关系注意力 + 策略性梯度解耦 + 可配置 mask」做受控知识迁移;最后是联合优化目标(§2.5)。

Figure 2:OneRank 整体架构。输入经结构化 tokenization 组织成统一 token 序列,含交互历史(IH)、偏好锚定(PA)、候选–任务 token 组。带互不可见性的任务 token 注入实现早期特化;候选感知上下文化经情境描述符聚合跨候选信号;灵活跨任务关系注意力做受控知识迁移。右侧展示「跨任务注意力梯度解耦机制」(前向蓝色箭头允许跨任务传递、后向绿色箭头仅保留对角线、阻断 off-diagonal)与四种「跨任务 mask 策略」(Parallel / Null / Cascade / Hybrid)。OneRank 采用基于匹配的动态打分实现上下文感知的个性化排序。

2.1 结构化 Tokenization

把多样输入模态转换为统一 token 序列表示,使序列模式与特征交互能被有效联合建模。

交互历史(Interaction History, IH)。 把用户行为序列按时间组织为 $\mathcal{H}=\{h_1,h_2,\dots,h_T\}$,$h_t$ 是时间戳 $t$ 的交互。为捕捉时序动态与偏好演化,对每次交互加可学习位置编码 $\mathbf{p}_t\in\mathbb{R}^d$:$\mathbf{e}_t^{\text{IH}}=\text{Embed}(h_t)+\mathbf{p}_t$,得到 $\mathcal{S}_{\text{IH}}=[\mathbf{e}_1^{\text{IH}},\dots,\mathbf{e}_T^{\text{IH}}]$。

偏好锚定(Preference Anchoring, PA)。 受大模型里检索增强生成(RAG)启发,用外部知识增强交互历史。引入偏好锚(Preference Anchors)$\mathcal{A}=\{\mathcal{A}_1,\dots,\mathcal{A}_M\}$,依领域知识动态选择多条序列:个性化搜索里检索与当前 query 相关的「top 点击 / top 购买」序列;推荐里选历史高互动序列作为互补信号。每条序列用可学习边界 token 封装:

$$\mathcal{S}_{\text{PA}}=\bigoplus_{i=1}^{M}\big(\langle\text{BOS}\rangle\oplus\mathcal{A}_i\oplus\langle\text{EOS}\rangle\big)\tag{1}$$

其中 $\oplus$ 是拼接,$M$ 是检索序列数,$\langle\text{BOS}\rangle/\langle\text{EOS}\rangle$ 是可学习的起止 token。

候选–任务 token 组(Candidate-Task Token Groups)。 对候选集 $\mathcal{C}=\{c_1,\dots,c_N\}$ 中每个候选 $c_i$,构造一个 token 组,含候选 embedding $\mathbf{e}_i^C\in\mathbb{R}^d$ 与 $K$ 个任务特定 token。任务 token $\{\mathbf{t}_k\}_{k=1}^K$ 是跨所有候选共享的可学习参数,每个 $\mathbf{t}_k\in\mathbb{R}^d$ 充当任务 $k$ 的「任务特定 query 模板」。对每个 $c_i$ 实例化这组共享任务 token,形成候选–任务组:

$$\mathcal{G}_i=[\mathbf{e}_i^C,\mathbf{t}_1,\mathbf{t}_2,\dots,\mathbf{t}_K]\in\mathbb{R}^{(1+K)\times d}\tag{2}$$

任务 token 跨组共享,但每组在编码时经结构化注意力 mask 独立运作,允许任务 token 通过注意力对不同候选 embedding 与共享用户上下文,抽取出候选特定的任务表示。

统一 token 序列。 最终输入把共享用户上下文置于所有候选–任务组之前:

$$\mathcal{X}_0=[\mathcal{S}_{\text{IH}},\mathcal{S}_{\text{PA}},\mathcal{G}_1,\mathcal{G}_2,\dots,\mathcal{G}_N]\in\mathbb{R}^{S\times d}\tag{3}$$

其中总长 $S=T+\sum_{i=1}^M(|\mathcal{A}_i|+2)+N\cdot(1+K)$。这种组织天然把「任务共享通路(用户上下文)」与「任务私有通道(任务 token)」分开,利于高效注意力计算与并行。

2.2 任务特定编码(Task-Specific Encoding)

为在输入层就实现早期任务特化、缓解共享底座的 seesaw,OneRank 不依赖「对所有任务共用一个 $\mathbf{Z}=\mathcal{F}(\mathbf{X})$」,而是把共享的任务特定 token 模板注入每个候选组,经结构化注意力机制实现独立的任务特定特征抽取。

结构化注意力 mask。 构造 $\mathbf{M}\in\{0,1\}^{S\times S}$,在保持「共享用户上下文可见」的同时,强制任务 token 之间互不可见:

  • 因果用户上下文:$\mathcal{S}_{\text{IH}}$ 和 $\mathcal{S}_{\text{PA}}$ 内的 token 遵循因果注意力(只看自身与前序位置)做时序建模;
  • 候选组隔离:每个组 $\mathcal{G}_i$ 与其它组 $\mathcal{G}_j(j\neq i)$ 互相隔离,实现「单用户多候选」的高效并行。$\mathcal{G}_i$ 内 token 可注意:用户上下文里所有 token(因果 mask)、同组内的候选 embedding $\mathbf{e}_i^C$、自身(self-attention);
  • 任务 token 互不可见:不同任务的 token 即使在同一候选组内也互相不可见。组 $\mathcal{G}_i$ 里第 $k$ 个任务 token 只能注意用户上下文(因果)、候选 embedding $\mathbf{e}_i^C$、和它自己,看不到同组其它任务 token。

形式化,记 $\text{pos}(p)$ 为 token $p$ 在用户上下文里的序列位置,$\mathbf{t}_k^{(i)}$ 为组 $\mathcal{G}_i$ 里第 $k$ 个任务 token,则 mask 为:

$$\mathbf{M}_{pq}=\begin{cases}1, & \text{若 } p,q\in\{\mathcal{S}_{\text{IH}},\mathcal{S}_{\text{PA}}\}\text{ 且 }\text{pos}(q)\le\text{pos}(p)\\ 1, & \text{若 } p\in\mathcal{G}_i\text{ 且 }q\in\{\mathcal{S}_{\text{IH}},\mathcal{S}_{\text{PA}}\}\\ 1, & \text{若 } p\in\mathcal{G}_i\text{ 且 }q=\mathbf{e}_i^C\\ 1, & \text{若 } p=\mathbf{t}_k^{(i)}\text{ 且 }q=\mathbf{t}_k^{(i)}\\ 0, & \text{其它}\end{cases}\tag{4}$$

Transformer 编码。 用 $L$ 层带 mask 的多头自注意力(MHSA),配残差与 LayerNorm(pre-norm 风格):

$$\mathbf{H}^{(\ell)}=\text{LN}\big(\text{MHSA}^{(\ell)}(\mathcal{X}^{(\ell-1)},\mathbf{M})\big)+\mathcal{X}^{(\ell-1)},\qquad \mathcal{X}^{(\ell)}=\text{LN}\big(\text{FFN}^{(\ell)}(\mathbf{H}^{(\ell)})\big)+\mathbf{H}^{(\ell)}\tag{5}$$

$\ell\in\{1,\dots,L\}$。编码后,从每个候选组里选出对应任务 token 的输出,作为任务特定表示:

$$\mathbf{r}_k^i=\text{Extract}(\mathcal{X}^{(L)},\mathbf{t}_k^{(i)})\in\mathbb{R}^d\tag{6}$$

$\mathbf{r}_k^i$ 编码了候选 $i$ 在任务 $k$ 下的任务相关特征。尽管所有候选组共用同一套任务 token 参数 $\{\mathbf{t}_k\}_{k=1}^K$,每个任务 token 因注意不同候选 embedding $\mathbf{e}_i^C$、并整合共享用户上下文里的候选特定信号,会产出不同的 $\mathbf{r}_k^i$,从而在最早阶段达成任务特化。

2.3 候选感知上下文化(Candidate-Aware Contextualization)

传统 point-wise 打分有训练–服务 gap:模型在孤立样本上训练,却无法捕捉服务时存在的跨候选依赖。OneRank 用候选感知上下文化经「情境描述符」聚合跨候选信号来弥合。

情境描述符(Situational Descriptors, SD)。 定义 $\mathbf{s}\in\mathbb{R}^d$ 封装上下文信号——用户人口属性、query 信息、会话元数据(如时间、地点),作为聚合的上下文锚点。

任务特定的跨候选聚合。 对每个任务 $k$,用任务特定投影 $f_k(\cdot)$ 变换 SD:

$$\mathbf{q}_k=\text{LN}\big(f_k(\mathbf{s})\big)\in\mathbb{R}^d\tag{7}$$

$f_k(\cdot)$ 是各任务独立参数的可学习投影。再用任务特定的多头交叉注意力(MHCA)聚合候选感知全局信息:

$$\mathbf{h}_k=\text{MHCA}_k\big(\mathbf{q}_k,\{\mathbf{r}_k^i\}_{i=1}^N,\{\mathbf{r}_k^i\}_{i=1}^N\big)\in\mathbb{R}^d\tag{8}$$

$\text{MHCA}_k$ 带任务 $k$ 专属参数,$\mathbf{h}_k$ 是对整个候选集聚合得到的任务级全局表示。这种设计用独立参数集显式解耦各任务的信息流——每个任务有自己的聚合通路,同时仍捕捉跨候选的竞争动态。

2.4 多任务预测(Multi-Task Prediction)

为在尊重领域特定依赖的前提下做受控跨任务知识迁移,OneRank 设计「带策略性梯度解耦的灵活跨任务关系注意力」,而非固定的任务塔结构。

带策略性梯度解耦的跨任务注意力。 把候选感知上下文化得到的任务表示 $\{\mathbf{h}_k\}_{k=1}^K$ 组织起来,施加带可配置跨任务 mask $\mathbf{A}\in\{0,1\}^{K\times K}$ 的多头自注意力:

$$\hat{\mathbf{h}}_k=\text{MHSA}\big(\mathbf{h}_k,\{\mathbf{h}_j\}_{j:A_{kj}=1}\big)\tag{9}$$

任务 $k$ 只注意 $A_{kj}=1$ 的任务 $j$。

为「允许前向知识迁移、阻止后向梯度干扰」,采用策略性梯度解耦:定制跨任务注意力的反向算子,使其只允许对角线梯度流、阻断所有 off-diagonal 梯度。反传时计算任务 $k$ 的梯度,对被注意的任务 $j\neq k$ 设 $\partial\mathcal{L}/\partial\mathbf{h}_j=0$。这保证优化任务 $k$ 不会反过来损害其它任务的学习——既保留有益的前向信息迁移,又消除任务间梯度冲突,把跨任务注意力变成知识迁移的「只读记忆」。再接残差与 LN:

$$\hat{\mathbf{h}}_k=\text{LN}\big(\text{FFN}(\hat{\mathbf{h}}_k)\big)+\hat{\mathbf{h}}_k\tag{10}$$

动态匹配打分。 经一个带残差的前馈网络精化表示:

$$\mathbf{z}_k=\text{LN}\big(\text{FFN}(\hat{\mathbf{h}}_k)\big)+\hat{\mathbf{h}}_k\in\mathbb{R}^d\tag{11}$$

不同于「无视上下文、施加固定变换」的静态 MLP 打分,OneRank 用内积相似度计算任务–候选相关性:

$$s_k^i=\mathbf{z}_k^\top\mathbf{r}_k^i\tag{12}$$

$\mathbf{z}_k$(经受控跨任务交互富化)捕捉任务感知的全局上下文,$\mathbf{r}_k^i$(来自任务特定编码)捕捉上下文条件化的候选 embedding。这种 Transformer-native 匹配公式能动态适应会话上下文——同一用户–物品对在不同会话(如上午 vs 晚上浏览、搜索 vs 浏览模式)可拿到不同分数,实现真正的个性化排序。

灵活的跨任务 mask 策略。 跨任务 mask $\mathbf{A}$ 可依领域知识灵活配置:

  • Parallel Masking:$A_{kj}=\mathbb{I}[k=j]$,任务间互不可见,每个任务只靠自己的全局表示,无跨任务信息流。适合探索性场景或数据充裕时的独立建模。
  • Null Masking:$A_{kj}=1,\forall k,j$,所有任务互相注意,模型经双向注意力自主学习任务相关性。适合任务依赖的领域知识有限时。
  • Cascade Masking:$A_{kj}=\mathbb{I}[j\le k]$,单向信息流,沿「稠密到稀疏」的依赖级联(rich-to-sparse cascade),让稀疏下游任务利用上游信号。如电商里 click → cart → purchase 的自然递进,purchase 受益于 click 与 cart 信号。
  • Hybrid Masking:自定义 mask 编码部分可见或混合模式。如短视频里 like/follow/comment/forward 间行为关系缺乏清晰因果,可让 engagement 类任务(like、comment)双向注意,同时保持「从充裕的 click 信号单向流向稀疏的 follow 动作」。

2.5 联合学习目标

由动态匹配(§2.4)得到相关性分 $s_k^i=\mathbf{z}_k^\top\mathbf{r}_k^i$,采用「list-wise + point-wise」的混合学习策略。判别式排序用 InfoNCE 对比损失:

$$\mathcal{L}_k^{\text{list}}=-\sum_{i\in I_k^+}\log\frac{\exp(s_k^i/\tau)}{\sum_{j=1}^N\exp(s_k^j/\tau)}\tag{13}$$

$I_k^+$ 是正样本,$\tau$ 是温度,$N$ 是候选集大小。工业系统的校准概率估计用二元交叉熵(BCE):

$$\mathcal{L}_k^{\text{point}}=-\sum_{i=1}^N\big[y_k^i\log\sigma(s_k^i)+(1-y_k^i)\log(1-\sigma(s_k^i))\big]\tag{14}$$

$y_k^i\in\{0,1\}$ 是真值标签,$\sigma(\cdot)$ 是 sigmoid。跨所有任务的联合目标:

$$\mathcal{L}=\sum_{k=1}^K\big(\alpha\mathcal{L}_k^{\text{list}}+\beta\mathcal{L}_k^{\text{point}}\big)\tag{15}$$

$\alpha,\beta$ 平衡 list-wise 与 point-wise 优化(实验中 $\alpha=\beta=1$ 最优)。

设计原理讨论(三大核心原则)

论文用一整节论证统一框架相对传统 $\mathcal{F}$–$\mathcal{G}$ 解耦的根本优势,围绕三条原则:

1. 经上下文感知动态排序弥合训练–服务 gap。 传统 point-wise 学习优化孤立的「用户–物品对」分数,与「服务时模型必须对整组候选排序」的环境根本不匹配。OneRank 经 SD 驱动的全局信息建模(§2.3)跨整个候选集做交叉注意力聚合,使模型能捕捉相对偏好而非绝对分数;全局表示 $\mathbf{z}_k$ 编码了候选池的分布属性,让排序能依竞争上下文自适应调整。配合动态打分公式 $s_k^i=\mathbf{z}_k^\top\mathbf{r}_k^i$(共享几何空间里 $\{\mathbf{z}_k\}$ 与 $\{\mathbf{r}_k^i\}$ 联合优化语义对齐),相比架构隔离的 MLP 塔有更好的梯度流与更有效的多任务学习。

2. 经解耦优化缓解 seesaw。 三层解耦策略:(i) 输入层任务特定参数——注入带任务隔离 mask 的任务 token,在最早期就分配专属参数,使各任务在特征抽取时互不干扰梯度流;(ii) 中间层信息流解耦——全局建模阶段(§2.3)对 SD 投影 $f_k(\mathbf{s})$ 与跨候选聚合 $\text{MHCA}_k$ 都用任务特定参数,即使共享 SD 输入,每个任务也走自己的参数空间;(iii) 预测层梯度解耦——最终解码阶段(§2.4)的梯度解耦机制让任务 $k$ 在前向受益于其它任务(知识迁移),同时阻止其梯度反流向其它任务(优化隔离),实现「前向共享、后向隔离」的非对称信息迁移。

3. 经统一架构提升灵活性与效率。 可配置跨任务 mask 提供 ESMM 固定级联、MMoE 独立塔所不具备的灵活性——practitioner 可用简单 mask 设计编码领域知识(电商漏斗的严格级联、模糊 engagement 的双向注意、复杂旅程的混合配置),无需架构搜索或任务特定模型变体。消除 $\mathcal{F}$–$\mathcal{G}$ 切换后实现单一 Transformer 内的端到端优化,避免异质模块切换的计算开销;single-stage 多候选编码减少训练时冗余上下文编码,用户特定组件(IH、PA)的 KV-caching 使在线只需计算候选与任务 token,低延迟、高 GPU 利用,解锁 Transformer 全部 scaling 潜力。

实验设置

数据集。 Shopee(东南亚与拉美领先电商)大规模专有数据集,2025 年 12 月连续 30 天用户交互日志,覆盖 click(C)、add-to-cart(A)、order(O) 三类反馈。统计如下:

#User #Item #Query #Impression #Click #Add-to-Cart #Order
33M 118M 105M 26.6B 1.05B 251M 40M

报告 click 的 AUC/GAUC(C-AUC/C-GAUC)、add-to-cart 的 A-AUC/A-GAUC、order 的 O-AUC/O-GAUC。从 #Click→#Add-to-Cart→#Order 的数量级递减(1.05B→251M→40M)正是典型的「稠密到稀疏」漏斗,凸显多任务 seesaw 的现实压力。

对比设计。 为解耦「编码器架构」与「MTL 策略」的影响,把二者正交组合。编码器:

  • DNN(RecSys'16):Shopee 充分优化的生产基线,传统 DLRM 风格;
  • MTGR(CIKM'25):美团的工业级生成式推荐框架,Transformer 序列建模;
  • OneTrans(WWW'26):字节的统一 Transformer 架构(特征交互 + 序列建模),代表 Transformer 排序的 SOTA。

MTL 策略:noMTL(独立单任务,量化 MTL 收益的基线)、NSE(Naive Shared Embedding,共享 embedding 表的最简参数共享)、MMoE(KDD'18)、PLE(RecSys'20)、DCMT(ICDE'23,因果反事实去偏)、ResFlow(KDD'24,残差式跨任务信息流)。

实现细节。 OneRank 用 2 层 Transformer 编码器(pre-norm,每层 4 个注意力头);隐藏维 256,FFN 为隐藏维 2 倍;最大序列长 256;可学习位置编码;SD 经线性投影到 256。实例化 3 个任务 token(click、add-to-cart、order)+ 3 个排序 head token;多任务预测用「一层任务特定自注意力 + 一层带可配置 mask 的跨任务注意力」,均配 FFN 做非线性变换。InfoNCE 温度 $\tau$ 初始 0.2,list 与 point 损失等权($\alpha=\beta=1$),所有任务均匀权重。

主要实验结果

Table 1:不同编码器 × MTL 策略下的离线对比(含 Params 与 FLOPs)。 加粗为最优。

Encoder Predictor Params FLOPs C-AUC C-GAUC A-AUC A-GAUC O-AUC O-GAUC
DNN noMTL 9.5M 226.7M 0.7638 0.7664 0.8193 0.7813 0.8824 0.8128
DNN NSE 6.7M 161.5M 0.7667 0.7693 0.8242 0.7863 0.8859 0.8181
DNN MMoE 8.5M 235.1M 0.7682 0.7723 0.8246 0.7893 0.8881 0.8223
DNN PLE 9.2M 220.6M 0.7688 0.7721 0.8277 0.7906 0.8872 0.8198
DNN DCMT 9.6M 302.3M 0.7642 0.7669 0.8203 0.7817 0.8828 0.8125
DNN ResFlow 9.5M 226.7M 0.7649 0.7688 0.8252 0.7886 0.8886 0.8204
MTGR NSE 2.3M 487.0M 0.7720 0.7732 0.8304 0.7910 0.8924 0.8240
MTGR MMoE 2.3M 487.0M 0.7718 0.7737 0.8304 0.7915 0.8914 0.8237
MTGR PLE 2.7M 496.0M 0.7723 0.7737 0.8318 0.7930 0.8933 0.8260
MTGR DCMT 2.8M 497.7M 0.7208 0.7282 0.7888 0.7583 0.8629 0.7986
MTGR ResFlow 2.7M 500.1M 0.7703 0.7717 0.8294 0.7901 0.8919 0.8253
OneTrans NSE 6.3M 823.2M 0.7773 0.7772 0.8359 0.7961 0.8991 0.8280
OneTrans MMoE 6.1M 822.7M 0.7768 0.7765 0.8364 0.7934 0.8973 0.8241
OneTrans PLE 6.4M 823.5M 0.7770 0.7775 0.8371 0.7982 0.8996 0.8336
OneTrans DCMT 6.4M 823.4M 0.7574 0.7596 0.8141 0.7746 0.8869 0.8149
OneTrans ResFlow 6.3M 823.2M 0.7764 0.7766 0.8372 0.7975 0.8987 0.8287
OneRank (Ours) 4.9M 1.0G 0.7910 0.7843 0.8463 0.8036 0.9024 0.8350

三个关键观察:

  1. MTL 在传统 DNN 编码器下一致有益。 相比 noMTL 基线,所有 MTL 方法在 C/A/O 三任务上都有明显提升,证实联合建模稠密与稀疏反馈提供了互补监督,MTL 是工业推荐的必要组件。
  2. 更强的编码器进一步放大 MTL 收益。 把 DNN 换成 MTGR、OneTrans 等 Transformer 架构,在大多数 MTL 策略下带来额外提升,凸显表达力强的序列与上下文建模的重要性。但 DCMT 在 Transformer 编码器下表现很差(如 MTGR+DCMT 的 C-AUC 仅 0.7208,OneTrans+DCMT 仅 0.7574),可能因其去偏导向的设计在高容量模型上过度校正稀疏任务、加剧任务失衡、导致优化不稳定。
  3. OneRank 以统一框架取得最优。 在所有指标与任务上一致超越所有「编码器 × 策略」组合(如 C-AUC 0.7910 vs 最强基线 OneTrans+NSE 的 0.7773;O-AUC 0.9024 vs OneTrans+PLE 的 0.8996),且参数更紧凑(4.9M,少于多数基线)、计算仅适度增加(1.0G FLOPs)。这验证了核心主张:统一的 Transformer-native 排序范式比「外部编码器–预测器分离」更适合大规模多任务推荐。

消融与分析

消融研究(Figure 3)。 逐项移除/替换关键组件:V1 去掉任务特定 token、直接在候选 encoding 上加线性投影;V2 把 $K$ 个任务 token 换成单个共享 token;V3 在 V2 上再去掉跨任务关系注意力;V4 去掉策略性梯度解耦;V5 把 SD 换成随机初始化参数;V6 用完整双向注意力(无选择性 mask)。

Figure 3:消融研究。V1–V6 各变体在 C/A/O 的 AUC 与 GAUC 上相对 Full 模型的对比,确认每个组件的承重性。

逐项分析:

  1. V1(去任务特定 token)显著退化——A-AUC 从 0.8463 掉到 0.8424、O-GAUC 从 0.8350 掉到 0.8337,验证早期任务特化的必要性;
  2. V2(单共享 token)不如完整模型——确认独立任务 token 对缓解梯度冲突至关重要;
  3. V3(去跨任务注意力)相对 V2 结果有好有坏——说明跨任务知识迁移在「配合恰当任务隔离」时才有益;
  4. V4(去梯度解耦)整体表现强但在 add-to-cart 上不稳(A-AUC 0.8460 vs 0.8463),证明策略性梯度控制的必要性;
  5. V5(随机 SD)严重退化——C-AUC 掉到 0.7872、O-GAUC 掉到 0.8318,确认候选感知上下文化对弥合训练–服务 gap 至关重要;
  6. V6(完整双向 mask)在所有任务上一致不如受控 mask 策略

总体表明所有组件的协同对优越的多任务排序不可或缺。

Scaling 分析(Figure 4)。 研究两个基本 scaling 维度——编码器层数(深度,1→6 层)与隐藏维(宽度,128→512),其余不变,报告相对最小配置的绝对提升 ΔAUC/ΔGAUC。

Figure 4:OneRank 关于编码器深度与隐藏维的 scaling 性能分析。左列为 Scaling Depth(深度),右列为 Scaling Width(宽度),上下分别为 ΔAUC 与 ΔGAUC 在 C/A/O 三任务上的曲线。

  • 深度 scaling:随层数增加,所有反馈信号上一致提升;浅到中等深度时增益最明显,更大深度逐渐饱和(边际递减),说明更深的 Transformer 栈增强了对复杂序列模式与任务交互的建模能力,且统一架构在深度增加时保持优化稳定。
  • 宽度 scaling:增大模型宽度一致提升性能,曲线比深度更平滑、增益更均匀,尤其利好 click 相关指标,反映更丰富表征容量对细粒度用户–物品交互建模的价值;且在增大容量时无严重任务失衡或优化不稳定,支持其工业大规模部署的可 scaling 性。

在线 A/B(Table 3)。 Shopee 主个性化排序场景,7 天周期(2026-01-08 至 01-14),10% 流量给 OneRank、10% 给基线(一个「充分优化的 Transformer 编码器 + 多任务预测器」的现网方案,全部部署在标准多阶段排序流水线、用打分融合平衡体验与商业目标)。

GMV/UU↑ Paid GMV/UU↑ AR/UU↑ Bad Query Rate↓
+1.01% +1.17% +0.81% −2.29%

OneRank 在商业指标(GMV/UU +1.01%、Paid GMV/UU +1.17%、广告收入 AR/UU +0.81%)与用户体验指标(Bad Query Rate −2.29%)上同时正向——既提升变现效率,也改善推荐相关性与用户体验,验证统一 Transformer-native 设计的工业可部署性。在线部署用如下打分融合(附录 B):

$$s=a\cdot p_{\text{ctr}}\cdot p_{\text{cvr}}\cdot\text{price}+b\cdot p_{\text{ctr}}\cdot\text{ecpm}+c\cdot p_{\text{ctr}}\cdot\text{relevance}\tag{16}$$

第一项优化 GMV,第二项算广告收入,第三项强化搜索相关与用户意图对齐;$a,b,c$ 调参平衡体验与商业目标。在线推理时每个请求最多 4096 个候选,划分为 8×512 组并行打分,每组独立做候选感知注意力——在保持上下文感知 list 建模的同时高效 scale 到大候选池。

参数敏感性。 Table 4 研究 InfoNCE:BCE 损失权重比:

InfoNCE : BCE C-AUC C-GAUC A-AUC A-GAUC O-AUC O-GAUC
1 : 2 0.7851 0.7795 0.8384 0.7975 0.8938 0.8292
1 : 1 0.7910 0.7843 0.8463 0.8036 0.9024 0.8350
2 : 1 0.7881 0.7826 0.8440 0.8023 0.9006 0.8350

等权(1:1)最优:BCE 过重(1:2)限制了捕捉候选间相对排序信号的能力,InfoNCE 过重(2:1)虽改善排序但牺牲 point-wise 校准——list-wise 判别与 point-wise 校准在 OneRank 里互补,需平衡。

Figure 5:关于温度 τ 的性能分析。C/A/O 的 AUC 与 GAUC 随 τ(0.05→2)的变化趋势。

温度敏感性(Figure 5):性能随 τ 从大值下降而提升、在 0.2 附近达峰、过小又略降——τ 过大过度平滑相似度分布、弱化候选间判别监督,τ 过小锐化分布、放大噪声与 hard negative,0.2 兼顾判别强度与训练稳定,故设 τ=0.2。

核心贡献总结

  1. 识别并形式化了 Transformer-based MTL 推荐里编码器–预测器分离的三重结构性局限(任务无关信息瓶颈、seesaw 梯度冲突、数据流/计算范式断裂);
  2. 提出 OneRank——把多任务推理内化进 Transformer-native 设计的统一框架,自底向上支持任务特化、带上下文化的任务级全局表示、受控跨任务交互与稳定优化;
  3. 用 Transformer-native 匹配公式取代静态 MLP 预测 head,在一致的表示空间里实现上下文感知、任务自适应排序;
  4. 大规模工业离线 + 线上 A/B 全面验证在效果与效率上均超越 SOTA。

与已归档相关工作的对比

OneRanker OneRanker:用一个模型统一生成与排序(Tencent, 2026-03-03)

关系:独立并发(本文未引用 OneRanker,两者殊途同归)· 已加载对方精读

  • 共同关注的问题:两者都在攻击「多任务目标在共享表示空间里互相妥协(seesaw / optimization tension)」这一 root cause。OneRanker 称之为「兴趣覆盖 vs 商业价值的错位」,OneRank 称之为「任务无关瓶颈诱发的跷跷板」。两者也都不满足于「先编码再用独立 head 出预测」的解耦设计,主张把任务推理内生进统一的 Transformer/Decoder 栈。
  • 相近的技术骨架:惊人地同构——都用可学习的任务 token 序列注入 Transformer,沿业务漏斗顺序(OneRank: click→cart→order;OneRanker: impression→click→conversion→value)排列,并用因果 / cascade mask 让后续任务访问前序任务表示;都坚持「共享底层用户表示以迁移知识、但用独立输出空间解耦任务」的同一条原则。OneRank 的 Cascade Masking($A_{kj}=\mathbb{I}[j\le k]$)与 OneRanker 的「Task Ordering Prior + Causal Mask」是同一招的两种实现。
  • 本文的差异与推进:OneRank 是判别式排序(InfoNCE+BCE,动态内积匹配打分 $s_k^i=\mathbf{z}_k^\top\mathbf{r}_k^i$ 取代 MLP scorer),消除编码器–预测器分离;OneRanker 是生成式(基于 HSTU 的自回归 MTP 生成层次化 Semantic ID,价值感知地融合 eCPM、面向广告)。OneRank 的 mask 是可配置四态(parallel/null/cascade/hybrid)且独创策略性梯度解耦(前向迁移、后向 off-diagonal 清零),把跨任务注意力变成「只读记忆」;OneRanker 用因果 mask + Distribution Consistency Loss 保证双侧一致性,并引入 fake item token 做粗粒度目标感知——后者是 OneRank 没有的「目标感知」维度,而 OneRank 的梯度解耦是 OneRanker 没有的「后向隔离」机制。
  • 可比的方法 / 实验差异:两者都强调「target/context-aware 动态表示」对抗静态表示,但 OneRank 用候选感知上下文化(SD + MHCA 聚合整组候选)显式弥合训练–服务 gap,OneRanker 用 fake item token(物品空间 K-means 聚类中心)做隐式目标感知。OneRank 在 Shopee 电商 C/A/O 三任务排序验证,OneRanker 在 Weixin Channels 广告全量部署、聚焦 eCPM 价值对齐。

DUET DUET:为站外转化设计的双用户嵌入 Transformer(Meta, 2026-06-08)

关系:独立并发(本文未引用 DUET,两者殊途同归)· 已加载对方精读

  • 共同关注的问题:两者都直指「稠密信号主导、淹没稀疏任务」这一 root cause。DUET 称之为「signal dominance under regime mismatch」——单一无差别编码器被稠密点击信号主导、欠拟合稀疏的站外转化;OneRank 则把它归为共享底座的 seesaw(#Click 1.05B vs #Order 40M 的数量级落差正是这种主导)。两者都认为「对统计性质根本不同的任务套同一套表征」是负迁移的元凶。
  • 相近的技术骨架:都用任务/域特定的注意力通道来防止稠密任务压垮稀疏任务,而非共享一个表征。DUET 为点击流、转化流各预训练一个「架构与统计特性匹配」的专用 Transformer(稠密流用多层自注意力 ClickAUN、稀疏流用交错交叉/自注意力 ConvAUN),OneRank 则用任务特定 token(互不可见 mask)+ 任务特定 $f_k(\cdot)$/$\text{MHCA}_k$ 为每个任务开独立参数通路。两者都在「为不同任务分配专属表征管线」这点上抽象重合。
  • 本文的差异与推进:根本的架构哲学相反——DUET 强化了上游/下游的分离(离线预训练两个冻结的互补嵌入 ClickAUE/ConvAUE,异步喂给下游 ranker,以满足 serving 延迟预算),而 OneRank 的整个论点是消除编码器–预测器分离、端到端内化进单一 Transformer。可以说两者对「同一个负迁移问题」给出了「分离 vs 统一」的对立解。此外 OneRank 在单模型内显式做受控跨任务迁移(梯度解耦的只读记忆),DUET 的跨任务交互发生在下游 ranker 联合消费两个嵌入时、上游编码器之间无直接交互。
  • 可比的方法 / 实验差异:DUET 还引入「无归因转化合成数据」缓解稀疏、用事件触发推理(ETI)异步 serving,离线相对最强 baseline 取得至多 0.38% NE 下降、线上 CVR 持续正向(任务聚焦站外转化 OCVR);OneRank 覆盖 click/cart/order 三任务全链路排序,线上 GMV/UU +1.01%。DUET 的「为每条流匹配不同归纳偏置」与 OneRank 消融里「单共享 token(V2)不如独立任务 token」殊途同归地印证了同一结论:异质任务需要异质表征通路。

讨论与局限性

核心贡献与借鉴价值。 OneRank 最值得借鉴的是「把 MTL 的解耦从预测层一路前移到输入层」的设计思路:传统 MMoE/PLE 在共享底座之上靠门控/专家分离,本质仍是「先混合再分离」;OneRank 用任务 token + 互不可见 mask 在特征抽取的最早期就分配任务私有通道,从源头避免任务无关瓶颈。其「前向共享、后向隔离」的策略性梯度解耦是一个简洁而通用的 seesaw 缓解器——把跨任务注意力当「只读记忆」,理论上可移植到任何多任务 Transformer。可配置四态 mask(parallel/null/cascade/hybrid)把领域知识(电商漏斗、短视频 engagement 关系)编码成简单的二值矩阵,比 ESMM 固定级联、MMoE 独立塔灵活得多,且省去架构搜索。动态内积匹配打分取代 MLP scorer,使排序在统一几何空间里上下文自适应,是「Transformer-native」主张的关键落点。

局限与争议。 1. 仅在自有专有数据集验证。 所有离线实验都在 Shopee 私有数据上,无公开数据集复现,外部可比性与可复现性受限; 2. scaling 规模仍偏小。 论文 OneRank 主配置仅 2 层、4.9M 参数、1.0G FLOPs,scaling 实验也只到 6 层 /512 维,相比同期动辄 1B–15B 的工业 Transformer 排序模型(如 RankMixer、TokenMixer-Large),其「解锁 Transformer 全部 scaling 潜力」的主张尚未在真正大模型尺度上检验; 3. 候选感知上下文化的服务成本。 在线把候选分成 8×512 组并行打分,跨候选注意力随候选数增长带来额外计算;虽有 KV-caching 优化用户侧,候选侧的 list 级聚合在超大候选池下的延迟仍需关注; 4. 梯度解耦的「一刀切」。 off-diagonal 梯度全部清零是个强假设——某些任务对之间的后向耦合或许是有益的(如强相关 engagement 任务),论文未探讨「部分梯度解耦」或自适应解耦强度; 5. 任务数与 mask 设计依赖人工先验。 cascade/hybrid mask 仍需领域专家设计漏斗顺序,任务数增多时 mask 设计空间组合爆炸,缺乏自动化 mask 学习的讨论。

工业落地价值。 论文的部署细节相对完整:KV-caching 用户特定组件、8×512 候选分组并行打分、打分融合公式(式 16)平衡 GMV/广告收入/相关性,7 天线上 A/B 同时拿到商业(GMV/UU +1.01%)与体验(Bad Query Rate −2.29%)双正向,且参数比多数基线更紧凑(4.9M),说明其「统一架构降冗余」的效率主张在生产环境成立,对同类电商多任务排序系统有直接参考意义。