SITA: Semantic Interest Tokens for Target-Aware Compression in Long-Sequence Recommendation¶
中国科学技术大学 (USTC) × 快手 (Kuaishou Technology),arXiv 2608.03692v1,2026-08-04。 作者:Rui Zhou, Bo Chen, Qinglin Jia, Jiezhou Ji, Chaoyi Ma, Ruiming Tang, Hao Wang(通讯), Enhong Chen。
研究动机与背景¶
现代互联网平台上用户的历史行为序列持续变长,长序列建模(long-sequence modeling)已成为准确预测用户对候选物品兴趣的关键环节。论文开门见山地把已有工作归纳为两条演化路径,并指出这两条路径之间存在一个结构性的不可兼得。
路径一:检索式方法(retrieval-based),以 SIM、TWIN 为代表。它先从原始长行为序列中高效检索出与 target item 最相关的历史交互,再在这个短得多的子序列上做精细的兴趣建模。由于检索阶段显式地以 target item 为条件,这类方法能捕捉高度 target-specific 的用户兴趣。但代价是:过滤行为序列必然丢弃大量历史交互,模型只能看到"局部兴趣",牺牲了"全局兴趣";而且检索与建模都依赖 target,推理期必须做 target-dependent 计算。后续的 ETA(hash 索引 + 汉明距离)、MIRRN、DARE(检索-建模一致性)、LIC(时间信息)、MUSE(跨域)、RAL-CDNet(多模态)都只是在同一范式内改进检索质量与效率。
路径二:压缩式方法(compression-based),以 C-Former、VISTA 为代表。它先把完整行为序列压缩成一组紧凑、可复用的兴趣表征,再在压缩表征上做下游兴趣建模。由于建模了完整行为历史,并把"序列编码"与"target 交互"解耦,这类方法既能捕捉全局兴趣又能高效在线推理。但在这种设计下,同一用户的所有 target item 共享同一份可复用兴趣表征,学到的用户兴趣天然是 target-agnostic 的。早期的 MIMN、HPMN 用记忆网络压缩,ENCODE、TWIN V2 用聚类,Trinity、CHIME、DMQN 用直方图表征与语义 codebook 提升压缩质量——差异都在"压缩兴趣怎么构造",范式不变。
论文把两条路径的互补性画成 Figure 1。一个自然的想法是:为每个 target item 维护一份专属的压缩用户兴趣(图 1(c) 的 "Ideal target-aware compression"),这样 target-aware 与 global interest 就能兼得。但这不可部署——为每个 user–item 对维护专属压缩兴趣表征需要 $O(|\mathcal{U}||\mathcal{V}|)$ 的存储复杂度,在工业规模(十亿级物品)下代价不可承受。

由此论文提炼出两个基础挑战:
- 保证可部署性(Ensuring Deployability):如何在海量 user–item 规模下实现这种建模范式,而不引入不可承受的存储与维护成本。
- 同时实现目标感知与全局兴趣建模(Achieving Target Awareness and Global Interest Modeling):如何构造既保留全局行为信息、又支持 target-aware 兴趣建模的压缩用户兴趣。
SITA(图 1(d))的回答是:不为每个 item 存专属兴趣,而是把 item 空间压成一个组合式的紧凑语义空间,再让压缩后的兴趣 token 按这个语义空间被"结构化组织",于是 target item 只需用自己的语义 ID 去逐组索引,就能从共享的兴趣 token 集合里"选"出一份 target-specific 的全局兴趣。三个组件分别对应:Balanced Parallel Quantization(BPQ)把 item 空间压成 $N$ 个并行 codebook × $K$ 个码字的语义空间,把存储复杂度从 $O(|\mathcal{U}||\mathcal{V}|)$ 降到 $O(M|\mathcal{U}|)$($M = NK$);Structured Interest Compression(SIC)把完整行为序列压成 $N \times K$ 个语义组织化的兴趣 token;SID-Guided Selection(SGS)在推理期按 target 的语义标识符选出对应兴趣 token。
论文的三条贡献自述为:(1) 重新审视已有长序列建模范式,系统分析 target-aware 与 global interest 之间的根本折中,提出全新的 target-aware compression 范式;(2) 提出 SITA,用语义编码把原始 item 空间转成紧凑语义空间以支持部署,用带组级兴趣建模的压缩块学习语义组织化的兴趣 token;(3) 在公开数据集与大规模工业推荐系统上验证有效性、效率与可部署性。
问题形式化(Preliminary)¶
设 $\mathcal{U}$、$\mathcal{V}$ 分别为用户集与物品集。用户 $u \in \mathcal{U}$ 的历史行为序列记为 $\mathcal{S}_u = [v_1, v_2, \ldots, v_L]$,$v_i \in \mathcal{V}$,$L$ 为序列长度。
给定 target item $v_t \in \mathcal{V}$、用户画像特征 $\mathbf{x}_u$ 与上下文特征 $\mathbf{x}_c$,一个理想的长序列建模模块应当学到目标感知的全局用户兴趣:
$$\mathbf{h}_{u,t} = f(\mathcal{S}_u, v_t, \mathbf{x}_u, \mathbf{x}_c) \tag{1}$$
即该表征应当动态地捕捉用户与 target item 相关的全局兴趣。
然而已有压缩式方法通常把"序列压缩"与"target item"解耦,先把整条行为序列压成一个固定的用户兴趣:
$$\mathbf{h}_u = f(\mathcal{S}_u, \mathbf{x}_u, \mathbf{x}_c) \tag{2}$$
它独立于不同 target item 概括用户全局兴趣。这类方法显著降低了长序列的计算成本,但 target-independent 的表征 $\mathbf{h}_u$ 无法按 target item 自适应地强调不同的兴趣侧面。因此核心挑战就是:在不引入不可承受计算成本的前提下,弥合高效序列压缩与目标感知兴趣建模之间的鸿沟。
核心方法:SITA 架构¶

图 2 给出完整架构。整条链路是:BPQ 从物品侧多模态表征学出结构化 SID → SIC 在 SID 的编码结构引导下把长行为序列压成 $N \times K$ 个语义组织化兴趣 token,离线算好后写入 Embedding Server(以 UID 为 key)→ 在线时 SGS 按 target item 的 SID 从每个语义组各取一个 token,得到 $N$ 个 token,经 target attention 聚合成 Long-term User Interest → 与 Short-term User Interest(短序列走 target attention)、Target Item、User Profile、Context Feature 拼接进 MLP,Sigmoid 输出 CTR。
1. Balanced Parallel Quantization(BPQ)¶
现代推荐系统动辄十亿级物品,直接为每个 user–item 对维护 target-specific 压缩兴趣需 $O(|\mathcal{U}||\mathcal{V}|)$ 存储。为让 target-aware compression 可扩展,SITA 首先把原始 item 空间分解成一个紧凑的结构化编码空间:用少量编码单元的组合来表示组合数量级的 item 身份。同时,为保持相关物品之间的语义一致性,这个结构化编码空间应当捕捉多个互补的语义侧面,使语义相近的物品得到相近的结构化编码。
给定物品多模态 embedding $\mathbf{x} \in \mathbb{R}^{d_m}$($d_m$ 为多模态维度),BPQ 用 $N$ 个独立专家把它投影成 $N$ 个隐向量:
$$\mathbf{e}_n = g_n(\mathbf{x}), \quad n = 1, 2, \ldots, N \tag{3}$$
其中每个 $g_n(\cdot)$ 用一个 MLP 实现。每个隐向量 $\mathbf{e}_n$ 随后被 codebook $\mathcal{C}_n = \{\mathbf{c}_{n,1}, \mathbf{c}_{n,2}, \ldots, \mathbf{c}_{n,K}\}$ 量化(该 codebook 含 $K$ 个码字),最近码字的索引构成语义标识符的一个分量:
$$s_n = \arg\min_{k \in \{1,\ldots,K\}} \|\mathbf{e}_n - \mathbf{c}_{n,k}\|_2^2 \tag{4}$$
于是每个物品被赋予一个结构化的语义标识符:
$$\mathbf{s} = [s_1, s_2, \ldots, s_N], \quad s_n \in \{1, \ldots, K\} \tag{5}$$
其中 $N$、$K$ 分别是 codebook 数量与每个 codebook 的码字数量。
训练目标:所有 codebook 选中的码字被拼接后送入一个 MLP decoder 重建原始多模态表征,重建损失用重建向量与原向量的 MSE。遵循标准向量量化的形式,训练目标还包含 codebook loss 与 commitment loss。在这些标准目标之外,BPQ 额外引入一个 usage-balance 正则以防止码字塌缩:对每个 codebook,在 mini-batch 内对软分配概率取平均得到平均码字使用分布 $\bar{\mathbf{p}}_n$,并鼓励它逼近均匀分布:
$$\mathcal{L}_{\text{usage}} = \frac{1}{N} \sum_{n=1}^{N} \left\| \bar{\mathbf{p}}_n - \frac{1}{K}\mathbf{1} \right\|_2^2 \tag{6}$$
训练结束后,BPQ 得到一个结构化语义空间以及每个物品的固定语义标识符。由 $N$ 个并行 codebook(每个含 $K$ 个码字)组合,BPQ 只用 $NK$ 个编码单元就能表示至多 $K^N$ 个语义标识符,把存储复杂度从 $O(|\mathcal{U}||\mathcal{V}|)$ 降到 $O(|\mathcal{U}|NK)$。
论文特意强调 BPQ 的设计目标与传统量化方法(如残差量化 RQ)根本不同:RQ 系方法是为了提升重建保真度而逐层编码残差;BPQ 是为了构造一个组合式编码空间,多个并行语义 codebook 捕捉互补语义侧面,共同组成结构化语义标识符,这些标识符随后被 SGS 用来选择 target-specific 的兴趣 token。这是"并行"而非"残差"的核心动机——残差量化的第 $m$ 层依赖前 $m-1$ 层,语义上不是对等的互补侧面,无法直接支撑"逐组独立索引"。
2. Structured Interest Compression(SIC)Block¶
BPQ 学好紧凑语义空间后,SIC 块负责把原始行为序列压成一组语义组织化的兴趣 token。首先初始化一组可学习的兴趣 token:
$$\mathbf{Z}_u^{(0)} \in \mathbb{R}^{NK \times d} \tag{7}$$
其中 $N$ 为语义组数量,$K$ 为每组内兴趣 token 数量,$d$ 为隐藏维度。注意这里的 $(N, K)$ 与 BPQ 的 $(N, K)$ 严格对齐:第 $n$ 个语义组对应第 $n$ 个 codebook,组内第 $k$ 个 token 对应该 codebook 的第 $k$ 个码字。
从初始化的兴趣 token 出发,SIC 通过堆叠的压缩块逐步 refine 其表征。在第 $l$ 个压缩块内,用户行为序列先通过一个 cross-attention 层被注入兴趣 token,得到更新后的兴趣表征 $\mathbf{H}_u^{(l)}$:
$$\mathbf{H}_u^{(l)} = \text{CrossAtt}^{(l)}\!\left(\mathbf{Z}_u^{(l-1)}, \mathcal{S}_u, \mathcal{S}_u\right) + \mathbf{Z}_u^{(l-1)} \tag{8}$$
其中 $\mathbf{Z}_u^{(l-1)}$ 是第 $l-1$ 个压缩块输出的兴趣 token,$\mathcal{S}_u$ 是嵌入后的用户行为序列(作为 K、V)。随后兴趣 token 被组织成 $N$ 组、每组 $K$ 个,做 intra-group modeling 与 inter-group interaction。
2.1 Intra-group Modeling(组内建模)¶
经过 cross-attention 后兴趣 token 已吸收行为信息。由于兴趣 token 被语义化地分到不同组,所有组共享同一个前馈网络会限制它们学到组特有的表征。因此 SITA 给每个语义组分配独享的前馈网络,每个 FFN 用 SwiGLU 块实现以提升表达力:
$$\mathbf{U}_{u,n}^{(l)} = \text{SiLU}\!\left(\mathbf{H}_{u,n}^{(l)}\mathbf{W}_n^{(g)}\right) \odot \left(\mathbf{H}_{u,n}^{(l)}\mathbf{W}_n^{(u)}\right), \quad \mathbf{G}_{u,n}^{(l)} = \mathbf{U}_{u,n}^{(l)}\mathbf{W}_n^{(o)} \tag{9}$$
其中 $\mathbf{H}_{u,n}^{(l)} \in \mathbb{R}^{K \times d}$ 是第 $n$ 组兴趣 token,$\{\mathbf{W}_n^{(g)}, \mathbf{W}_n^{(u)}, \mathbf{W}_n^{(o)}\}$ 是该语义组专属 SwiGLU 块的可学习参数。相比共享 FFN,这种组特化变换让每个语义组学到不同的非线性变换,得到更有表达力的组特定表征。
2.2 Inter-group Interaction(组间交互)¶
组内建模后每组已有自己的表征,但用户兴趣本质上是相关而非完全独立的,跨组交互对捕捉互补信息是必要的。一个直接方案是在所有兴趣 token 上做 token 级 self-attention,但论文指出:这种无约束的 token 级交互会破坏兴趣 token 的语义分组,而语义分组正是后续 SID-guided 激活的基础。
因此 SITA 不直接建模所有 token 之间的交互,而是先用 mean pooling 概括每个语义组,得到 $N$ 个组级摘要,再在这些摘要上做 self-attention 捕捉组间交互,得到更新后的组表征 $\mathbf{R}_u^{(l)}$:
$$\mathbf{R}_u^{(l)} = \text{SelfAtt}^{(l)}\!\left(\left[\frac{1}{K}\sum_{i=1}^{K}\mathbf{G}_{u,1,i}, \ldots, \frac{1}{K}\sum_{i=1}^{K}\mathbf{G}_{u,N,i}\right]\right) \tag{10}$$
refine 后的组表征被变换成组特定偏置向量,并广播加到对应语义组内的所有兴趣 token 上:
$$\mathbf{Z}_{u,n}^{(l)} \leftarrow \mathbf{G}_{u,n}^{(l)} + \text{MLP}\!\left(\mathbf{R}_{u,n}^{(l)}\right) \tag{11}$$
其中 $\mathbf{Z}_{u,n}^{(l)}$ 是第 $n$ 个语义组注入组特定偏置后的兴趣 token。$N$ 个语义组的更新 token 拼接成 $\mathbf{Z}_u^{(l)} \in \mathbb{R}^{NK \times d}$,即第 $l$ 个 SIC 块的输出。
这一设计的双重收益是:在组级而非 token 级交互,既保留了兴趣 token 的语义分组,又实现了跨语义组的信息交换;同时交互复杂度从 $O((NK)^2)$ 降到 $O(N^2)$,对大规模推荐系统更高效(以论文 Taobao-MM 配置 $N=K=16$ 计,$(NK)^2 = 65536$ 降到 $N^2 = 256$,256 倍)。
2.3 兴趣 Token 存储¶
堆叠 $L$ 个 SIC 块后得到每个用户 refine 后的兴趣 token $\mathbf{Z}_u^{(L)}$。由于整个 SIC 过程是 target-agnostic 的,$\mathbf{Z}_u^{(L)}$ 可以离线计算并作为可复用的用户专属 token 集存储。在线推理时直接访问存储的兴趣 token,无需反复与原始行为序列交互,从而把在线推理与长序列编码解耦。
因此每个用户只需维护 $N \times K$ 个兴趣 token,存储复杂度从 $O(|\mathcal{U}||\mathcal{V}|)$ 降为 $O(|\mathcal{U}|NK)$。配合 BPQ 构造的组合式语义编码空间,这 $N \times K$ 个存储 token 能支持至多 $K^N$ 种 target-specific 的选择模式。由于 $N$、$K$ 可配置,实践中 $N \times K$ 可以保持在百量级,却仍提供组合意义上巨大的语义编码空间——这正是 target-aware compression 在工业尺度可部署的关键。
3. SID-Guided Selection(SGS)¶
SIC 之后,SITA 得到一组紧凑的语义组织化兴趣 token $\mathbf{Z}_u^{(L)}$,其中每个语义组含 $K$ 个兴趣 token,一一对应 BPQ 学到的 $K$ 个语义标识符取值。给定存储的兴趣 token 与 target item 的语义标识符,SGS 通过从每个语义组各取一个对应兴趣 token来构造 target-aware 兴趣 token 集。于是不同 target item 会选中不同的兴趣 token 子集,在复用同一份紧凑用户兴趣 token 的前提下实现 target-aware 全局兴趣建模。
具体地,设 target item 的语义标识符为
$$\mathbf{s}_t = (s_1, s_2, \ldots, s_N) \tag{12}$$
其中 $s_n \in \{1, \ldots, K\}$ 是第 $n$ 个语义 codebook 分配的语义标识符。对每个语义组,被选中的兴趣 token 为
$$\mathbf{e}_{u,n} = \mathbf{Z}_{u,n,s_n} \tag{13}$$
即第 $n$ 个语义组内第 $s_n$ 个兴趣 token。被选中的兴趣 token 汇集为
$$\mathbf{E}_{u,t} = \left(\mathbf{e}_{u,1}, \mathbf{e}_{u,2}, \ldots, \mathbf{e}_{u,N}\right) \in \mathbb{R}^{N \times d} \tag{14}$$
$\mathbf{E}_{u,t}$ 即用户 $u$ 关于 target $t$ 的目标感知全局兴趣,随后送入下游推荐模型(图 2 中经 target attention 聚合成 Long-term User Interest)做最终预测。
值得注意的是,SGS 是硬索引(index lookup)而非软加权:$N$ 个语义组各出一个 token,恰好 $N$ 个 token,与候选数无关地保持常数规模。
4. 复杂度分析¶
论文特别分析在线推理复杂度——现代推荐系统每个用户要给大量候选打分,推理效率至关重要。给定 target item,SITA 先做 SID-guided token 选择:每个语义组一次索引查找,复杂度 $O(BN)$;随后在 $N$ 个被选中兴趣 token 上做 target attention,复杂度 $O(BNd)$。由于 $d \gg 1$,索引查找的开销相对注意力计算可忽略。因此 SITA 的整体在线推理复杂度为 $O(BNd)$。
Table 1:代表性长序列建模方法的推理复杂度对比
| Model | Inference Complexity |
|---|---|
| SIM-Hard | $O(B\log A + BRd)$ |
| SIM-Soft | $O(BLd + BRd)$ |
| ETA | $O(BLm + BRd)$ |
| TWIN | $O(BLC + BRd)$ |
| C-Former | $O(BTd)$ |
| VISTA | $O(BTd)$ |
| SITA | $O(BNd)$ |
符号:$B$ 推理时同时处理的候选数;$d$ embedding 维度;$L$ 用户序列长度;$R$ 检索后子序列长度;$T$ 压缩兴趣 token 数量;$N$ 语义组数量;$A$ SIM-Hard 中属性倒排索引大小;$m$ ETA 的哈希函数个数;$C$ TWIN 的 user-item 交叉特征数。
结论有两层:一是相对检索式方法,SITA 的复杂度完全不含 $L$,在线彻底消除了 target item 与原始行为序列的交互;二是相对压缩式方法(C-Former/VISTA 的 $O(BTd)$),SITA 保持同阶的在线推理复杂度($N$ 对应 $T$,且 $N \le NK$,实际选出的 token 数比存储的还少),却把"共享用户兴趣"升级为"目标感知兴趣"。换言之,target-awareness 在这里是免费的。
实验设置¶
数据集¶
在两个真实公开数据集 Taobao-MM 与 XLong 上评估,二者都含多字段特征(用户历史行为序列、多模态表征等)。为公平评估,数据集按时间顺序切分;多模态信息在所有模型上一致使用,只替换长序列建模模块。
Table 2:数据集统计
| Dataset | Fields | Users | Items | Samples | Length |
|---|---|---|---|---|---|
| Taobao-MM | 13 | 8.79M | 35.40M | 99.00M | 1,000 |
| XLong | 4 | 20.00K | 3.27M | 0.14M | 1,000 |
两者序列长度都是 1,000,但规模差异极大:Taobao-MM 是 8.79M 用户 / 99M 样本的大规模数据集,XLong 只有 2 万用户 / 14 万样本,属于小样本长序列数据集。
评估指标¶
- AUC:模型把随机正样本排在随机负样本之前的概率,反映整体排序能力。
- GAUC:按用户(或 group)分别算 AUC,再按曝光数加权平均,对个性化推荐性能的评估更可靠。
Baselines¶
覆盖经典 target-aware 方法、检索式方法、压缩式方法与近期 SOTA:
- DIN:经典的 target-aware 序列推荐方法,以 target item 为条件建模用户兴趣。
- SIM:代表性检索式长序列方法,先检索 target 相关行为再精细建模。
- TWIN:改进 target-aware 行为检索与下游交互建模一致性的检索式方法。
- MUSE:利用多模态物品表征增强长期兴趣建模的多模态检索式方法。
- C-Former:代表性压缩式方法,把长行为序列压成一组紧凑兴趣表征,同一用户的不同 target 共享。
- UxSID:压缩式方法,为物品学语义 ID 并作为语义特征引入用户兴趣建模。
- STCA:近期长序列方法,用堆叠的 target cross-attention 建模用户行为。
- LONGER:近期长序列方法,结合 token merging 与混合注意力做高效长序列建模。
实现细节¶
所有模型在同一训练协议下训练相同 epoch 数。稀疏参数与稠密参数分别用 SparseAdam 与 AdamW 优化,学习率分别为 $2\times10^{-3}$ 与 $2\times10^{-4}$。所有模型 embedding 维度固定为 16。SITA 堆叠 4 个 SIC 块;并行 codebook 数 $N$ 与 codebook 大小 $K$ 在 Taobao-MM 上设为 $(16, 16)$,在 XLong 上设为 $(8, 16)$。
主要实验结果¶

Table 3:Taobao-MM 与 XLong 上的性能对比(Impr. 为相对 DIN 的相对提升)
| Model | Taobao-MM AUC | Impr. | Taobao-MM GAUC | Impr. | XLong AUC | Impr. | XLong GAUC | Impr. |
|---|---|---|---|---|---|---|---|---|
| DIN | 0.6358 | – | 0.6081 | – | 0.8817 | – | 0.8785 | – |
| SIM | 0.6428 | 1.10% | 0.6130 | 0.82% | 0.8824 | 0.09% | 0.8758 | -0.30% |
| TWIN | 0.6452 | 1.47% | 0.6099 | 0.30% | 0.8851 | 0.39% | 0.8811 | 0.30% |
| MUSE | 0.6447 | 1.40% | 0.6149 | 1.12% | 0.9008 | 2.17% | 0.8984 | 2.27% |
| C-Former | 0.6543 | 2.91% | 0.6162 | 1.34% | 0.8934 | 1.32% | 0.8889 | 1.19% |
| UxSID | 0.6542 | 2.89% | 0.6159 | 1.29% | 0.9006 | 2.15% | 0.8971 | 2.12% |
| STCA | 0.6531 | 2.72% | 0.6151 | 1.16% | 0.8939 | 1.38% | 0.8894 | 1.24% |
| LONGER | 0.6514 | 2.45% | 0.6138 | 0.95% | 0.9036 | 2.48% | 0.9003 | 2.48% |
| SITA | 0.6550 † | 3.02% | 0.6175 † | 1.56% | 0.9149 † | 3.77% | 0.9120 † | 3.82% |
(下划线为次优,† 表示配对 t 检验 $p<0.05$ 下显著优于最强 baseline。)
论文从四个角度解读:
- 长序列建模的必要性:相比经典序列推荐 baseline DIN,几乎所有长序列方法在两个数据集上都有一致提升,说明专门的长序列建模对准确捕捉用户兴趣是必要的。(唯一反例是 XLong 上 SIM 的 GAUC 反而 -0.30%,说明纯检索在小样本长序列上不稳。)
- 相对检索式方法的优势:相比 TWIN 等检索式方法,SITA 在两个数据集上一致提升。检索式方法靠挑选相关行为获得 target-aware 兴趣,但可能忽略检索子序列之外的多样兴趣;SITA 在保留全局兴趣的同时实现 target-aware 选择,兴趣建模更全面。
- 相对压缩式方法的优势:相比 C-Former 等压缩式方法,SITA 在两个数据集上显著提升。压缩式方法能高效捕捉全局兴趣但表征 target-independent,限制了建模物品相关偏好的能力;SITA 在结构化兴趣 token 上做 target-aware 选择,能从压缩表征中抽取与物品相关的兴趣。
- 相对近期序列建模方法的优势:相比 LONGER 等近期方法,SITA 结合了有表达力的序列建模与目标感知全局兴趣建模;堆叠的 SIC 块通过组内建模与组间交互学到更有表达力、更结构化的兴趣表征。
一个有意思的观察:两个数据集上的次优方法不同——Taobao-MM 上是 C-Former(压缩式),XLong 上是 LONGER。而与 SITA 最同源的 UxSID 在两个数据集上都排在前列(Taobao-MM 上仅比 C-Former 低 0.0001,XLong 上 0.9006 与 MUSE 0.9008 几乎并列),说明"用 SID 做语义组织"这条路线本身有效,SITA 的增量来自把 SID 从"语义特征/单层探针"升级为"贯穿压缩结构的组织骨架"。SITA 在 XLong 上的绝对增益(AUC +0.0113 over LONGER)远大于 Taobao-MM(+0.0007 over C-Former),提示在小样本长序列场景下结构化压缩的归纳偏置收益更大。
消融实验¶
在 XLong 上做消融,考察四个变体:
- SITA w/o IGM:把组特定 SwiGLU 换成所有语义组共享的单个 SwiGLU(去掉 intra-group modeling 的组特化)。
- SITA w/o IGI:移除 inter-group interaction 模块。
- SITA w/o SGS:移除 SID-Guided Selection,所有 target item 共享同一份兴趣 token 集(退化为纯压缩式)。
- SITA w/ SimGS:把 SID-Guided Selection 换成基于相似度的 Top-$N$ 选择,保持被选 token 数量不变。

从图中读数(近似值):
| Variant | AUC | GAUC |
|---|---|---|
| SITA | ≈0.9146 | ≈0.9105 |
| w/o IGM | ≈0.9125 | ≈0.9082 |
| w/o IGI | ≈0.9097 | ≈0.9052 |
| w/o SGS | ≈0.9040 | ≈0.8987 |
| w/ SimGS | ≈0.9072 | ≈0.9030 |
结论逐条分析:
- 移除任一组件都会一致降低性能,验证了每个模块的有效性。
- w/o SGS 掉得最多(AUC 约 -0.011,GAUC 约 -0.012),突出 target-aware 兴趣 token 选择的重要性——这恰是全文的核心论点:把 target-awareness 从压缩表征里抽掉,SITA 就退化回 C-Former 一类的共享兴趣范式。
- w/ SimGS 只部分恢复性能(AUC 约 0.9072,仍比完整 SITA 低约 0.0074,但比 w/o SGS 高约 0.0032)。这条对比设计得很精巧:它把"为不同 target 选不同 token"这一自由度保留了下来,唯一差别是选择依据是相似度还是 SID。结果说明增益不仅来自"给不同 target 选不同 token",更来自语义标识符与结构化兴趣组之间的语义对应关系——SID 索引与 SIC 的分组结构是同一套语义空间的两面,相似度 Top-$N$ 破坏了这种对齐。
- w/o IGI 比 w/o IGM 掉得更多(AUC 0.9097 vs 0.9125),说明跨语义组的互补信息交换比组内的组特化 FFN 更关键——用户兴趣确实是相关而非独立的。
超参数分析¶

(a) 语义空间配置 $(N, K)$:固定总码字数 $N \times K = 128$,变化配置从而得到不同的可表示模式数 $K^N$。从图中读数(近似):
| $(N, K)$ | $K^N$(可表示模式数) | AUC | GAUC |
|---|---|---|---|
| (4, 32) | $32^4 \approx 1.05\times10^6$ | ≈0.9081 | ≈0.9030 |
| (8, 16) | $16^8 \approx 4.29\times10^9$ | ≈0.9149 | ≈0.9120 |
| (16, 8) | $8^{16} \approx 2.81\times10^{14}$ | ≈0.9145 | ≈0.9105 |
| (32, 4) | $4^{32} \approx 1.84\times10^{19}$ | ≈0.9120 | ≈0.9070 |
均衡配置 (8,16) 效果最好,说明语义组数量与组内码字数之间需要恰当平衡。这个结果值得深挖:可表示模式数 $K^N$ 随 $N$ 增大而暴涨,但性能并非单调随之上升——$N$ 太小(4)则组内码字过多、每个 token 摊到的行为信号稀薄且组间交互太弱;$N$ 太大(32)则每组只有 4 个码字,语义分辨率过粗,且 target attention 要聚合 32 个 token 也稀释了信号。"可表示模式数"不是越大越好,真正起作用的是每个语义组内部的分辨率与组间互补性之间的平衡。
(b) SIC 块数量 $L$:性能随块数增加先升后降,$L=4$ 时达到最优(AUC ≈0.9149、GAUC ≈0.9120),$L=1$ 约 0.9098/0.9070,$L=6$ 约 0.9127/0.9089,$L=8$ 约 0.9117/0.9092。说明适中的 SIC 块数就足以有效建模结构化用户兴趣,过深反而略有退化(典型的压缩瓶颈上的过参数化/过平滑)。
Case Study¶
论文从两个角度做案例分析:SID-guided selection 是否捕捉了 target item 之间的语义关系;学到的语义标识符是否组织出有意义的物品语义。
目标感知的兴趣 Token 选择¶
在 Taobao-MM 上分析被选中的兴趣 token,考察两个性质:类间可分性(不同类目物品选到不同兴趣区域)与类内多样性(同类目物品选到相似但不完全相同的兴趣 token)。
方法:对一个 anchor item,从同类目采一个正样本、从不同类目采一个负样本;用 t-SNE 可视化各自选中的兴趣 token,用 80% 协方差椭圆刻画选择区域,用 IoU 度量两个区域的重合度。

四个子图的 IoU 分别为:(a) 同类目 A 的正样本 IoU = 0.722;(b) 异类目 B 的负样本 IoU = 0.483;(c) 异类目 C 的负样本 IoU = 0.429;(d) 异类目 D 的负样本 IoU = 0.311。同类目物品对的 IoU 显著高于跨类目物品对,表明 SITA 为相似物品选出语义一致的兴趣 token;同时同类目物品的选择模式仍不完全相同(IoU 0.722 而非 1.0),体现了细粒度的物品级多样性。这验证了 SITA 在维持结构化全局兴趣空间的同时实现了 target-aware 的兴趣 token 选择。
语义标识符的语义组织性¶
进一步在工业数据集上分析学到的 SID 是否捕捉了有意义的物品语义:检索共享同一 SID 的代表性物品并检查其语义一致性。

图 6 给出四组共享 SID 的物品(SID = 65074010 / 11727342 / 27573203 / 25237722,出于隐私保护敏感信息做了马赛克处理)。共享同一 SID 的物品表现出很强的语义一致性,对应相似的高层概念(如摩托车、花卉),说明 BPQ 确实把物品组织进了一个语义结构化的空间。
工业实验¶
为验证 SITA 在真实推荐系统中的有效性,作者在一个日活数亿的生产推荐平台上做实验。线上 baseline 是把用户行为序列压成一组共享用户兴趣的长序列建模方案(即典型的 compression-based 上线方案)。实验中 SITA 替换原有长序列建模模块,其余推荐框架保持不变。为公平对比,SITA 从线上 baseline 的最新 checkpoint 初始化,新引入的参数随机初始化;两个模型在整个评估期间消费同一份流式训练数据。最大行为序列长度设为 2,500。
按工业评估协议,报告连续评估窗口内两个生产场景下 Effective-View 的稳定化平均 AUC 与 GAUC 相对提升。论文特别说明:得益于海量训练样本带来的稳定性,约 0.05% 的相对提升在其生产环境中即被视为具有实践显著性,并能带来可观业务影响。
Table 4:两个工业场景下 Effective-View 的相对提升
| Model | Scenario 1 AUC | Scenario 1 GAUC | Scenario 2 AUC | Scenario 2 GAUC |
|---|---|---|---|---|
| SITA | +0.057% | +0.049% | +0.078% | +0.076% |
SITA 在所有报告指标上都取得一致提升,验证它在真实服务约束下成功桥接了 target-aware 建模与全局兴趣建模:把完整用户行为历史压成语义结构化兴趣 token,并通过语义标识符实现 target-specific 选择,SITA 在保留全局用户兴趣建模的同时改善了目标感知的兴趣匹配,而紧凑的用户表征保证了超长行为历史下的高效在线服务。
需要注意:论文只报告了离线 AUC/GAUC 的相对提升,没有报告线上 A/B 的业务指标(CTR/时长/收入),也没有报告存储与延迟的实测数字(只有复杂度分析),Scenario 1/2 的具体业务含义也未披露。
核心贡献总结¶
- 范式层面的贡献最大:论文把长序列建模的既有工作压缩为"target-aware ↔ global interest ↔ deployable"三元约束下的取舍问题,并明确指出"理想的 target-specific 压缩"因 $O(|\mathcal{U}||\mathcal{V}|)$ 存储不可部署。Figure 1 的四格图是全文最有说服力的表达。
- 关键机制是"用组合式语义空间把不可行的 $O(|\mathcal{U}||\mathcal{V}|)$ 折叠成 $O(|\mathcal{U}|NK)$":$N$ 个并行 codebook 的组合可覆盖 $K^N$ 种 target 模式,但只需存 $N \times K$ 个 token。这是本文最本质的洞见——用组合爆炸换存储线性。
- BPQ 选择"并行"而非"残差"量化有明确的功能理由:SGS 需要"每组独立索引",残差量化的层间依赖会破坏这种对等性。这一点与主流 RQ-VAE 系 SID 工作形成了清晰的分工说明。
- SIC 的分组约束是自洽的:组内用组特定 SwiGLU 提升表达力,组间只在 mean-pooled 摘要上做 self-attention 而非 token 级 attention,既保住分组语义(SGS 的前提),又把交互复杂度从 $O((NK)^2)$ 降到 $O(N^2)$。
- SimGS 消融是全文最有价值的实验:它剥离了"选择"这一自由度,单独验证"SID 与兴趣组的语义对应"本身有贡献,而不只是"不同 target 选不同 token"。
与已归档相关工作的对比¶
UxSID UxSID: Semantic-Aware User Interests Modeling for Ultra-Long Sequence (Kuaishou, 2026-05-09)¶
关系:显式引用但原文未展开对比(仅在 baseline 列表用一句话概括:“a compression-based method that learns semantic IDs for items and incorporates them as semantic features for user interest modeling”)· 已加载对方精读
- 共同关注的问题:两篇论文对 root cause 的判断几乎逐字同构——超长序列建模的两条既有路径(item-specific Top-K 检索 vs. item-agnostic 压缩)各有硬伤:前者受限于预定义 key 空间与检索配额、丢失全局兴趣且在线开销随候选数增长;后者压出来的 memory 是 target-agnostic 的"低通滤波器",抹平了 target 相关的兴趣峰。两篇都明确提出走中间路径:不做 item-specific 压缩,而做 semantic-group 共享的兴趣 memory,以 SID 为语义键,并都以"在线 $O(1)$ / 常数级复杂度"作为可部署性的硬指标。UxSID 把这条路径称为"第三种 ULSM 范式",SITA 称之为"target-aware compression 范式",同一件事的两种命名。
- 相近的技术骨架:两者的方法流程图可以抽象重合为三段——(i) 从物品多模态表征学 SID(UxSID 用 MLLM encoder + Res-KmeansFSQ 残差量化,工业部署只取第一层 SID、codebook size 4096;SITA 用 $N$ 个 MLP expert + $N$ 个并行 codebook + usage-balance 正则);(ii) target-agnostic 地把长序列压成少量可离线计算的兴趣锚点(UxSID 的 IAIC:$K$ 个 learnable anchor 做 cross-attention + Per-token FFN + 正交损失,工业 $K=16$;SITA 的 SIC:$NK$ 个 learnable interest token 做 cross-attention + 组特定 SwiGLU + 组间 self-attention,堆叠 $L=4$ 块);(iii) 用 target SID 从存储中取兴趣、再与 target 做轻量 attention(UxSID:$\text{Hash}(UID \oplus SID)$ 的 $O(1)$ 点查 + hierarchical semantic probing;SITA:逐组索引 $\mathbf{Z}_{u,n,s_n}$ + target attention,$O(BNd)$)。连"per-token/per-group 独享 FFN 防止锚点退化"和"离线算好写 Embedding Server、按 UID 查"这些工程细节都撞在一起。
- 本文的差异与推进:核心差别在 SID 的角色深度。UxSID 只用单层 SID(4096 类)作为一个"语义探针 query",去对已经压好的、结构未被 SID 约束的 $K$ 个 anchor 做 attention——SID 是读取端的 query;压缩结构本身仍是无结构的 anchor 集合,若两个物品第一层 SID 相同则读到完全相同的 memory(语义粒度受限于 4096 类)。SITA 则把 SID 的结构注入压缩过程本身:$N$ 个并行 codebook 与 SIC 的 $N$ 个语义组一一绑定,兴趣 token 被强制按语义组组织,SID 变成写入端的组织骨架 + 读取端的硬索引,于是可区分模式数从"码本大小"跃升到组合意义上的 $K^N$($16^8 \approx 4.3\times10^9$),远超 UxSID 的 4096。相应地,UxSID 用残差量化(层间有依赖,只能取第一层做键),SITA 用并行量化(层间对等互补,$N$ 层可同时做键)——"并行 vs 残差"正是"能否把整个 SID 都用作索引"的技术前提。另一处推进是 SITA 显式做了 inter-group interaction(组级 self-attention + 广播偏置),承认语义组之间兴趣相关;UxSID 反向而行,用正交损失强制 anchor 之间尽量独立。这是两篇在"兴趣分量应当正交还是应当交互"上的实质分歧,且两边各自的消融都支持了自己的选择(UxSID 的 $\mathcal{L}_{ortho}$ 有效、SITA 的 w/o IGI 掉 0.005 AUC),说明这与"分量是否绑定到外部语义结构"有关:绑定后(SITA)组间需要补充互补信息,未绑定时(UxSID)需要人为防塌缩。
- 可比的方法 / 实验差异:两篇都在 XLong 上做了实验,但绝对数值完全不可比——UxSID 报 XLong AUC:DIN 0.7889 / TWIN 0.8154 / C-Former 0.8135 / UxSID 0.8408;SITA 报 XLong AUC:DIN 0.8817 / TWIN 0.8851 / C-Former 0.8934 / UxSID 0.9006 / SITA 0.9149。同名 baseline 差 0.08~0.09 AUC,说明两者的特征集(SITA 全程注入多模态表征)、切分方式与训练协议截然不同,不能跨论文引用彼此的 XLong 数字。在同一张表内 SITA 相对 UxSID 的提升为 Taobao-MM AUC +0.0008 / GAUC +0.0016、XLong AUC +0.0143 / GAUC +0.0149,且通过配对 t 检验。工业验证上两者定位也不同:UxSID 报的是快手广告一周线上 A/B 的业务指标(Exposure +0.111%、Cost +0.231%、Revenue +0.337%,延迟 +0.16ms),SITA 只报了两个生产场景的离线 Effective-View AUC/GAUC 相对提升(+0.057%/+0.049%、+0.078%/+0.076%),没有线上 A/B 业务指标也没有延迟实测——就工业证据强度而言 SITA 弱于其被引用的 baseline。此外 UxSID 还做了"给所有 baseline 加 SID 特征"的信息泄漏对照(证明增益来自架构而非 SID 信息注入),SITA 缺这一层对照,虽然它的 SimGS 消融部分承担了类似功能。
TransX TransX: Scaling Transformer-Based Recommendation via Behavior/Serving Stream Crossing (LinkedIn, 2026-07-31)¶
关系:独立并发(SITA 发布于 2026-08-04,未引用 TransX,两者殊途同归)· 已加载对方精读
- 共同关注的问题:两篇都把矛头指向同一个 root cause——"对每个候选重新编码完整长期行为前缀"这件事在计算上不可持续,但把长期表征做成候选无关的静态量又会丢失候选特异性。TransX 的表述是"计算重复:若每次曝光、每个候选都重新编码完整行为前缀,训练复杂度被服务事件数 $T$ 乘上,在线成本随历史长度 $L$ 增长",核心判断是"长期行为表示天然可以按用户近线增量计算,实时请求只应承担候选特定的轻量 crossing";SITA 的表述是把 $O(|\mathcal{U}||\mathcal{V}|)$ 的 target-specific 压缩降到可部署,"把在线推理与长序列编码解耦"。两者都要求在线复杂度与序列长度 $L$ 无关。
- 相近的技术骨架:抽象后是同一张流程图——(i) 一个完全 candidate-agnostic 的长期行为编码器离线/近线跑(TransX:causal Transformer $\Phi_{\text{behavior}}$,因果掩码保证任意时点可切 prefix-consistent 表示;SITA:$L$ 层 SIC 块,明确指出"整个 SIC 过程是 target-agnostic 的,可离线计算并存储");(ii) 其输出被缓存供在线复用(TransX:缓存行为表示及其 K/V;SITA:$N\times K$ 个兴趣 token 写入 Embedding Server,按 UID 查);(iii) 在线只做候选特定的轻量聚合(TransX:候选各自的 query 对共享 K/V 做 grouped multi-query sparse cross-attention,local + global anchor 稀疏模式,$O(mL_{\text{local}})$;SITA:SID 硬索引取 $N$ 个 token 再做 target attention,$O(BNd)$)。两边都强调"同一请求内所有候选共享行为侧 K/V,避免为每个候选重复生成"。
- 本文的差异与推进:分歧在在线那一步"选什么"的机制。TransX 走的是软的、注意力式的路线:候选 query 去 attend 缓存的行为表示,稀疏性来自人工规定的 local 窗口 + 全局 anchor(时间/位置先验),因此在线仍有 $O(mL_{\text{local}})$ 的 attention,且"候选和历史怎么匹配"完全交给学出来的注意力权重。SITA 走的是硬的、符号式的路线:候选先被量化成离散 SID,然后按 SID 逐组做索引查表,在线成本与任何形式的 $L$ 彻底脱钩($O(BN)$ 索引 + $O(BNd)$ attention),代价是引入了量化误差与"同 SID 物品读到同一 token"的粒度上限。可以说 TransX 用空间局部性先验(近期行为 + 全局摘要)压缩在线 attention 范围,SITA 用语义先验(SID 组织)压缩它——前者的先验来自时间轴,后者来自语义轴。另一处显著差异是 SITA 的存储量与候选无关且极小($NK$ 个 token,百量级),TransX 缓存的是整条行为流编码及 K/V(随 $L$ 增长),SITA 在存储侧更省,但表达上限被 $K^N$ 的离散模式数封顶。
- 可比的方法 / 实验差异:两者实验设置无重叠、数据集不共享,无法直接比数值。工业证据强度上 TransX 明显更强:报告 LinkedIn 线上 +6.0% CTR、+4.4% conversion、约 -80% 在线计算;SITA 只有两个生产场景的离线 AUC/GAUC 相对提升(+0.05%~+0.08% 级别)与复杂度分析,无线上业务指标、无实测延迟/存储数字。另一方面 SITA 在公开数据集上做了完整的同协议 baseline 对比(8 个 baseline × 2 数据集 × 2 指标 + 配对 t 检验)与四项消融,方法层证据比 TransX 更充分。两篇合起来看是一个很清楚的信号:2026 年年中前后,"长期行为编码离线化 + 在线只做候选特定轻量聚合"已经从不同机构、不同技术路线上被独立收敛为共识范式,分歧只在"在线聚合是软注意力还是硬索引"。
被剔除的近似候选与理由(供审计):
- SIREN SIREN(Tencent,多模态终身兴趣建模):同样把 SID 与 target-aware attention 结合做长序列,但其骨架是"prefix-encoded SID + 相似度桶参与 target-conditioned attention",并配一个 SemID 硬检索 GSU——本质仍是检索范式,缺少"离线可复用压缩表征"这一环,属于 skill 明确点名的反例(一方 retrieval-based Top-K,一方压缩)。
- ROCS ROCS(Meta):root cause 高度相似(request 侧计算必须与 candidate 无关才能每请求只算一次),但解法停留在算子级依赖契约 + kernel/broadcast 优化,不涉及语义组织的压缩兴趣,也不引入任何离散语义空间,方法流程图无法与 SITA 抽象重合。
- CCFormer CCFormer(Tencent PCG):也做长序列压缩(Conv1D 层级压缩,感受野 3→7→15→31),但目的是降 FLOPs / 加速训练,全文没有"target-aware vs. 压缩表征"的取舍框架,root cause 是算力而非目标无关性。
- SIF SIF(Meituan)/ IAT IAT(ByteDance):都是"把历史样本压成 token",但压缩对象是训练样本 / 人工特征,root cause 是特征工程的信息瓶颈,与"压缩表征的 target-agnostic 性"不是同一个问题。
- STCA STCA、LONGER、C-Former:仅为本文 baseline 关系(Table 3 中已有完整数值对比),问题 + 解法并不双同构,按 skill 约定交由 Step 4 的 DAG 结构化对比承载。
讨论与局限性¶
值得借鉴的设计:
- "组合式离散空间换存储线性"是可迁移的通用手法。当你需要"为每个 (A, B) 对维护专属表征"但 $|A| \times |B|$ 不可承受时,把 B 分解成 $N$ 个并行离散因子、为每个 A 维护 $N \times K$ 个因子槽位,就能用 $O(|A|NK)$ 的存储支撑 $K^N$ 种组合模式。这个思路不限于推荐。
- 量化方式要服务于下游用法,而非一味追重建保真度。BPQ 明确放弃残差量化转向并行量化,理由不是重建更好,而是"逐组独立索引"需要层间对等的语义因子。这是对 SID 领域"默认 RQ-VAE"惯性的一次有价值的反驳。
- 在结构化 token 上做交互时,交互粒度要与结构对齐。SIC 拒绝 token 级 self-attention 而只在组摘要上做,是为了保住分组语义(下游硬索引的前提)——顺带把复杂度从 $O((NK)^2)$ 降到 $O(N^2)$。"为了保持可索引性而主动限制表达力"是一个反直觉但正确的取舍。
- SimGS 这类"保留自由度、只换依据"的消融设计,比常规的"删模块"消融更能定位增益来源,值得在自己的实验设计中复用。
局限与争议:
- 工业证据偏弱。只报了两个生产场景的离线 Effective-View AUC/GAUC 相对提升(+0.049%~+0.078%),没有线上 A/B 的业务指标(CTR / 时长 / 收入),没有实测延迟与存储开销,也没说明"生产平台"与"两个场景"的具体形态。相比之下它自己引用的 baseline UxSID 给出了完整的一周线上 A/B + 延迟数字。对一篇以"real-world deployability"为核心卖点的论文,这是最大的证据缺口。
- 公开数据集的绝对增益在 Taobao-MM 上很小:AUC 0.6543 → 0.6550(+0.0007)、GAUC 0.6162 → 0.6175(+0.0013)。虽然过了配对 t 检验,但相对次优方法的差距远小于相对 DIN 的差距;XLong 上增益大得多(+0.0113 AUC),而 XLong 只有 2 万用户 / 14 万样本,统计噪声更大。"大数据集上小增益、小数据集上大增益"这个模式需要更多解释(论文未讨论)。
- SID 的粒度上限没有被讨论。所有落在同一 $\mathbf{s}_t$ 的物品会读到完全相同的 $N$ 个兴趣 token,即 SITA 的 target-awareness 分辨率被 $K^N$ 封顶且是硬截断(不是软退化)。论文没有报告实际 SID 碰撞率、没有分析长尾/冷启物品的 SID 质量,也没有讨论新物品加入时 codebook 是否需要重训。QuaSID / AdaSID / FORGE 一系工作已经证明 SID 碰撞是工业落地的关键问题,本文对此完全沉默。
- BPQ 的损失函数没有完整给出。正文只写了 $\mathcal{L}_{\text{usage}}$(式 6),重建 MSE、codebook loss、commitment loss 只用文字提及,各项权重、是否用 STE、EMA 更新与否均未交代,复现难度较高。
- 兴趣 token 的更新时效性未讨论。$\mathbf{Z}_u^{(L)}$ 离线算好后多久刷新一次?用户产生新行为到兴趣 token 更新之间的延迟对推荐效果的影响如何?这是所有"离线压缩 + 在线查表"方案的共同软肋,论文未提。工业实验里最大序列长度 2,500,也远低于同类工作(UxSID 分析到 10k、STCA 到 10k)宣称的规模。
- 写作瑕疵:5.6 节工业实验正文写"Figure 4 presents the relative improvements of SITA over the online baseline",但实际数据在 Table 4(Figure 4 是超参数分析),是明显笔误。此外模板信息未清理("Conference acronym 'XX, Woodstock, NY"、2018 年份、DOI 占位符),属投稿前版本。
- 与已有工作的边界划得不够清楚。UxSID 是最近的同源工作(同为快手系、同为 SID + 压缩兴趣 + $O(1)$ 查表),但正文只在 baseline 列表用一句话带过,没有任何机制层面的对比段落,读者很难判断"并行 SID 作为组织骨架"相对"单层 SID 作为查询探针"的增量究竟有多大——而这正是本文最核心的技术差异点。