← Back to list
DACT

Drift-Aware Continual Tokenization for Generative Recommendation

生成式推荐 Microsoft
Abstract 7 Reading 7 Rating —
2026-03-31
Yuebo Feng, Jiahao Liu, Mingzhe Han, Dongsheng Li, Hansu Gu, Peng Zhang, Tun Lu, Ning Gu
Fudan University, Microsoft Research Asia
提出 DACT 框架,通过协同漂移识别模块和分层编码重分配策略,在生成式推荐持续学习中平衡 tokenizer 的可塑性与稳定性
semantic-id transformer pretrained-lm contrastive-ssl cold-start academic

1 研究背景与动机

生成式推荐 (Generative Recommendation) 采用两阶段流水线:可学习 tokenizer(如 RQ-VAE)将物品映射为离散 token 序列(标识符),自回归生成式推荐模型 (GRM) 基于这些标识符进行预测。近期工作将协同过滤信号(collaborative filtering signals)注入 tokenizer,使行为相似的物品获得相似编码,显著提升推荐质量。

然而,真实系统中物品不断涌入、用户交互持续演变,带来两大挑战:

  1. 标识符碰撞与偏移:tokenizer 未见过新物品,导致新物品与已有物品共用编码
  2. 协同漂移 (Collaborative Drift):已有物品的共现模式和流行度随时间变化(例如圣诞节前 LED 灯带与圣诞树从长尾变为热门并频繁共现),若 token 不更新则无法反映最新协同特征

完全重训 tokenizer + GRM 成本极高;朴素微调 tokenizer 则会导致超过 90% 已有物品的 token 序列发生变化,破坏 GRM 已学到的 token-embedding 对齐关系。

核心问题:如何在持续学习场景下,准确识别发生协同漂移的物品子集并选择性地更新其编码,同时严格约束稳定物品的编码不变?

2 DACT 框架

DACT (Drift-Aware Continual Tokenization) 分为两个阶段:

2.1 前置知识

RQ-VAE Tokenizer:$L$ 层残差量化 VAE。对物品 $i$,提取语义嵌入 $\mathbf{z}_i \in \mathbb{R}^d$,经编码器得到潜在表示 $\mathbf{r}_i = \text{Encoder}(\mathbf{z}_i)$。逐层查找最近码本向量:

$$p(m \mid \mathbf{v}_{i,l}) = \frac{\exp(-\|\mathbf{v}_{i,l} - \mathbf{e}_m^l\|^2/T)}{\sum_{j=1}^{M} \exp(-\|\mathbf{v}_{i,l} - \mathbf{e}_j^l\|^2/T)}$$

$$c_{i,l} = \arg\max_m p(m \mid \mathbf{v}_{i,l}), \quad \mathbf{v}_{i,l+1} = \mathbf{v}_{i,l} - \mathbf{e}_{c_{i,l}}^l$$

其中 $\mathbf{v}_{i,1} = \mathbf{r}_i$。物品 token 序列 $\mathbf{c}_i = [c_{i,1}, \ldots, c_{i,L}]$,量化嵌入 $\hat{\mathbf{r}}_i = \sum_{l=1}^{L} \mathbf{e}_{c_{i,l}}^l$。

训练损失包含重建损失 $\mathcal{L}_\text{recon} = \|\mathbf{z}_i - \hat{\mathbf{z}}_i\|^2$、量化损失 $\mathcal{L}_\text{RQ}$ 和协同对齐损失 $\mathcal{L}_\text{cf}$:

$$\mathcal{L}_\text{cf} = -\log \frac{\exp(\text{sim}(\hat{\mathbf{r}}_i, \mathbf{h}_i))}{\sum_{j \in \mathcal{B}} \exp(\text{sim}(\hat{\mathbf{r}}_j, \mathbf{h}_j))}$$

其中 $\mathbf{h}_i$ 为来自预训练 CF 模型(如 SASRec、LightGCN)的协同嵌入。

GRM:自回归地预测下一个 token,最小化负对数似然 $\mathcal{L}_\text{NLL}$。

2.2 Stage 1: 漂移感知 Tokenizer 自适应

2.2.1 协同漂移识别模块 (CDIM)

CDIM 与 tokenizer 联合端到端训练,仅在训练时使用(推理时不需要)。核心功能是为每个物品输出一个漂移置信度 $d_i$。

模式记忆 (Pattern Memory):维护两组可学习 slot:key slots $\mathbf{K} \in \mathbb{R}^{S \times D}$(漂移模式)和 value slots $\mathbf{V} \in \mathbb{R}^{S \times D}$(更新策略原型)。$p \gt 1$ 时从上一期加载 $\{\mathbf{K}^{p-1}, \mathbf{V}^{p-1}\}$ 热启动。

查询构造:对物品 $i$,构建查询向量:

$$\mathbf{s}_i^{p-1} = \mathbf{r}_i^{p-1} \odot \mathbf{h}_i^p, \quad \mathbf{s}_i^p = \hat{\mathbf{r}}_i^p \odot \mathbf{h}_i^p, \quad \Delta\hat{\mathbf{r}}_i^p = \hat{\mathbf{r}}_i^p - \mathbf{r}_i^{p-1}$$

$$\mathbf{q}_i = \text{concat}\left[\mathbf{s}_i^{p-1}, \mathbf{s}_i^p, \Delta\hat{\mathbf{r}}_i^p\right]$$

其中 $\mathbf{r}_i^{p-1}$ 为上期潜在表示,$\hat{\mathbf{r}}_i^p$ 为当前训练中的表示(stop gradient),$\mathbf{h}_i^p$ 为当前期 CF 嵌入。

模式匹配与置信度预测

$$\boldsymbol{\alpha}_i = \text{Softmax}\left(\frac{\mathbf{q}_i \mathbf{K}^\top}{\tau}\right), \quad d_i = \sigma(MLP(\boldsymbol{\alpha}_i, \mathbf{V}))$$

$d_i$ 越高表示物品越可能发生漂移。添加正则项防止平凡解:$\mathcal{L}_\text{reg} = \frac{1}{|\mathcal{I}|} \sum_{i \in \mathcal{I}} d_i^2$。

2.2.2 差异化更新策略

根据 $d_i$ 选取 top-$K$ 比例物品为漂移集 $\mathcal{I}_d$,其余为稳定集 $\mathcal{I}_s$:

$$\mathcal{I}_d = \arg\text{topK}_{i \in \mathcal{I}} \; d_i, \quad \mathcal{I}_s = \mathcal{I} \setminus \mathcal{I}_d$$

漂移物品 ($\mathcal{I}_d$):鼓励自由适应最新协同信号:

$$\mathcal{L}_\text{drift} = \frac{1}{|\mathcal{I}_d|} \sum_{i \in \mathcal{I}_d} \left(\mathcal{L}_\text{RQ-VAE}(i) + \lambda \, \mathcal{L}_\text{cf}(i)\right)$$

稳定物品 ($\mathcal{I}_s$):引入锚定正则化保持潜在表示稳定:

$$\mathcal{L}_\text{anchor}(i) = \left\|\mathbf{r}_i^p - \mathbf{r}_i^{p-1}\right\|^2, \quad i \in \mathcal{I}_s$$

$$\mathcal{L}_\text{stable} = \frac{1}{|\mathcal{I}_s|} \sum_{i \in \mathcal{I}_s} \left(\mathcal{L}_\text{RQ-VAE}(i) + \alpha \, \mathcal{L}_\text{anchor}(i) + \lambda \, \mathcal{L}_\text{cf}(i)\right)$$

2.2.3 全局编码分配稳定性约束

对第一层码本,正则化所有物品的分配分布变化:

$$\mathbf{p}_{i,1} = \left[p(1 \mid \mathbf{v}_{i,1}), \ldots, p(M \mid \mathbf{v}_{i,1})\right] \in \mathbb{R}^M$$

$$\mathcal{L}_\text{global} = \frac{1}{|\mathcal{I}|} \sum_{i \in \mathcal{I}} D_\text{KL}\left(\mathbf{p}_{i,1}^{p-1} \| \mathbf{p}_{i,1}^p\right)$$

仅对第一层施加,因深层残差更敏感于量化噪声,由 Stage 2 的分层策略控制。

总体目标

$$\mathcal{L}_\text{Tokenizer} = \mathcal{L}_\text{drift} + \theta \, \mathcal{L}_\text{stable} + \beta \, \mathcal{L}_\text{global} + \zeta \, \mathcal{L}_\text{reg}$$

2.3 Stage 2: 分层编码重分配

基于 RQ-VAE 的残差量化特性(深层码本编码越来越细粒度的残差),采用 relaxed-to-strict 策略:

Layer 1 (主动适应):始终用微调后的 tokenizer 推理重分配:

$$c_{i,1}^p \leftarrow \arg\max_k p(k \mid \mathbf{v}_{i,1}^p), \quad \text{where } \mathbf{v}_{i,1}^p = \mathbf{r}_i^p$$

第一层 token 捕捉主要语义簇,任何变化都意味着显著的协同漂移。

深层 ($l \geq 2$, 条件稳定):仅当第一层编码发生变化时 ($c_{i,1}^p \neq c_{i,1}^{p-1}$) 才触发深层重分配;否则强制保持不变 $c_{i,l}^p \leftarrow c_{i,l}^{p-1}$。这一设计过滤掉潜在空间中的微小波动,稳定大多数标识符。

重分配完成后,用更新的 token 序列作为物品标识符,微调 GRM。

3 实验

3.1 实验设置

数据集:Amazon 三个域(Beauty, Tools, Toys),过滤交互少于 5 次的用户和物品。

Dataset #Users #Items #Interactions Sparsity
Beauty 22,363 12,101 198,502 99.927%
Tools 16,638 10,217 134,476 99.921%
Toys 19,412 11,924 167,597 99.928%

时间划分:$\mathcal{D}_0$ (P0) 前 60% 交互用于预训练,$\mathcal{D}_1$-$\mathcal{D}_4$ (P1-P4) 平分剩余 40% 用于持续更新。采用 leave-one-out 评估。

GRM 骨干

  • TIGER:T5-based encoder-decoder 架构
  • LCRec:Qwen2.5-1.5B-Instruct 初始化的 decoder-only LLM,使用 LoRA 微调

Baseline(以 Tok. / GRM 是否微调组合):

  • Frozen / Frozen (x/x)
  • FT Tok. / Frozen (FT/x)
  • Frozen / FT GRM (x/FT)
  • Both FT (FT/FT)
  • Both FT + Retrain GRM (FT/RT)(仅 TIGER)
  • Reformer:仅给新物品分配编码,保持旧物品不变
  • LSAT:双 LoRA 模块,分别捕捉长短期偏好(仅 LCRec)
  • PESO:LoRA 更新加近端正则化(仅 LCRec)

Tokenizer 配置:3 层 RQ-VAE,码本大小 256,嵌入维度 32。

评估指标:HR@k 和 NDCG@k,$k = 5, 10$。

3.2 TIGER 骨干上的整体性能 (Table 2)

Dataset Method P1 H@5 P1 H@10 P1 N@5 P1 N@10 P4 H@5 P4 H@10 P4 N@5 P4 N@10
Beauty x/x 0.0279 0.0443 0.0151 0.0192 0.0147 0.0223 0.0070 0.0089
Beauty FT/x 0.0065 0.0104 0.0035 0.0045 0.0041 0.0092 0.0019 0.0031
Beauty x/FT 0.0274 0.0469 0.0162 0.0226 0.0336 0.0514 0.0207 0.0265
Beauty FT/FT 0.0270 0.0483 0.0169 0.0237 0.0316 0.0575 0.0205 0.0288
Beauty FT/RT 0.0253 0.0401 0.0156 0.0203 0.0321 0.0534 0.0198 0.0267
Beauty Reformer 0.0285 0.0483 0.0171 0.0235 0.0285 0.0515 0.0189 0.0263
Beauty DACT 0.0299 0.0531 0.0191 0.0266 0.0368 0.0609 0.0228 0.0305
Tools x/x 0.0201 0.0283 0.0103 0.0123 0.0128 0.0191 0.0069 0.0084
Tools FT/FT 0.0192 0.0347 0.0131 0.0164 0.0205 0.0317 0.0130 0.0166
Tools DACT 0.0239 0.0414 0.0153 0.0201 0.0205 0.0314 0.0124 0.0158
Toys x/x 0.0184 0.0303 0.0101 0.0132 0.0132 0.0250 0.0070 0.0010
Toys FT/FT 0.0176 0.0305 0.0117 0.0159 0.0262 0.0430 0.0169 0.0223
Toys DACT 0.0208 0.0353 0.0140 0.0186 0.0269 0.0455 0.0179 0.0239

实验结论

  • 冻结 Tok. + GRM 导致性能从 P1 到 P4 持续下降,确认协同漂移导致的退化
  • 仅微调 Tokenizer (FT/x) 性能急剧下降,因大规模 token 重分配破坏了 GRM 的 token-embedding 对齐
  • 同时增量更新 Tok. + GRM (FT/FT) 通常优于仅更新 GRM (x/FT)
  • Reformer 在早期有竞争力(仅处理新物品),但后期因忽略已有物品的协同漂移而落后
  • DACT 在三个数据集上始终取得最优或接近最优性能,通过选择性更新漂移物品 + 约束稳定物品实现最佳平衡

3.3 LCRec 骨干上的整体性能 (Table 3)

Dataset Method P1 H@5 P1 H@10 P1 N@5 P1 N@10 P4 H@5 P4 H@10 P4 N@5 P4 N@10
Beauty x/x 0.0136 0.0237 0.0080 0.0112 0.0079 0.0141 0.0050 0.0069
Beauty FT/FT 0.0229 0.0420 0.0139 0.0200 0.0319 0.0545 0.0194 0.0267
Beauty LSAT 0.0177 0.0294 0.0109 0.0147 0.0172 0.0314 0.0110 0.0155
Beauty PESO 0.0183 0.0351 0.0110 0.0163 0.0214 0.0362 0.0125 0.0172
Beauty Reformer 0.0215 0.0428 0.0119 0.0187 0.0272 0.0455 0.0166 0.0224
Beauty DACT 0.0262 0.0477 0.0157 0.0225 0.0300 0.0576 0.0189 0.0279
Tools x/x 0.0125 0.0207 0.0082 0.0108 0.0109 0.0173 0.0068 0.0089
Tools FT/FT 0.0214 0.0310 0.0134 0.0165 0.0214 0.0360 0.0134 0.0181
Tools DACT 0.0226 0.0364 0.0152 0.0196 0.0246 0.0355 0.0147 0.0181

实验结论

  • 在 LLM-based GRM (LCRec) 上同样观察到冻结导致的持续退化
  • Reformer 在 LCRec 上退化更快,可能因为 LLM-based GRM 更容易过拟合 token 序列中编码的协同语义
  • LSAT 和 PESO 仅微调 GRM(冻结 tokenizer),在早期可能优于仅微调 GRM,但随着漂移累积优势减弱
  • DACT 在 LCRec 上也始终达到或超越所有 baseline

3.4 消融实验 (RQ2, Tools + TIGER)

在 Tools 数据集上,以 FT Tok. + FT GRM 为参考,逐步移除 DACT 组件:

  • w/o CDIM:移除 CDIM,随机选择漂移物品 -> 性能大幅下降,说明准确的漂移识别至关重要
  • w/o Diff:移除差异化更新策略 -> 性能下降,说明对漂移/稳定物品的区分对待必要
  • w/o Global:移除全局编码分配稳定性约束 -> 性能下降,该约束与差异化策略互补
  • w/o Re-assign:移除分层编码重分配 -> 性能下降,确认分层重分配的价值

所有组件缺一不可,DACT 完整版达到最佳性能。

3.5 进一步分析

可塑性分析 (Figure 4):测量量化嵌入与当前 CF 嵌入的余弦相似度。冻结 tokenizer 的相似度随时间持续下降,而 DACT 保持相对稳定的高相似度,说明 DACT 能有效适应协同漂移。

稳定性分析 (Table 4, Tools)

Method Layer 1 Layer 2 Layer 3 Overall
Fine-tuning 0.7052 0.9696 0.9892 0.9999
DACT (K=0.1) 0.1331 0.1237 0.1300 0.1331
DACT (K=0.3) 0.2975 0.2812 0.2918 0.2975
DACT (K=0.7) 0.4592 0.4435 0.4524 0.4592

朴素微调导致几乎所有物品的编码发生变化(Overall 0.9999),而 DACT 将变化率大幅降低(K=0.3 时 Overall 仅 0.2975)。

Warm/Cold 物品分析 (Figure 6):DACT 在 warm 和 cold 物品上均表现最优。Reformer 在 cold 物品上有优势但 warm 物品上不足;Both FT 在 warm 物品上有竞争力但 cold 物品上不如 Reformer。

超参数分析 (Figure 7, Tools + TIGER)

  • $\alpha$: 锚定强度,最优 $\alpha = 0.1$
  • $\beta$: 全局约束强度,最优 $\beta = 5$
  • $T$: 全局损失温度,最优 $T = 1$
  • $\tau$: CDIM 注意力温度,过大会削弱漂移区分能力
  • $K$: 漂移比例,最优 $K = 0.3$,极端值(0.1 或 0.9)导致退化

训练效率 (Figure 8):以仅微调 GRM 为基准 (1.0),DACT 的训练时间比约 1.5-2x,显著低于 FT Tok. + RT GRM(约 4-6x),在效率与效果之间取得良好平衡。

4 总结与评价

核心贡献: 1. 首次系统研究生成式推荐中协同感知 tokenizer 的持续学习问题,明确提出"漂移感知选择性适应"的范式 2. 提出 CDIM 模块实现端到端的逐物品漂移检测,配合差异化训练策略 3. 分层编码重分配策略(relaxed-to-strict)有效平衡稳定性与可塑性

优点

  • 问题定义清晰,动机充分(圣诞树例子直观)
  • 方法设计合理,CDIM 的模式记忆机制可跨期积累漂移模式
  • 实验全面,两种不同架构的 GRM(encoder-decoder T5 和 decoder-only LLM),三个数据集,多种 baseline
  • 消融实验和分析详尽

不足

  • 数据集规模较小(万级物品),工业级场景(百万级物品)的可扩展性未验证
  • 漂移比例 $K$ 是全局固定超参数,不同时期的最优漂移比例可能不同
  • 仅在 Amazon 域内实验,跨域泛化性未验证
  • 分层重分配策略中"第一层变才触发深层变"的硬规则可能过于保守