📑 本页目录(点开跳转)
02 · 推荐系统到底是什么
⏱ 15 分钟 | ⭐ 核心
🎯 一句话
推荐系统是在信息过载的世界里,替你做筛选的机器——它要回答的唯一问题是:「在这个时刻,把哪个东西放在这个人面前,最好?」
🧠 为什么需要它(用数字感受一下)
| 平台 | 物品数量 | 屏幕能放几个 |
|---|---|---|
| 抖音 / TikTok | 每天新增数千万条视频 | 1 个 |
| 淘宝 | 数十亿商品 | 首页 ~20 个 |
| Netflix | 数万部影视 | 首屏 ~30 个 |
| 小红书 | 数亿笔记 | 双列 ~6 个 |
核心矛盾:供给是「亿」级,展示位是「个」位数。差了 8 个数量级。
- 搜索引擎解决的是:「我知道我要什么」(用户主动给关键词)
- 推荐系统解决的是:「我不知道我要什么」(系统主动猜)
💡 一句话区分:搜索是「人找物」,推荐是「物找人」。
📐 推荐问题的标准定义
任何推荐系统,都可以写成这个式子:
score = f( 用户 U , 物品 I , 上下文 C )
然后按 score 从高到低排,取前 N 个给用户看。就这么简单。
后面所有的复杂度,都来自三个问题:
| 问题 | 展开 |
|---|---|
| f 怎么设计? | 从余弦相似度 → 矩阵分解 → 深度网络 → 生成式模型(第 4、5、8、14 节) |
| U/I/C 怎么表示? | 特征工程 + 向量表示(第 3、7 节) |
| 物品有 1 亿个,怎么在 200ms 内算完? | 分层漏斗架构(第 6、10、15 节) |
记住这个式子,它是整份教程的骨架。
🧭 三大流派(这就是推荐算法的全部分类)
- 「你看过科幻片 → 再推科幻片」
- 看的是:物品自身的属性(标签、文本、图像)
- ✅ 新物品也能推 ❌ 推荐结果单调,出不了圈
- 「和你像的人也喜欢这个 → 推给你」
- 看的是:用户行为,完全不看物品内容
- ✅ 能挖出意外惊喜 ❌ 冷启动死穴(新用户新物品没行为)
- 「把①②和几百个特征一起喂给一个模型,让模型自己学」
- ✅ 效果最好 ❌ 复杂、贵、需要大量数据和工程
现实:2026 年任何一家公司的推荐系统都是 ③,但 ①② 作为其中的召回通路依然在跑。学 ①② 不是学历史,是学零件。
🎬 一次真实的推荐,发生了什么
你在抖音上滑了一下。接下来 200 毫秒内:
这个循环叫推荐系统的闭环。第 6 步是最关键的——推荐系统会改变它自己的训练数据,这是它和普通机器学习最大的不同(第 12、13 节会深挖这个坑)。
💰 它值多少钱(为什么公司愿意砸钱)
- Netflix 公开表示推荐系统每年为其节省 超过 10 亿美元 的用户流失成本
- 亚马逊早年披露约 35% 的销售额来自推荐位
- 抖音/小红书这类产品,推荐算法就是产品本身——没有推荐,它们不存在
这解释了为什么推荐算法工程师薪资高:它的效果可以被直接换算成钱,A/B 实验涨 1% 点击率,能算出来值多少营收。
🔄 一个必须先知道的事:反馈闭环
推荐系统和你学过的其他模型有一个结构性的不同: 它会改变自己的训练数据。
🔑 最关键的一句话: 模型没推过的东西,永远不会产生数据,也就永远学不到它到底好不好。
💡 这一个事实,解释了后面一大半的内容
| 你后面会遇到的 | 根源都在这个闭环 |
|---|---|
| 热门偏置 | 热门被推得多 → 数据多 → 模型更确信它好 → 推得更多(第 11 节) |
| 冷启动 | 新物品没数据 → 模型不敢推 → 永远没数据(第 13 节) |
| 信息茧房 | 推你爱看的 → 你只反馈这类 → 模型更确信 → 越推越窄 |
| 为什么必须做探索 | 不主动推没把握的东西,就永远拿不到它的数据(第 13 节) |
| 为什么离线指标常常骗人 | 离线数据是旧模型选出来的,评不准新模型(第 12 节) |
| 为什么必须做 A/B 实验 | 只有真的放上线,才能拿到新模型自己的反馈数据 |
⭐ 如果这一章只记一件事,记这个闭环。 它不是一个「缺点」,而是推荐系统这个问题本身的性质—— 你不是在预测一个固定的世界,你是在参与塑造它。
🔗 挑战项目 B 就是让你亲手把这个闭环跑起来,看着茧房自己长出来。
⚖️ 但它也有真实的代价
不学这部分你会成为一个危险的工程师:
| 问题 | 说明 |
|---|---|
| 信息茧房 / 回音室 | 只推你爱看的 → 你的世界越来越窄 |
| 热门偏置 | 第 1 节你已经撞见了:富者愈富,长尾内容永无出头日 |
| 成瘾性设计 | 优化「停留时长」的直接后果就是让人停不下来 |
| 偏见放大 | 训练数据里的社会偏见会被模型学会并放大 |
| 短期指标 vs 长期价值 | 标题党点击率高 → 模型学会推标题党 → 用户长期流失 |
工业界的通用解法:多目标优化 + 多样性约束 + 长期价值建模(第 11、12 节)。 但没有完美解——这是这个行业的持久课题,不是已解决的问题。
🗂️ 推荐系统的四种典型场景
不同场景,做法完全不同。搞清楚你在做哪种:
| 场景 | 例子 | 特点 |
|---|---|---|
| 信息流 Feed | 抖音、小红书、朋友圈 | 无限流、即时反馈、追求时长 |
| 相关推荐 | 「看了又看」「买了还买」 | 有明确锚点物品,上下文强 |
| 首页猜你喜欢 | 淘宝首页、Netflix 首屏 | 冷启动重、多品类平衡 |
| 通知/推送 | App Push、邮件推荐 | 打扰成本高,宁缺毋滥 |
🔗 这一章连到哪里
| 去哪 | 为什么 |
|---|---|
| 强化学习 01 | 推荐是典型的序贯决策 + 探索利用问题 |
| 上线之后 01 | 反馈闭环在所有线上模型里都存在,不只推荐 |
| 上线之后 12 | 「score 高 = 效果好」这一步怎么验证 |
✅ 检查点
- 搜索和推荐的根本区别是什么?
- 写出推荐问题的标准式子(三个输入)
- 三大流派各是什么?工业界实际用哪个?
- 为什么说「推荐系统会改变自己的训练数据」?
👀 答案
- 谁发起:搜索是用户主动给出关键词(「我知道我要什么」),推荐是系统主动猜(「我不知道我要什么」)。⭐ 一句话:搜索是「人找物」,推荐是「物找人」。
- score = f(用户 U, 物品 I, 上下文 C),然后按 score 排序取 top N。⭐ 后面所有复杂度都来自三个问题:f 怎么设计、U/I/C 怎么表示、1 亿物品怎么在 200ms 内算完。
- ①基于内容(看物品属性,新物品也能推但出不了圈)②协同过滤(看用户行为,能挖惊喜但有冷启动死穴)③混合/模型化(把①②和几百个特征一起喂给模型)。⭐ 工业界实际用③,但①②作为召回通路依然在跑——学①②不是学历史,是学零件。
- 因为用户只能对「你推给他的东西」做出反馈,而这些反馈又回流成下一轮的训练数据。⭐ 模型没推的东西,永远不会产生数据,也就永远学不到它好不好——这是一个自我强化的闭环,也是热门偏置和信息茧房的根源。(🔗 挑战项目 B 就是让你亲手把这个闭环跑出来。)
🛑 可以停在这里
⚡ 走神救援
推荐 =
score = f(用户, 物品, 上下文),排序取 top N。三大流派:内容、协同过滤、混合。真实系统是个漏斗:召回→粗排→精排→重排,200ms 内从 1 亿筛到几个。用户反馈会回流成训练数据,形成闭环。⭐ 那个 score = f(用户, 物品, 上下文) 的式子是整份教程的骨架:后面所有复杂度都来自三个问题 —— f 怎么设计(4/5/8/14 节)、U/I/C 怎么表示(3/7 节)、1 亿物品怎么在 200ms 内算完(6/10/15 节)。⭐⭐ 而反馈闭环是这一章最该记住的:模型没推过的东西永远不会产生数据,也就永远学不到它好不好 —— 热门偏置、冷启动、信息茧房、离线指标骗人,根子全在这一条上。
下一节 👉 03-数据长什么样.md