课程总纲 / Introduction
本讲迁移自原课程讲义,经 AI 事实核查未发现存疑项,未逐页人工审核;如有出入,以原始论文和 CS285 课程资料为准。
学习目标
- 用一句话说清 RL 的问题设定:序贯决策 + 奖励最大化,并理解 reward hypothesis。
- 说清"深度学习负责感知/表示、RL 负责决策"的分工,以及二者合流为何是"深度 RL"。
- 列出 RL 相较监督学习被打破的四条假设:i.i.d.、有标签、平稳、单步无耦合。
- 建立"生成样本 → 估计回报/拟合模型 → 改进策略"的通用三步解剖,作为归类任何算法的坐标。
- 掌握四大算法家族(策略梯度 / 价值方法 / actor-critic / 基于模型)的样本效率-稳定性取舍。
- 理解"奖励从哪来"这一深层问题,及模仿 / 逆 RL / 世界模型 / 无监督技能等更大版图。
- 用一张决策表完成"该用哪类算法"的选型(承担 Midterm Review 的综合复习角色)。
这是整套资料的总纲——对应 CS285 的第 1 讲。它不推公式,而是回答四个”元问题”:强化学习(Reinforcement Learning, RL)到底在解决什么?为什么要用”深度”、为什么是现在?它和监督学习有何本质不同?以及,这门课的 25 讲会带你走过一张怎样的地图。读完本模块,你会得到一套坐标系:任何一个后续算法,你都能说出它属于哪个家族、修的是哪条主线的病、代价是什么。它是全书的”目录之上的目录”。
学习目标
- 用一句话说清 RL 的问题设定:序贯决策 + 奖励最大化,并理解 reward hypothesis。
- 说清”深度学习负责感知/表示、RL 负责决策”的分工,以及二者合流为何是”深度 RL”。
- 列出 RL 相较监督学习被打破的四条假设:i.i.d.、有标签、平稳、单步无耦合。
- 建立”生成样本 → 估计回报/拟合模型 → 改进策略”的通用三步解剖,作为归类任何算法的坐标。
- 掌握四大算法家族(策略梯度 / 价值方法 / actor-critic / 基于模型)的样本效率-稳定性取舍。
- 理解”奖励从哪来”这一深层问题,及模仿 / 逆 RL / 世界模型 / 无监督技能等更大版图。
- 用一张决策表完成”该用哪类算法”的选型(承担 Midterm Review 的综合复习角色)。
1. 什么是强化学习 / 序贯决策
强化学习研究的是序贯决策(sequential decision making) 问题:一个智能体(agent) 在环境(environment) 中反复地”观察状态 → 采取动作 → 得到奖励与新状态”,目标是让长期累计奖励最大。它与监督学习最大的区别是这里存在一个闭环反馈:你此刻的动作会改变你下一刻看到什么。
整套目标可以浓缩成一个式子(模块 02 会正式展开):找到一个策略 ,最大化在其诱导的轨迹分布下的期望累计折扣奖励
先把式中记号交代清楚(模块 02 会严格定义): 是目标函数,即我们要最大化的”总分”; 是一条轨迹(一次完整交互序列 ), 是策略 诱导的轨迹分布, 表示对这些随机轨迹取平均; 是每步奖励; 是折扣因子——给第 步奖励乘上越来越小的权重 。奖励有界时, 保证无限折扣和收敛; 常用于有限时域或能保证终止的 episodic 任务,平均奖励等无限时域设定则采用不同目标。折扣也可表达”近期回报比远期更确定、更该看重”(常取 )。
为什么这样 · 能不能不这样
为什么式(0.1) 最大化的是”期望” ,而不是别的统计量? 因为环境动态与策略都带随机性,同一策略每次 rollout 的回报都不同;在线性、时间可加的标准 MDP 中,期望带来简单的贝尔曼递归,也让梯度能穿过求和号(模块 03)。非线性风险目标通常需要改写递归、扩充状态,或采用满足时间一致性的风险度量。
能不能不用期望? 能,但要换目标、付代价:(1) 最坏情况(minimax / robust RL)——最大化逐点最小值而非均值,对抗最差的动态扰动,代价是策略可能过度保守;逐点最小值在活跃分支切换处通常非光滑,因而优化可能更难;(2) 风险敏感(CVaR、均值-方差)——只关心最差 尾部的平均回报,适合金融/医疗/安全攸关场景,代价是尾部样本稀少、估计方差大,且失去”可加性”使自举/GAE 这套机器难以直接套用。所以”期望”不是唯一正解,而是可算性与建模真实性之间最省事的默认;一旦你真正在意的是”别出大事”而非”平均分高”,就该主动把它换掉。
Reward Hypothesis(奖励假设)
RL 建立在一条大胆的信念上:任何目标都可以被表达为”最大化某个标量奖励的期望累计”(Sutton)[1]。“赢棋""走得快而不摔""生成让人满意的回答”——统统压缩成一个数 。这既是 RL 的威力,也有把丰富意图压成标量而失真的风险(引出后面的 reward hacking 与”奖励从哪来”问题)。
批判性追问:‘任何目标都能压成一个标量奖励’——真的吗?
这句听起来无所不能,但它是一条信念(hypothesis)而非定理,至少有三处隐含假设值得逐一质疑。
- 多目标常不可标量化(反例)。 安全、速度、能耗、舒适之间往往没有公认的换算率——帕累托前沿上并不存在唯一”最优”点。硬压成一个加权和 ,等于偷偷替使用者选定了权重 ;而不同权重给出不同最优策略,“目标”其实被这组人为系数悄悄决定了。
- 靠什么假设。 若要诉诸期望效用表示,除偏好完备且可传递外,还需要连续性、独立性等条件。现实里的人类意图可能不完备、随情境漂移,这些条件并不总满足。
- 更棘手的是”指定”问题。 即便理想标量奖励存在,我们也常写不对它,只能给一个可测的代理(proxy)——于是 Goodhart 定律 / reward hacking:模型优化代理而非真实意图(详见 §8 的奖励张力与 §7.3 图 5)。
- 如何补救 / 是否仍开放。 多目标 RL、约束 MDP(CMDP)、CVaR 风险目标、从偏好反推奖励(RLHF)都在松绑”单标量”这条假设。但”把模糊人类意图工程化为不可钻空子的目标”仍是开放难题(见 §7.3 编者按)。所以更稳妥的读法是:reward hypothesis 是一个好用的工作假设,不是普适真理。
前沿实验室视角
把上面这条”奖励假设”推到极端,DeepMind 的 David Silver、Richard Sutton 等在《Reward is Enough》(2021)里提出了更强的 “奖励足矣”假说:智能的种种能力(感知、语言、社交、泛化等)也许都能作为在丰富环境中最大化单一标量奖励的副产品自然涌现,而无需为每种能力单独设计机制。这是论文提出的研究假说,不是已经确立的实验结论 [2]。
公开实践表明,RL 可以在自博弈和推理训练中持续利用新采样反馈。OpenAI 对 o1 的公开说明称其使用大规模强化学习训练推理,并报告训练时 RL 计算与测试时思考增加时性能改善 [3]。这些结果说明 RL 是超越固定示范数据的一条途径,但不是唯一途径(详见模块 13)。
关于 RL 的定位,有一个流行的”分工”说法:深度学习负责”感知/表示”(把像素、文本、传感器读数变成特征),强化学习负责”决策”(在表示上选行动最大化长期回报)。这个二分法便于入门,但它其实是流水线工程时代的历史包袱,正在被前沿系统抹平——真正深刻的图景是下面这条。
本质 Insight:感知与决策的边界正在消融(端到端 thesis)
“先感知、再决策”的模块化分工,隐含一个假设:存在一套与任务无关的通用表示,可以先固定下来、再交给决策模块使用。但这个假设往往是错的——什么特征有用,取决于你要做什么决策。前沿系统因此走向端到端(end-to-end):原始感官流直接映射到动作,所谓”感知”不再是一个独立模块,而是被决策目标反向塑造、隐式涌现在网络内部的副产品。
- 特斯拉 FSD(v12 起):公开版本说明称,其城市道路驾驶栈升级为单个端到端网络,以替代大量显式代码;这不等于整个系统没有手写模块或安全控制 [4]。
- VLA(视觉-语言-动作模型):把视觉、指令与动作建模放进同一系统,使感知表示服务于操作任务。
- LLM agent:文本进、动作 token 出——“理解”只是为了更好地决定下一步说什么/做什么。
所以”深度 × 强化”真正合流的地方,不是”两个模块相加”,而是让表示由奖励/任务来定义。这也解释了 RL 为何在大模型时代愈发重要:它提供了那个”目标”,去塑造原本只会模仿的表示。(这条主线在 模块 08(世界模型) 与 模块 13 会反复出现。)
编者按 · 批判性视角
编者判断:CS285 以”感知 vs 决策”的模块化视角讲 RL 的动机,适合作为入门脚手架,但不应视为固定边界。端到端系统会联合优化表示与决策,因此学习本课时应同时保留模块化与联合优化两种视角。
2. 为什么是”深度”、为什么是现在
经典 RL(表格型、线性函数逼近)在小状态空间里早已成熟,但真实世界的状态是高维原始输入:图像的像素、机器人的传感器流、一整段对话上下文。手工设计特征既费力又脆弱。深度学习提供了一个通用的、可端到端训练的函数逼近器——于是可以直接从像素/原始输入到动作学习策略与值函数,不再需要人工特征工程。这就是”深度强化学习(deep RL)“:用深度网络作为 RL 中策略 、值函数 、乃至环境模型 的表示。
- 端到端(end-to-end):感知与决策联合优化,表示为决策服务,而非先固定一套通用特征。
- 可扩展:网络容量、算力、数据三者同增,让 RL 首次能处理 Atari 像素、围棋棋盘、真实机器人视觉。
- 合流的时机:2013 年 DQN 从像素直接学 Atari、2016 年 AlphaGo 击败人类,标志”深度 + RL”正式合流;2022 年起 RLHF 又把它推到大模型后训练的舞台中央。
本质 Insight:为什么”深度”改变了游戏规则?
RL 一直缺的不是”如何决策”的理论,而是”如何在高维原始输入上表示策略/值”的能力。深度网络把这块短板补上后,RL 的老问题(信用分配、探索、稳定性)反而被放大到了新尺度——所以本课很多内容,是在”深度函数逼近”这一新语境下重新审视经典 RL 的每一个难点。
前沿实验室视角
为什么”算力 + 通用方法”才是主线?Richard Sutton(RL 奠基人之一)在《苦涩的教训》(The Bitter Lesson,2019)里给了一个被反复引用的判断:回顾 AI 七十年,依赖算力增长的通用方法——大规模搜索与学习——长期总会压倒精心手工注入的领域知识。人们一次次想把人类先验塞进系统以换取短期领先,又一次次被”能随算力扩展的通用方法”反超(棋类里的搜索、语音与视觉里的统计学习皆是如此)。这给本节的时机判断补了一条更深的理由:真正让”深度 × RL”起飞的,与其说是某个巧妙特征,不如说是把感知与决策都交给可随算力扩展的端到端学习与搜索——这也正是后文自博弈(AlphaZero)与大模型后训练走的同一条路。
3. RL 与监督学习的本质区别
理解 RL 之难,最好的办法是逐条对照它打破了监督学习的哪些前提。监督学习舒适地站在”独立同分布 + 有正确标签”的地基上;RL 把这块地基几乎全拆了。
| 维度 | 监督学习 | 强化学习 |
|---|---|---|
| 数据分布 | i.i.d.,训练=测试分布 | 非 i.i.d.:动作改变后续状态分布(分布漂移) |
| 监督信号 | 每个样本有正确标签 | 只有标量奖励,且常延迟/稀疏,无”正确动作” |
| 反馈时机 | 即时、逐样本 | 延迟:一步的好坏可能几十步后才显现(信用分配) |
| 数据来源 | 固定数据集 | 需主动探索自己产生数据 |
| 平稳性 | 目标固定 | 策略变→数据分布变→目标非平稳 |
由此衍生出 RL 独有的四大难点:
- 信用分配(credit assignment):赢了一整局,功劳该记在哪几步动作上?奖励延迟使”因果归因”变难。
- 探索(exploration):没有标签告诉你更好的动作,只能试——但试错要付代价,探索与利用(exploitation)必须权衡(模块 10)。
- 非平稳(non-stationarity):策略一更新,它采到的数据分布就变了,优化的是一个”移动的靶子”。
- 分布漂移(distributional shift):策略部署时遇到的状态分布 ≠ 训练时的分布,是模仿学习与离线 RL 的核心病根(模块 01、09)。
本质追问:RL 为什么比监督学习难?
一句话:监督学习是”拟合一个固定分布上的映射”,RL 是”优化一个由你自己不断改变的分布上的目标”。 你的策略既是被优化的对象,又是产生训练数据的源头——这个自指的闭环,同时制造了信用分配、探索、非平稳、分布漂移四座大山。后面每一讲,几乎都能对应到”它在缓解这四座山里的哪一座”。
4. 应用全景
为什么值得学?因为过去十年最耀眼的一批 AI 成果,其决策内核都是(深度)强化学习。
| 领域 | 代表工作 | 意义 |
|---|---|---|
| 游戏(像素→动作) | DQN(Atari)、AlphaStar、OpenAI Five | 证明可从原始像素端到端学出超人策略(模块 05) |
| 棋类 / 规划 | AlphaGo → AlphaZero → MuZero | 自博弈 + 搜索 + 学到的模型,规划与学习结合(模块 08) |
| 机器人运动 / 操作 | 四足奔跑、灵巧手转魔方、抓取 | 连续控制、sim-to-real、真实世界样本稀缺(模块 04/08) |
| 系统 / 科学 | 芯片布局、数据中心冷却、核聚变等离子体控制 | 把工程优化问题化为序贯决策 |
| 推荐 / 运筹 | 推荐系统、库存与调度 | 长期收益优化,off-policy 与离线 RL 场景 |
| 大语言模型后训练 | RLHF、DPO 等直接偏好优化、可验证奖励训练 | RL 优化与直接偏好优化共同构成后训练工具箱(模块 13) |
前沿:为什么 RL 正在成为大模型的”后训练核心”
预训练用海量文本做下一 token 预测(本质是模仿/监督);后训练则可使用偏好或可验证结果。RLHF 等方法用奖励优化策略,DPO 则绕过 RL 训练循环直接优化偏好目标 [5]。公开说明显示,o1 使用大规模强化学习训练推理 [3];这说明 RL 是大模型后训练的一条重要路线,而非唯一技术路径。详见模块 13。
5. 一个 RL 算法的解剖(三步循环)
CS285 的一个统一视角:几乎所有 RL 算法都在循环执行同样的三步。记住这张图,你就有了归类新 RL 算法的坐标系。
三步分别对应三个工程问题:① 怎么与环境交互采数据(on-policy 还是可回放的 off-policy);② 用采样回报、还是拟合值函数、还是学一个动态模型来估计”这一步有多好”;③ 用策略梯度、贪心 、还是模型内规划来更新。不同的组合,就是不同的算法家族。
为什么这样 · 能不能不这样
为什么第①步默认”运行当前策略、边跑边采”新数据? 因为 RL 优化的是策略自己诱导的轨迹分布下的回报(式(0.1) 里的 ):策略一改,它会遇到的状态分布随之改变,只有让数据来自”策略此刻真正会去的地方”,估出的回报/梯度才对得上要优化的量。这也是 on-policy 方法必须”用完即弃”的根源。
能不能不在线交互、只用一批固定的死数据? 能——这就是离线 RL(offline RL):给定一份别人采好的日志(人类操作、旧策略、历史记录)直接学,避免昂贵/危险的在线试错,特别适合医疗、自动驾驶路测、推荐日志这类”不能拿真实环境做实验”的场景。代价是分布外(OOD)高估:学到的策略一旦想做数据里没出现过的动作,值函数会对这些没见过的动作盲目乐观,却永远没有新交互来纠错,训练随之发散。补救靠保守/悲观估计(CQL、TD3+BC,把没见过的动作压低),本质是用”不敢偏离数据”换”不会被幻觉带偏”——这正是 模块 09 的主线。
6. 算法家族全景与取舍
把第②③步的选择铺开,就得到几大主干家族。它们并非彼此孤立,而是可以摆到一条”样本效率”主轴上——这正是 Sergey Levine 那张经典的谱图所揭示的:越”省样本”的方法引入越多结构假设(学模型、自举、复用旧数据),越”费样本”的方法越简单、越稳、越易并行。下表从最省样本到最费样本排列,随后用两张图把这条主轴与其上的谱系画出来。
| 家族(按样本效率从高到低) | on/off-policy | ② 估计什么 | ③ 如何改进 | 样本效率 | 稳定性 | 模块 |
|---|---|---|---|---|---|---|
| 基于模型 · 浅层(如 PILCO/GP) | off-policy | 低容量动态 (高斯过程/线性) | 解析梯度 / 规划 | 最高 | 中(模型偏置大) | 08 |
| 基于模型 · 深层(神经动态) | off-policy | 神经网络动态 | 规划 / 反传通过模型 | 很高 | 低-中(模型误差累积) | 08 |
| 价值方法 Value-based | off-policy | 拟合 (贝尔曼最优) | 隐式贪心 | 高 | 中(致命三要素) | 05 |
| Actor-Critic(分界带) | off↔on 皆可 | 拟合 (critic) | 优势加权更新 actor | 中 | 中 | 04 |
| 策略梯度 Policy Gradient | on-policy | 采样回报 (可加 baseline) | 沿 上升 | 低 | 高(近乎无偏) | 03 / 06 |
| 无梯度 / 黑箱 Gradient-free | —(不分策略) | 只看总回报 (黑箱标量) | 参数扰动搜索:ES/CEM/CMA-ES | 最低 | 高(无自举/无梯度噪声) | 08(CEM) |
补充:无梯度(黑箱优化)家族——样本效率的下限
谱的最右端(最费样本)是无梯度方法(gradient-free / black-box optimization):进化策略(Evolution Strategies, ES)、CEM(交叉熵方法)、CMA-ES、遗传算法、增广随机搜索(ARS)。它们把整条轨迹的总回报当成一个黑箱标量函数 ,纯粹在参数空间做扰动搜索——既不用反向传播,也不利用 MDP 的时间结构(不做逐步信用分配、不用贝尔曼递归)。
- 代价:样本效率最低。 放弃了梯度与时序信用分配这两大信息来源,只能靠”多撒点、看谁回报高”,在高维参数下受维度诅咒拖累。
- 它仍不可替代的场景: 奖励不可导 / 极稀疏 / 只有终局、策略含离散或非光滑结构、或你有海量廉价并行(ES 只需前向、天然可扩展到上千 CPU,Salimans et al. 2017 曾用它在 Atari/MuJoCo 上匹敌 PG)。CEM/CMA-ES 也是 模块 08 里 MPC 规划的核心求解器。
一句话:当你既拿不到梯度、又不缺样本/算力时,无梯度方法反而是最省心的选择;否则它几乎总是被利用了梯度或时序结构的方法击败。
PPO 系 RLHF 延续 actor-critic 与近端策略优化;DPO 从 KL 正则偏好目标推导出离线直接偏好优化,并非 PPO 的算法后代 [5]。
本质 Insight:为什么样本效率 ≠ 越高越好?
样本效率高的方法(学模型、off-policy)靠”更多假设”换”更少交互”,一旦假设失真(模型误差、分布不匹配)就更容易崩。仿真或生成可以并行,但并行只降低部分墙钟延迟,不会消除总 FLOPs、显存与服务成本。LLM rollout 往往仍是吞吐瓶颈;选算法要同时看采样、计算、通信和并行度。
小注(定量直觉:计算 vs 采样瓶颈如何拍板家族选择)。 设一次策略更新需 条 rollout,采样一条的成本为 、其余计算为 。真实机器人常由交互时间、安全与硬件成本主导;仿真和 LLM 生成虽可并行降低延迟,但总采样计算仍大致随 token 或轨迹数增长。家族选择因此取决于采样成本、总计算、并行度与通信开销,而不能把并行等同于采样免费。
7. 超越奖励最大化:学习信号从哪来
前六节都默认”奖励 是给定的”。但这既不总成立、也不是唯一可能。把视角拉高:RL 的本质是”从某种反馈信号中学会决策”,而”最大化一个给定的标量奖励”只是获取并使用信号的一种(最理想的)方式。 于是”超越奖励最大化”其实有两条正交的路——这也是本节要抽象出的核心方法论。
核心方法论:两个正交方向去”超越奖励最大化”
- ① 换信号(“奖励从哪来”):奖励只是众多学习信号之一。当明确的可验证奖励不可得时,就沿一条”信号来源谱”退而求其次——可验证奖励 → 真实结果 → 人类/AI 偏好 → 专家示范 → 自我验证/自博弈 → 纯内在信号(见 7.1)。
- ② 换框架(连”标量期望最大化”都替换):即便有奖励,也未必要用”在原始动作上最大化标量期望”这个框架——可改成时间抽象、博弈均衡、目标+约束、到达任意目标、条件序列生成、优化整个分布……(见 7.2)。
一句话:先问”信号从哪来”,再问”要不要换个优化框架”。 把 CS285 后半程那些看似分散的方向,都能装进这两个抽象里。
7.1 换信号:学习信号的来源谱
把”奖励从哪来”系统化:按信号的客观性 / 可获取性从高到低排成一条谱。越靠上越客观可靠、越好 RL 化;越靠下越主观稀缺、越难。每一层都对应一族经典范式——它们不是并列的孤岛,而是”信号越弱、越往下退”的连续台阶:
| 信号来源(客观性 ↓) | 拿到什么信号 | 代表范式 / 方法 | 局限 |
|---|---|---|---|
| ① 可验证奖励 | 验证器给的客观分(单测 / 标准答案 / 形式证明) | 数学、代码、游戏等可自动核验任务 | 仅覆盖有 ground-truth 的领域 |
| ② 真实结果指标(outcome) | 真实后果(点击 / 成交 / 留存 / 盈亏 / A-B 提升) | 推荐·广告·交易·运营(agentic 长时程 RL) | 稀疏、滞后、嘈杂;长时程信用分配难 |
| ③ 偏好 → 学奖励(RLHF/RLAIF) | 成对偏好 / 按 rubric 打分(人或强模型) | RM、过程奖励 PRM、LLM-as-judge、宪法 AI(模块 13) | 代理泄漏、可被 hack、评审偏差;受评审者识别能力限制,超越监督者较困难且难以可靠验证 |
| ④ 专家示范 → 模仿 / 逆RL | 专家行为(不含奖励) | BC/DAgger(模块 01)、MaxEnt IRL/GAIL(模块 07) | 难超越专家、奖励歧义、示范难获取 |
| ⑤ 自我验证 / 自博弈 | 一致性 / 对手 / 辩论 | self-consistency、debate、self-play(AlphaZero,模块 08) | 验证器可能错、需对称或可核查结构 |
| ⑥ 无外部信号 → 内在 / 自造目标 | 好奇心 / 赋能 / 多样性 / 自设目标 | 无监督 RL·技能发现、目标条件 RL + HER(模块 12) | 内在信号未必对齐真正的下游目标 |
这条谱把原本分散的”模仿 / 逆RL / 无监督”与”奖励不可验证时的各种造奖励路线”统一成同一根主线。
工程元原则:验证不对称 → “制造可验证性”
决定一个任务能否被 RL 高效攻克的,往往是”验证成本 ÷ 生成成本”这个比值:当”检验对错”远比”生成”便宜(P/NP 式不对称),信号就可靠、客观、可自动大规模获取——数学/代码正处在这个甜区。因此把 RL 推向新领域的元策略不是发明新算法,而是”制造可验证性(manufacture verifiability)“:为模糊领域构造验证器、评分细则、模拟器与结果度量,把它从谱的下层拉到上层。谁能把模糊任务变得”可验证 / 可打分”,谁就能把它 RL 化。
7.2 换框架:超越”标量期望奖励最大化”本身
第二条路更激进:即使有奖励,也可以替换掉”在原始动作上最大化标量期望”这个框架本身。几支重要方向:
- 分层 RL(HRL):学时间抽象(选项 / 子目标层级),攻长时程信用分配与稀疏奖励,与 agentic 多轮的层级分解一脉相承。
- 多智能体 / 自博弈:有其他学习者时,“最大化”变成求博弈均衡;自博弈是 AlphaZero/AlphaStar/OpenAI Five 的内核,并天然提供”对手即自动课程”的开放式信号(模块 08)。
- 安全 / 约束 / 风险敏感(CMDP):在满足安全 / 成本硬约束下优化,或优化 CVaR 等风险度量而非期望——把”单标量期望”扩展为”目标 + 约束 + 风险”,是机器人 / 医疗 / 金融落地的前提。
- 目标条件 RL:学”到达任意指定目标”的通用策略(UVFA + HER),把奖励从”外部给定”变成”自己指定的目标”(模块 12)。
- RL 即序列建模(Decision Transformer):把”最大化回报”重述为”以目标回报为条件、自回归生成动作”,绕开 TD / 贝尔曼与显式奖励最大化,直接接上大模型的序列建模(模块 09 / 13)。
- 分布式 / 表示驱动:学回报的整个分布(C51/QR-DQN,模块 05)以优化风险、提供更稳信号;或用自监督辅助任务先学好表示(呼应 §2 端到端 thesis)。
- 控制即推断 / 世界模型 / 迁移多任务:把奖励当”最优性证据”做概率推断(模块 07)、学世界模型当规划脚手架(模块 08)、为”一族任务”学可迁移技能(模块 12)。
本质追问:为什么”一个算法学很多任务”是圣杯?
今天绝大多数 RL 成果仍是”一个任务一个策略、重头训练”。真正的通用智能需要一次学习、处处复用。这也是 RL 与大模型合流的动因——预训练大模型天生是”多任务表示器”,把它作为策略底座 + 用 RL 做任务特定后训练,可能是通往”通用决策体”的现实路径。“信号从哪来”与”一个模型学很多任务”,是贯穿本课后半程的两条暗线。
7.3 落到现实:coding 之外的高价值经济任务前路
把上面两条路应用到真实经济价值时,最硬的墙就是 7.1 讲的奖励规格问题。这解释了一个显著现象:RL 能力最先在数学与代码上爆发——它们有近乎免费、客观、即时的验证器(单测/编译器/形式证明),稳居”信号来源谱”最上层;而研究、管理、写作、医疗、法律等高价值工作落在谱的下层(好坏主观、多维、滞后、有争议),所以慢。把经济任务按可验证性排开,大致就是它们被 RL 化的时间顺序:
可扩展监督(scalable oversight):给”超人任务”发奖励
最深的难题是当模型输出超出人类判断力时如何给奖励(评审者比被评者更弱)。这类”可扩展监督”的代表路线:
- 过程监督(PRM):奖励每一步推理而非仅看结果——步骤比结论更易核查,还能抑制 reward hacking(模块 13)。
- 辩论(debate):让两个模型对同一问题各执一词,人类只需判断”哪边论证更站得住”——评判辩论比评判答案容易。
- 递归奖励建模 / 迭代放大(RRM / IDA):把难任务分解成人可评估的子任务,用 AI 助手帮人评估更难的整体。
前沿判断:coding 之外的经济任务会怎么被 RL 逐步攻克
编者判断:这些任务将大致按”结果可被廉价、可靠、快速验证的程度”依次被 RL 化——先是有硬验证器的(数学/代码/形式化),再到反馈逐渐滞后、嘈杂或主观的任务。攻克后者可能需要:(1) 制造可验证性(把模糊质量拆成 rubric / 造验证器 / 建模拟器);(2) 真实结果闭环(把长期真实后果作为延迟奖励);(3) 可扩展监督(过程监督、辩论与 AI 辅助评审)。
编者按 · 一个反直觉但重要的结论
越往谱系右端走,奖励越是”代理(proxy)“,Goodhart 定律与 reward hacking 的税就越重:优化一个漏水的代理奖励,模型会学会刷指标而非真做好事(为 CTR 做标题党、迎合评审者的偏好、钻测试用例的空子)。因此这条扩张之路必然伴随 KL 正则 / 保守优化(KL 即 KL 散度,衡量新、旧两个概率分布的差异;用它当惩罚项以”限制偏离参考”模型)、过程与结果奖励并用、以及”人类或更强模型在环”的持续监督。由此得到一个对从业者更根本的判断:未来最稀缺、最有价值的能力,可能不是”训练 RL”,而是”把一个模糊的人类意图,工程化为一个不易被钻空子的、可验证或可打分的目标”——即”说清楚我们到底想要什么”。这与模块 15 的”奖励从哪来”母题、以及 模块 14 的可扩展监督一脉相承。
8. 深度 RL 为什么难:核心张力(不止四条)
最后,把全课要反复搏斗的困难提炼成几条张力。最常被提炼、也最能串起本课的是下面这四条核心张力;但它们并不穷尽——随后再补几条同样第一性的困难。之后每读一讲,都可以问自己:“它在缓解哪一条,代价是什么?“(注意:这些是表层张力;其下还有一个更底层、几乎贯穿所有方法的旋钮——偏差-方差权衡,见 8′。)
A. 四条核心张力(最经典的提炼):
| 主线 | 难在哪 | 典型对策 | 相关模块 |
|---|---|---|---|
| 稳定性 Stability | 自举 + off-policy + 函数逼近的”致命三要素”,训练易发散/震荡 | 目标网络、信赖域/裁剪(TRPO/PPO)、保守估计 | 05 / 06 / 09 |
| 样本效率 Sample efficiency | 真实交互昂贵、危险、缓慢 | off-policy 回放、model-based、离线 RL | 04 / 08 / 09 |
| 奖励设定 Reward | 难设计、易被”钻空子”(reward hacking) | IRL、RLHF/偏好、可验证奖励 | 13 |
| 探索 Exploration | 稀疏/延迟奖励下高效试错 | 内在激励、UCB/Thompson、RND | 10 |
B. 同样第一性、却常被那四条”顺带带过”的困难——它们值得单独点名:
| 主线 | 难在哪 | 典型对策 | 相关模块 |
|---|---|---|---|
| 信用分配 / 长时程 Credit assignment | 奖励延迟 → “功劳该记在哪几步”难归因;长时程(agentic 多轮)尤甚。与探索相关但不同:探索是”没试过”,信用分配是”试了但分不清谁的功” | 优势估计 / GAE、n-step、λ-return、层级 RL、过程奖励 PRM | 04 / 12 / 13 |
| 泛化 / 过拟合 Generalization | 策略易对训练环境、布局、随机种子过拟合,换未见状态/任务就崩;sim-to-real 有差距 | 域随机化、环境多样性、正则、表示学习、大规模预训练底座 | 12 |
| 可复现性 / 脆弱性 Reproducibility | 对随机种子、超参、实现细节极端敏感,“换个 seed 就翻车”、论文难复现 | 多种子评估(rliable)、标准化实现、公开 code-level 细节 | 06 / 11 |
| 部分可观测 & 非平稳 POMDP / Non-stationarity | 观测非马尔可夫(真实世界几乎都是 POMDP);策略一更新数据分布就变、多智能体互为”移动靶” | 记忆(RNN/Transformer/信念状态)、信赖域限步、集中式训练 | 02 / 12 |
| 表示与可塑性 Representation & plasticity | 非平稳目标下网络出现”可塑性衰退”(primacy bias、休眠神经元),越训越学不动 | 周期性重置、正则、更好的表示 / 辅助任务 | 05 / 08 |
前沿:这些主线在 LLM RL 里同时出现
LLM 的 RL 后训练会同时面对这些张力:策略更新的稳定性、生成样本的计算成本、奖励模型的代理偏差、采样多样性、长时程信用分配,以及训练分布外的泛化。学完全课再看模块 13、14,会发现这些前沿难题仍可由经典 RL 问题来分析。
8′. 底层旋钮:偏差-方差权衡贯穿全部方法
如果追问”为什么会有致命三要素、为什么样本这么贵”,会发现上面四条张力背后共享同一个更底层的旋钮:偏差-方差权衡(bias–variance trade-off)。几乎每一个 RL 方法,本质上都是在”用多少偏差换多少方差”这条轴上选了一个点——这也是全篇反复出现的同一个动作。它之所以是”底层旋钮”,是因为四条表层张力里至少两条是它的直接投影:
- 方差高 → 单次估计噪声大 → 要么用更多样本去平均(伤样本效率),要么更新方向剧烈抖动(伤稳定性)。
- 偏差大 → 系统性偏离真值 → 被自举沿时间反复放大,正是致命三要素的发散、Q 值过估计(稳定性的另一半)。
换句话说:“稳定性”与”样本效率”这两条张力,很大程度上就是偏差-方差这一个旋钮的两个侧影。
把全篇的方法摆到这条轴上,你会看到同一个动作在反复上演——而且每个都是一个可两头拧的旋钮:往一端拧降方差(代价:偏差↑),往另一端拧降偏差(代价:方差 / 算力↑)。下表把两个方向都列出来:
| 旋钮 / 方法 | ← 往「低方差·高偏差」端拧(做法 / 代价) | 往「低偏差·高方差」端拧 →(做法 / 代价) | 模块 |
|---|---|---|---|
| GAE / n-step 的 λ | λ→0(趋 TD):多用自举,方差↓、偏差↑ | λ→1(趋 MC):少用自举,偏差↓、方差↑ | 04 |
| 自举深度(TD ↔ MC) | 用估计的 V 代替真实回报 → 方差↓、自举偏差↑ | 增大 n / 用更大更准、训练更充分的 critic → 自举偏差↓、方差或算力↑ | 04 / 05 |
| baseline / critic | 与动作无关的 baseline 作为控制变量可降方差且不改变期望;若优势估计含自举或共享参数处理不当,则可能引入偏差 | 提升 critic 容量与训练充分度,或用真实回报校正 → 自举偏差↓、方差/算力↑ | 03 / 04 |
| 折扣因子 γ | 调低 γ 截断远期 → 方差↓、“短视”偏差↑ | 调高 γ→1 → 短视偏差↓、方差↑(视野变长) | 02 / 11 |
| 重要性采样(off-policy) | 截断 / 裁剪权重(PPO clip、V-trace)→ 方差↓、引入截断偏差 | 用完整无偏 IS 或 Retrace 校正分布不匹配 → 偏差↓、方差↑ | 03 / 06 |
| 目标网络 | 冻结目标、慢同步(Polyak τ 小)→ 方差↓/更稳、滞后偏差↑ | 提高同步频率 / 减小滞后 → 滞后偏差↓、方差↑ | 05 |
| 基于模型 rollout | 拉长模型 rollout、多用模型数据 → 样本方差↓、模型偏差↑ | 缩短 rollout、用更大 / 集成模型、模型误差感知 → 模型偏差↓、样本或算力↑ | 08 |
| 保守 / 悲观(CQL·TD3+BC) | 增大保守系数 → 压住 OOD 高方差外推(主动加悲观偏差) | 减小保守系数 → 悲观偏差↓、OOD 高估风险↑ | 09 |
| 组内基线与归一化 | 只减含自身的组均值时,与留一优势相差常数缩放;再除随机组标准差会改变样本权重 | 增大组 可稳定组统计,但生成算力随之增加 | 13 |
| 两端参照:纯 MC / REINFORCE(无偏、方差最高,轴最左)↔ 强自举 / 重模型 / 强保守(方差最低、偏差主导,轴最右) |
本质 Insight:该吃多少偏差,取决于”方差能多便宜地被压下去”
偏差与方差有个不对称:独立样本均值的方差会随批量增大而下降,而偏差是系统性的、再多数据也不会自己消失。 于是”你该在这条轴上站哪”由预算决定:真实机器人交互昂贵时,常愿意用自举、模型或保守估计以偏差换取较低方差;LLM rollout 相较真实机器人更易批量并行,但总 token 生成成本仍可能主导训练,不能据此认定生成便宜或预设某一算法必然更优。瓶颈决定可负担的方差,也影响可接受的估计偏差。(跨模块的完整讨论见模块 15。)
9. 附录:符号 · 工程 · 选型复习
9.1 概率与符号约定(对应 S2.1 Probability Review)
全书统一使用以下记号,先在此备查(细节在模块 02 展开)。
| 记号 | 含义 |
|---|---|
| 期望:随机量的加权平均,RL 目标 就是一个期望。 | |
| 条件期望 / 全期望公式:贝尔曼方程按”先当前、后未来”分层求期望的依据。 | |
| 方差:策略梯度降方差(baseline/优势)的度量对象。 | |
| KL 散度:信赖域/PPO 约束”新旧策略别差太远”、RLHF 正则的核心量。 | |
| 重要性采样(importance sampling):用行为分布 的样本估计目标分布 的期望,off-policy 与 PPO 的地基。 |
为什么这几个记号最关键
RL 的一切都在和”依赖参数的分布上的期望”打交道: 是期望→要求梯度;条件期望→贝尔曼递归;KL 与重要性采样→跨分布复用数据并控制步长。掌握这五行,后续每个推导都只是它们的组合。
9.2 工程实践指引(对应 S1 PyTorch Tutorial)
范围说明
CS285 的 Section 1 是 PyTorch 上手教程,属工程实践,不在本资料的”原理推导”范围内。若你需要补齐实现基础,建议直接学习 PyTorch 官方教程,并结合 OpenAI Spinning Up 的算法实现来对照本资料的公式与伪代码。本资料聚焦”为什么这样算”,代码实现请以这两处为工程指引。
9.3 算法选型决策(综合复习,承担 L21/L22 Midterm Review 角色)
把前面的取舍收束成一张 “该用哪类算法” 的决策表——这也是对全课前半程的综合复习:先问采样成本,再问动作空间,最后问是否有专家/离线数据。
| 你的处境 | 典型任务举例 | 推荐家族 | 代表算法 | 理由 / 模块 |
|---|---|---|---|---|
| 仿真廉价、可大规模并行,追求稳定 | Atari / MuJoCo 运动仿真、Dota2(OpenAI Five)、星际(AlphaStar)、任何可并行模拟器 | on-policy 策略梯度 | PPO / A2C | 稳定易并行,墙钟快(03/06) |
| 真实交互昂贵,可用经验回放 | 真实机械臂抓取、四足/双足行走的真机训练、“每条样本都金贵”的场景 | off-policy 价值 / AC | SAC / TD3 / DQN | 样本效率高(04/05) |
| 离散动作、状态高维(如游戏) | Atari 街机、棋类落子、网页 / GUI 的离散点击操作 | 价值方法 | DQN 及其改进 | 天然适配离散(05) |
| 连续控制(机器人力矩) | 灵巧手转方块、腿足运动、无人机姿态、自动驾驶的油门/转向控制 | actor-critic | SAC / TD3 / PPO | 连续动作主力(04/06) |
| 样本极稀缺、有动力学结构 | 真实机器人少样本学习、工业过程 / 化工控制、棋类规划(MuZero) | 基于模型 | MBPO / Dreamer / MuZero | 最省样本(08) |
| 只有历史数据、不能在线交互 | 医疗治疗策略、推荐 / 广告点击日志、量化交易历史、自动驾驶路测回放 | 离线 RL | CQL / IQL / TD3+BC | 抗分布漂移的保守估计(09) |
| 有专家演示、只需达到专家水平 | 模仿人类驾驶 / 操作、机器人示教复现、LLM 的 SFT(模仿高质量回答) | 模仿学习 | BC / DAgger | 无需奖励,快(01) |
| 不知道奖励,只有行为 | 从人类驾驶轨迹反推”好司机”目标、用户 / 动物行为建模、偏好对齐的前身 | 逆 RL | MaxEnt IRL / GAIL | 从行为反推奖励(13/01) |
| 对齐 / 教大模型推理 | 指令对齐、数学 / 代码推理、工具调用与多轮任务 | 大模型后训练 | PPO 等 RL 优化 / DPO 等直接偏好优化 | 使用偏好或可验证反馈;DPO 不属于 RL 算法(13) |
批判性追问:真能”照着表、按处境挑一族”吗?
这张决策表把算法家族画成互斥的抽屉,逐条对号入座即可——这个直觉很好用,却在两处不够严谨。
- 现实系统常是”混合体”,而非单选一族。 PPO 本身就是一个 actor-critic(策略梯度 × 价值 × 信赖域的合流,见图 4);MuZero 把基于模型 + 价值 + 搜索缝在一起;“离线预训练 + 在线微调”跨了第 09 与 04/06 两栏。最强的系统往往同时占了表里好几行。
- 边界本身是模糊的、连续的。 off-policy 与 on-policy 不是二分而是一条谱(PPO 是”近端 on-policy”);“仿真是否廉价""动作离散还是连续”也常处于灰色地带。
- 每行预设了”单一瓶颈”。 但真实项目通常同时受采样成本、稳定性、工程复杂度三重约束,最优解是一个折中组合,而非某一格里的单一算法。
- 补救。 把这张表当”起点先验”而非”终审判决”:先按主瓶颈选一个骨架,再缝合其它家族的部件(如 AC 骨架 + 信赖域 + 组基线)。真正的选型是设计问题,不是查表。
总纲小结:带着坐标系上路
你现在手握三样东西:(1) 问题设定——序贯决策 + 奖励最大化,及它比监督学习难在哪;(2) 三步解剖——生成样本→估计回报→改进策略,用来归类任何算法;(3) 选型决策表——按采样成本/动作空间/数据来源挑家族。接下来从模块 01 开始,我们先看”最朴素的想法(模仿专家)为什么不够”,由此自然逼出强化学习。