召回阶段把亿级物品收缩到千级候选后, 排序(Ranking) 接手了最关键的"精准打分"任务。它的目标是对每一个候选计算最接近真实偏好的预测分数(通常是点击率、转化率等),再按分数排出最优序列。排序是深度网络泛化能力的主战场——本 Part 的五个章节,沿着"如何让模型更强、更灵活、更贴合业务"的脉络,逐层递进。
本 Part 不急于堆砌模型名,而是始终追问一件事: 每个新模型解决了前一个方法的什么不足? 只有带着"动机"去读,才能在面对真实业务时知道该选哪个模型。
本章涵盖
| 章节 | Topic | The Big Idea |
|---|---|---|
| 3.1 | Wide & Deep | 用"线性记忆 + 深度泛化"联合训练,奠定排序基础框架 |
| 3.2 | 特征交叉 | 从 FM 二阶交叉,经 DeepFM、xDeepFM,走向自动高阶交叉 |
| 3.3 | 序列建模 | DIN 按候选动态激活历史;DIEN 显式建模兴趣时序演化 |
| 3.4 | 多目标优化 | MMoE、PLE 平衡多目标;ESMM 用全空间建模化解依赖偏差 |
| 3.5 | 多场景建模 | 多塔与动态权重适配多场景分布差异,兼顾共性与特性 |
What You'll Be Able to Do After This Part
- 🟢 解释 Wide & Deep 中"记忆"与"泛化"的分工,及其联合训练的意义
- 🟢 区分 FM 二阶交叉、xDeepFM 向量级高阶交叉、AutoInt 自适应交叉的动机差异
- 🟡 说明 DIN 的局部激活如何突破"固定长度用户向量"瓶颈,DIEN 如何进一步建模兴趣演化
- 🟡 辨析 多任务(同场景多目标)与多场景(不同场景同目标)的本质区别与建模策略
- 🔴 设计 在"点击率 × 转化率"等存在依赖关系或跷跷板冲突的业务中,选用合适的多目标/多场景结构
- 🟡 定位 本章每个模型在"解决前一方法不足"链条上的位置
核心概念
| Concept | 章节 | Relevance |
|---|---|---|
| 记忆 vs 泛化 / 联合训练 | 3.1 | 排序深度模型的基础设计哲学 |
| 因子分解交叉(FM)参数共享 | 3.2 | 缓解稀疏与参数爆炸的核心技巧 |
| 向量级 / 自适应高阶交叉 | 3.2 | 让模型自动捕获任意阶特征交互 |
| 局部激活(注意力) | 3.3 | 用户兴趣随候选动态变化的建模关键 |
| 兴趣演化 / 会话建模 | 3.3 | 把静态"物品袋"升级为动态序列 |
| 负迁移 / 跷跷板 / 门控 | 3.4 | 多目标冲突与缓解机制 |
| 全空间建模(样本选择偏差) | 3.4 | 化解 CVR 依赖关系带来的训练偏差 |
| 场景私有/共享参数 / 动态调制 | 3.5 | 跨场景迁移时兼顾共性与差异 |
前置知识
- 读过 Part 1 (推荐系统范式与三阶段流水线)与 Part 2 (召回算法家族)
- 已读 1.3 特征与 Embedding 入门,理解 Sparse / Dense、分桶与 Embedding 查表;并了解 MLP、激活函数、反向传播
- 知道 CTR(点击率)、CVR(转化率)等业务指标的大致含义
本 Part 是 Part 2 召回的自然下游——候选已就绪,接下来我们学习如何"精准打分"。
Tips for This Part
- 带着"动机"读每个模型。 遇到新模型先问:它解决了前一层方法的什么不足?结构差异在哪?
- 公式服务于直觉。 先理解"为什么这样设计",再看数学表达;公式只是设计思想的精确写法。
- 对比着读 Advanced 章节。 3.2 与 3.3 模型密集、结构相似,用表格横向对比能事半功倍。
- 动手跑交互演示。 3.2 与 3.3 各有一个交互式 HTML,用"下一步"直观感受高阶交叉与注意力激活的过程。
Let's dive in! 🚀