🏠 总目录📚 本教程 14 · RL 在推荐与智能体里
📑 本页目录(点开跳转)

14 · RL 在推荐与智能体里

20 分钟 | 🔌 和本库其他教程接线


🎯 一句话

RL 不只用在游戏和大模型对齐上。 推荐系统的冷启动、智能体的多步决策 —— 这两个站里各有一整个板块在讲的问题, 本质上都是强化学习问题。这一章把线接上。


🎰 一、推荐系统里的 RL

① 冷启动 = 多臂老虎机

   新物品上线,没有任何数据:
   ├─ 一直推它 → 万一是烂内容,浪费流量
   └─ 不推它   → 永远拿不到数据,永远不知道好不好 ⭐

   这就是【探索-利用】两难(第 7 章)

🔗 推荐算法第 13 章里的 Thompson Sampling, 就是第 7 章那个算法。 它之所以有效,是因为它按"这个臂是最优的概率"来采样 —— 天然地把探索预算分配给"可能很好但还不确定"的物品。

   ⭐ 推荐场景下的关键升级:【上下文老虎机】(Contextual Bandit)

   普通老虎机:每个臂有一个固定的回报分布
   上下文老虎机:回报还依赖【当前用户是谁】⭐

   → LinUCB / Thompson Sampling with features
   → 这是工业界推荐冷启动的实际做法

② 长期价值 = 序贯决策

   ⚠️ 推荐系统的经典问题:优化点击率 → 标题党、信息茧房

   因为 CTR 是【单步】指标,它看不到:
   ├─ 用户会不会因为内容质量差而流失
   ├─ 多样性对长期留存的影响
   └─ 今天推的内容如何改变用户明天的兴趣 ⭐

   ⭐ RL 的视角:把"一次推荐"看成一个动作,
     优化的是【整个会话/生命周期】的累计回报
传统推荐 RL 推荐
目标 单次点击概率 累计回报(留存、时长、GMV)
视角 每次独立预测 序贯决策
反馈 立即 可能延迟很久

⚠️ 但工业界用得很谨慎,原因很实际

   ① 【无法在线试错】⭐
      RL 需要探索,但探索 = 给真实用户推烂内容
      → 只能用离线数据,而离线 RL 很难(分布外动作的价值被高估)

   ② 【奖励定义难】
      "长期价值"到底是留存?时长?还是 GMV?
      定错了就是优化错方向

   ③ 【反事实问题】
      日志里只有"推了 A 用户点了",
      没有"如果推 B 会怎样" —— 缺少反事实数据 ⭐

   ④ 【非平稳】
      用户兴趣在变、内容池在变 → 学到的策略很快过时

🔑 实际的折中做法大部分工业系统用"上下文老虎机"(单步)而不是完整的 RL(多步) —— 因为它有可靠的理论保证、能在线学习、且风险可控。 完整的序贯 RL 主要用在能安全模拟的场景。


🤖 二、智能体里的 RL

   一个 Agent 的循环(你在智能体教程里见过):

   观察环境 → 决定下一步 → 执行工具 → 看结果 → 再决定 ...

   ⭐ 这【就是】MDP:
   ├─ 状态 = 当前上下文(历史 + 工具返回)
   ├─ 动作 = 调哪个工具、传什么参数
   ├─ 转移 = 工具执行的结果
   └─ 奖励 = 任务是否完成

🔗 智能体工程教程讲的是怎么用提示词和工具设计把这个循环做好, 这一章告诉你它在理论上是什么 —— 一个部分可观测的 MDP(POMDP)

为什么智能体训练比游戏 RL 难

难点 说明
奖励极稀疏 一个任务几十步,只有最后知道成没成
动作空间巨大 所有可能的工具调用 × 所有可能的参数
部分可观测 上下文窗口装不下全部历史
一步错步步错 早期的错误会污染后面所有的观察 ⭐
难以模拟 真实环境(改文件、发请求)不可回滚

✅ 现在实际在用的路线

   ① 【RLVR】⭐⭐ 最主流
      奖励 = 可自动验证的结果(单元测试通过、编译成功、答案正确)
      → 没有奖励模型,就没有奖励攻击(第 12 章)
      → 这是编程/数学智能体训练的主力

   ② 【过程监督 PRM】
      给推理的每一步打分,而不只是最终结果
      → 缓解奖励稀疏,且能定位是哪一步错了

   ③ 【拒绝采样 / 专家迭代】
      采样多条轨迹 → 保留成功的 → SFT
      → 简单、稳定,很多团队的第一选择 ⭐

   ④ 【搜索 + 学习】
      推理时用树搜索(MCTS 类)扩展,把好的轨迹回灌训练

💡 注意这四条路线的共同点它们都在想办法绕开"奖励模型不可靠"和"在线探索太贵"这两个问题。 这也是第 13 章那些免 RL 方法流行的同一个原因。


🧭 三、什么时候真的该用 RL

   ✅ 适合:
   ├─ 决策有【长期后果】,且短期指标会误导你
   ├─ 有【可靠的模拟器】或【可验证的奖励】⭐
   ├─ 探索的代价可以承受
   └─ 数据可以持续产生

   ❌ 不适合(用监督学习更好):
   ├─ 有大量高质量的标注数据 → 直接 SFT
   ├─ 单步决策、反馈立即 → 用分类/回归
   ├─ 探索代价极高(医疗、金融交易)⭐
   └─ 奖励难以定义 → 定错了比不做还糟

🔑 一条实用的判断如果你能写出"正确答案",用监督学习。 只有当你只能写出"这个结果好不好"时,才需要 RL。


🔗 四、它和本库其他教程的接线图

其他教程里的内容 对应本教程哪一章
推荐算法 13 · 冷启动的 Thompson Sampling 07 探索与利用
推荐算法 · 重排与多样性 序贯决策视角
全景导论 04 · 训练三阶段的 RLHF 11 PPO + 12 RLHF
全景导论 12 · 对齐与安全 12 + 13 DPO
智能体工程 · Agent 循环 02 MDP 的实例 ⭐
ML 基础 09 · 优化器 08 DQN11 PPO 的训练技巧
数学原理 08 · 偏差方差 0510 GAE 的核心权衡

✅ 检查点

  1. 推荐冷启动为什么是探索-利用问题?
  2. 什么是上下文老虎机?它比普通老虎机多了什么?
  3. 优化 CTR 会导致什么问题?RL 视角怎么看?
  4. 工业界对完整 RL 谨慎的四个原因?实际折中是什么?
  5. 智能体的循环对应 MDP 的哪些要素?
  6. 智能体训练比游戏 RL 难在哪五点?
  7. 现在实际在用的四条路线是什么?它们的共同点?
  8. 什么时候该用 RL、什么时候用监督学习?一句话判断。
👀 答案
  1. 因为新物品没有数据:一直推可能浪费流量,不推就永远拿不到数据——这正是探索-利用两难。
  2. 回报还依赖当前用户是谁(上下文特征),而不是每个臂一个固定分布。对应 LinUCB、带特征的 Thompson Sampling——这是工业界冷启动的实际做法
  3. 导致标题党、信息茧房。因为 CTR 是单步指标,看不到用户流失、多样性对留存的影响、以及今天推的内容如何改变明天的兴趣。RL 视角:把一次推荐当作一个动作,优化整个会话/生命周期的累计回报
  4. 无法在线试错(探索=给真实用户推烂内容)②奖励定义难 ③反事实问题(日志里没有"如果推 B 会怎样")④非平稳。折中:大部分工业系统用上下文老虎机(单步)而非完整 RL——理论保证可靠、能在线学习、风险可控。
  5. 状态=当前上下文(历史+工具返回);动作=调哪个工具传什么参数;转移=工具执行结果;奖励=任务是否完成。它是一个部分可观测的 MDP(POMDP)
  6. 奖励极稀疏(几十步只有最后知道成没成)②动作空间巨大 ③部分可观测 ④一步错步步错(早期错误污染后面所有观察)⑤难以模拟(真实环境不可回滚)。
  7. RLVR(可验证奖励,无奖励攻击,编程/数学智能体的主力)、过程监督 PRM拒绝采样/专家迭代、搜索+学习。共同点:都在绕开"奖励模型不可靠"和"在线探索太贵"这两个问题
  8. 如果你能写出"正确答案",用监督学习;只有当你只能写出"这个结果好不好"时,才需要 RL。

🛑 可以停在这里

走神救援

推荐里的 RL:①冷启动 = 多臂老虎机(一直推可能浪费流量,不推就永远没数据)→ Thompson Sampling;⭐工业界实际用的是上下文老虎机(回报还依赖当前用户是谁,LinUCB)②优化 CTR 导致标题党和信息茧房,因为 CTR 是单步指标看不到流失和长期兴趣变化 → RL 视角是优化整个生命周期的累计回报。⚠️工业界谨慎的四个原因:⭐无法在线试错(探索=给真实用户推烂内容)、奖励定义难、⭐反事实问题(日志里没有"如果推B会怎样")、非平稳;⭐折中:大部分系统用单步的上下文老虎机而非完整 RL智能体里的 RL:Agent 循环就是 MDP(状态=上下文,动作=调哪个工具传什么参数,奖励=任务是否完成),准确说是 POMDP。⭐比游戏 RL 难在五点奖励极稀疏(几十步只有最后知道)、动作空间巨大、部分可观测、⭐一步错步步错(早期错误污染后面所有观察)、难以模拟。实际四条路线:⭐⭐RLVR(可验证奖励→没有奖励模型就没有奖励攻击,编程/数学智能体主力)、过程监督 PRM、⭐拒绝采样/专家迭代(简单稳定,很多团队第一选择)、搜索+学习;⭐共同点:都在绕开"奖励模型不可靠"和"在线探索太贵"。⭐⭐判断该不该用 RL 的一句话:能写出"正确答案"就用监督学习,只有当你只能写出"这个结果好不好"时才需要 RL。

下一节 👉 15-实战与挑战项目.md

打卡记录保存在你的浏览器里,首页能看到总进度