当排序模型吐出一张按 CTR 降序排列的列表时,你常会看到一个尴尬的现象:头部清一色是同品类、同风格的内容。排序追求的是 单点精度 ,而用户要的是 一整屏的好体验。本部分站在三阶段漏斗的最末端——重排(Re-ranking) ,研究如何在「分数最高的列表 ≠ 体验最佳的列表」之间架起桥梁。
我们从两条路线展开:一条是 基于贪心 的轻量规则法(MMR、DPP),直观、可解释、易落地;另一条是 基于个性化 的数据驱动法(PRM、PRS),用模型自动学习物品间的高阶相互影响。
本章涵盖
| 章节 | Topic | The Big Idea |
|---|---|---|
| 4.1 | 基于贪心的重排 | MMR 用线性组合权衡相关性与多样性;DPP 用行列式框架更精确控制多样性 |
| 4.2 | 个性化重排 | PRM 用 Transformer 建模物品相互影响;PRS 直接优化排列组合的体验收益 |
What You'll Be Able to Do After This Part
- 🟢 解释 排序输出「同质化」为何是重排的根本动机,以及它带来的两类代价
- 🟢 写出 MMR 的边际收益公式,并用贪心过程在给定相似度矩阵上手算 top-k 列表
- 🟡 推导 DPP 核矩阵 ,说清行列式如何度量多样性
- 🟡 辨析 MMR(启发式线性组合)与 DPP(行列式精确控制)在多样性建模上的本质区别
- 🔴 描述 PRM 如何用 Transformer + 个性化向量(PV)实现端到端列表重排
- 🔴 理解 PRS 为何引入排列变异影响,并用 PMatch / PRank 两阶段解决 组合爆炸
- 完成 8 道分层练习题,巩固两章核心方法
核心概念
| Concept | 章节 | Relevance |
|---|---|---|
| 列表同质化 / 多样性 | 4.1 | 重排的存在理由:打破头部重复、保护长尾 |
| MMR 最大边际相关 | 4.1 | 最经典、最易落地的贪心多样性重排 |
| DPP 行列式点过程 | 4.1 | 用行列式几何意义精确建模集合级多样性 |
| PRM 个性化重排模型 | 4.2 | 用 Transformer 端到端学习物品相互影响 |
| PRS 排列组合重排 | 4.2 | 直接优化排列顺序带来的体验收益 |
前置知识
- 已读 Part 3 排序 的打分函数 ,理解精排如何输出带相关性分数的候选列表
- 了解矩阵基础(行列式、半正定、Cholesky 分解)有助于吃透 DPP 推导
- 了解 Transformer 自注意力机制有助于理解 PRM 编码层
- 基础 Python 与向量表示常识
本部分是三阶段流水线的最后一环——建议先建立 Part 1–3 的「召回→排序→重排」全景。
Tips for This Part
- 先动机、后公式。 每个方法都是为解决「列表级体验」而生,脱离动机学公式很容易迷路。
- 动手算一遍案例。 4.1 的 MMR 手算表、DPP 核矩阵构建,务必自己推一遍,比读十遍更牢。
- 对比两条路线。 学完 4.2 后回头对比:贪心法靠「人设目标函数」,个性化法靠「模型从数据学」。
- 记住可视化。 本章配套 SVG 与交互式 HTML 把抽象公式变成可观察的过程,多看多拖。
Let's dive in! 🚀