1. 研究背景与动机¶
生成式推荐(Generative Recommenders, GRs)以 HSTU(Hierarchical Sequential Transduction Unit)为代表,将推荐任务重构为序列到序列问题,在长用户交互序列建模上展现出强大能力,参数规模可达万亿级别并呈现类似 LLM 的 scaling law。
然而,HSTU 及后续工作(如 MTGR)都基于一个隐含假设:将用户历史视为扁平序列(flat-sequence)。这一假设忽略了用户行为的内在层次结构,导致两个关键问题:
- 无法捕获 session 级别的时序层次:用户行为天然地按 session 聚类,每个 session 代表一个聚焦的短期意图。扁平模型难以区分 session 内的连贯模式和 session 间的兴趣迁移。
- 密集注意力的计算低效与噪声问题:对数千条历史交互计算密集注意力,不仅计算冗余,还引入大量噪声,降低学习到的表征质量。
2. HPGR 框架概述¶
HPGR(Hierarchical and Preference-aware Generative Recommender)采用两阶段训练范式:
- Stage 1: Structure-aware Pre-training — 引入 Session Enhancement Module (SEM) 和 Masked Item Modeling (MIM) 目标,学习层次化的 item 表征空间
- Stage 2: Preference-aware Fine-tuning — 继承预训练权重,通过 Preference-Guided Sparse Attention (PGSA) 机制在下游 pCTR 任务上微调
整体架构如 Figure 2 所示,核心模块包括 SEM、Time-Aware Positional Encoding、PGSA 和 HSTU Encoder。
3. 方法详解¶
3.1 Stage 1: Structure-aware Pre-training¶
3.1.1 Session Enhancement Module (SEM)¶
给定用户长交互历史 $H = \{h_1, h_2, \ldots, h_N\}$,首先按时间不活跃间隔将其分割为 session 序列 $S = \{S_1, S_2, \ldots, S_M\}$,然后使用双层 Transformer 架构:
Intra-session Transformer:对每个 session $S_i$ 独立编码,建模 session 内部的局部短期依赖。取 [CLS] token 的输出作为 session 摘要向量:
$$s_i = \text{Intra-Transformer}(\text{Emb}(S_i))_{[\text{CLS}]}$$
Inter-session Transformer:将 session 摘要向量序列 $[s_1, s_2, \ldots, s_M]$ 输入更高层 Transformer,建模跨 session 的长期兴趣演化:
$$F_{\text{sess}} = \text{Inter-Transformer}([s_1, s_2, \ldots, s_M])_{\text{GlobalPool}}$$
其中 GlobalPool 可以是 [CLS] token 的输出或对所有 session 表征的均值池化。
最终将 session 上下文向量 $F_{\text{sess}}$ 通过广播加法融合到所有 item 的初始嵌入中:
$$H_{\text{enhanced\_emb}} = H_{\text{emb}} + F_{\text{sess}}$$
3.1.2 Pre-training Objective: Masked Item Modeling (MIM)¶
对用户的 session-enhanced 历史 $H_{\text{enhanced}}$ 中随机遮蔽部分 item,最小化预测正确被遮蔽 item 的负对数似然:
$$\mathcal{L}_{\text{MIM}} = -\sum_{i \in H_m} \log P(h_i | H_{\text{unmasked}})$$
其中 $P(h_i | H_{\text{unmasked}})$ 通过 Transformer encoder 输出上的 softmax 层计算。预训练阶段输出预训练 item 嵌入 $\mathbf{E}_{\text{pre}}$ 和 SEM 权重 $\Theta_{\text{SEM}}$。
3.2 Stage 2: Preference-aware Fine-tuning¶
3.2.1 Time-Aware Positional Encoding¶
替代标准位置编码,采用时间感知策略:将候选 item $C$ 按其时间戳插入用户历史序列的正确时间位置,构建时间排序序列后分配连续位置 ID。候选 item 的位置索引:
$$\text{Index}(C) = 1 + \sum_{i=1}^{N} \mathbb{I}(t_i \lt t_C)$$
其中 $t_i$ 是历史 item 的时间戳,$\mathbb{I}(\cdot)$ 是指示函数。
3.2.2 Preference-Guided Sparse Attention (PGSA)¶
PGSA 是本文的核心创新之一,通过三步构建面向每个候选 item 的紧凑偏好上下文:
(i) Preference Signal Identification:计算候选 item $C$ 与每个历史 item $h_i$ 的偏好对齐分数(利用预训练嵌入的点积):
$$\text{score}_i = \text{emb}(C) \cdot \text{emb}(h_i)$$
(ii) Preference Subset Selection:选择对齐分数最高的 Top-K 个历史 item $\{p_1, p_2, \ldots, p_K\}$ 作为用户偏好的核心锚点。
(iii) Gaussian Attention Mask Construction:围绕每个偏好锚点构建高斯形状的软注意力掩码(非硬二值掩码),最终掩码值:
$$M_j = \max_{k \in \{1, \ldots, K\}} \left\{ \exp\left(-\frac{(j - p_k)^2}{2\sigma^2}\right) \right\}$$
其中 $\sigma$ 控制影响宽度。该掩码逐元素施加到 HSTU encoder 的注意力分数矩阵上,将注意力集中在高偏好对齐区域,同时保持平滑梯度。
3.2.3 Fine-tuning Objective¶
端到端训练预测点击率,优化二元交叉熵损失:
$$\mathcal{L}_{\text{pCTR}} = -\frac{1}{B} \sum_{i=1}^{B} (y_i \log(\hat{y}_i) + (1 - y_i) \log(1 - \hat{y}_i))$$
其中 $B$ 是 batch size,$y_i \in \{0, 1\}$ 是真实标签,$\hat{y}_i$ 是预测 CTR 分数。
3.3 Training Strategy¶
- 预训练阶段在大规模无标注用户交互数据上优化 $\mathcal{L}_{\text{MIM}}$
- 微调阶段继承预训练权重,对继承的 item 嵌入和 SEM 使用更小的学习率,对随机初始化的模块使用较大学习率
- 差异化学习率策略保护预训练学到的通用语义空间,同时适配下游任务
4. 实验¶
4.1 实验设置¶
数据集:华为 APPGallery 应用分发平台的工业级数据集
| Metric | Value |
|---|---|
| Number of Users | ~45.8 Million |
| Number of Items | ~200,000 |
| Interactions (Train) | ~285 Million |
| Interactions (Test) | ~7.38 Million |
主实验在随机采样 2.5% 用户的子集上进行,全量测试集用于验证泛化性。
Baselines:
判别式模型:DNN, MoE, GRU4Rec, BERT4Rec, SASRec, Wukong
生成式模型:HSTU, MTGR
4.2 主实验结果(Table 2)¶
| Category | Model | AUC (↑) |
|---|---|---|
| Discriminative Models | DNN (Covington et al. 2016) | 0.7923 |
| MoE (Ma et al. 2018) | 0.8024 | |
| GRU4Rec (Hidasi et al. 2015) | 0.8146 | |
| BERT4Rec (Sun et al. 2019) | 0.8145 | |
| SASRec (Kang and McAuley 2018) | 0.8194 | |
| Wukong (Zhang et al. 2024) | 0.8167 | |
| Generative Models | HSTU (Zhai et al. 2024) | 0.8220 |
| MTGR (Han et al. 2025) | 0.8253 | |
| Our Model | HPGR (Base, Pre-training only) | 0.8327 |
| + PGSA module | 0.8348 | |
| + SEM module | 0.8374 | |
| HPGR (Full) | 0.8377 | |
| Impr. | +1.50% |
关键发现:
- 判别式范式内:序列模型(SASRec, GRU4Rec)显著优于非序列模型(DNN),SASRec 以 0.8194 的 AUC 成为判别式最强基线
- 生成式范式的优越性:即使是基线生成式模型(HSTU, MTGR)也超越了最强判别式模型 SASRec
- HPGR 刷新 SOTA:HPGR (Full) 达到 0.8377 AUC,相比最强基线 MTGR 绝对提升 +0.0124,相对提升 +1.50%
4.3 全量数据集验证¶
在完整未采样的测试集上,HPGR 达到 AUC 0.89288,相比 MTGR 保持 +0.01139 的绝对领先,验证了采样子集上的结论可迁移到全量数据分布。
4.4 消融实验(Table 2 下半部分)¶
| 配置 | AUC |
|---|---|
| HPGR (Base, Pre-training only) | 0.8327 |
| + PGSA module | 0.8348 |
| + SEM module | 0.8374 |
| HPGR (Full) | 0.8377 |
- Pre-training 的影响:仅使用预训练 item 嵌入(不含 SEM 和 PGSA)的基础 HPGR 就达到 0.8327,已超越 MTGR (0.8253),证明结构感知预训练目标本身就能产生更优的嵌入空间
- PGSA 的影响:在基础模型上加 PGSA,AUC 从 0.8327 提升到 0.8348,动态聚焦于偏好相关的稀疏历史子集有效降低噪声
- SEM 的影响:在基础模型上加 SEM,AUC 大幅提升到 0.8374,显式建模 session 层次结构的重要性
- 协同效应:SEM + PGSA 的完整 HPGR 达到最优 0.8377
4.5 预训练嵌入空间的定性分析¶
对比 Xavier 初始化和预训练后的 item 嵌入(Figure 5),发现三个关键变化:
- L2 范数分布偏移:从均匀分布转变为高度偏斜,长尾 item 压缩到低范数区域,语义重要的 item 具有更高范数
- 各向异性的涌现:奇异值衰减从各向同性转为各向异性,模型学会利用特定维度捕捉主要语义方差轴
- 结构化语义景观:UMAP 可视化从无结构随机云转变为具有高密度区域的聚类结构
4.6 超参数研究¶
Top-K 值的敏感性分析(Figure 6)显示性能在 $K = 50$ 处达到峰值,表明该值在捕获充分上下文和避免过多噪声之间取得最佳平衡。
4.7 可扩展性分析¶
Figure 7 显示 HPGR 的性能随用户历史长度增加和模型深度/宽度增加而持续提升,证明其是一个鲁棒且可扩展的架构。
4.8 效率分析¶
Figure 8 对比 HPGR 与 MTGR 的计算效率:HPGR 在训练和推理时间上有可控的增加,但换取了 +0.0124 的 AUC 绝对提升,展现了良好的性价比。
4.9 在线 A/B 测试(Table 3)¶
在 APPGallery 平台进行为期 7 天的在线 A/B 测试:
| Model | Offline AUC | Online eCPM |
|---|---|---|
| Production DLRM (Baseline) | 0.8880 | Baseline |
| HPGR (ours) | 0.8929 | +1.99% |
HPGR 在线上 eCPM(Effective Cost Per Mille)指标上取得 +1.99% 的显著提升,验证了其在真实生产环境中的实际业务价值。
5. 核心贡献总结¶
- Session Enhancement Module (SEM):双层 Transformer 架构(Intra-session + Inter-session),显式建模用户行为的 session 层次结构
- Preference-Guided Sparse Attention (PGSA):基于内容的稀疏注意力机制,以候选 item 为 query 检索偏好相关的历史子集,构建高斯软掩码聚焦注意力
- 两阶段训练范式:结构感知预训练 + 偏好感知微调,差异化学习率策略
- 大规模工业验证:在 APPGallery 4580 万用户数据集上离线超越所有基线,在线 A/B 测试获得 +1.99% eCPM 提升