强化学习基础:MDP、Policy、Value Function
一、算法概览
强化学习(Reinforcement Learning, RL) 研究智能体(agent) 在环境(environment) 中通过试错最大化累积奖励的学习过程。其数学基础是马尔可夫决策过程(MDP),由五元组 (S, A, P, R, γ) 定义:状态集 S、动作集 A、转移概率 P(s'|s,a)、奖励函数 R(s,a)、折扣因子 γ ∈ [0,1)。核心概念包括策略 π(a|s)、状态价值函数 V(s)、动作价值函数 Q(s,a),以及连接它们的贝尔曼方程。求解 MDP 的两大路径:策略迭代与价值迭代。深度强化学习用神经网络逼近 V、Q 或 π,从而处理连续/高维空间。
二、历史背景与问题起源
2.1 从行为主义到数学化
RL 的思想源于 20 世纪初心理学中的行为主义——"试错学习"。1950 年代 Bellman 提出动态规划与贝尔曼方程,为 RL 奠定数学基础。1989 年 Watkins 的 Q-learning 算法把"从经验中学习最优策略"变成可操作流程,被视为现代 RL 的起点。
2.2 MDP 为何是"标准假设"
现实决策问题往往 noisy、连续、长程。研究者抽象出 MDP,核心假设是马尔可夫性:未来只依赖当前状态,与历史无关。这一假设让递推求解成为可能——否则需要建模完整历史序列,计算复杂度爆炸。大多数工程问题(机器人控制、游戏、对话)都能近似为 MDP,因此 MDP 成为 RL 的"通用语言"。
2.3 深度 RL 的崛起
经典 RL(Q-learning、SARSA)依赖表格存储 V、Q,只能处理小规模离散状态。2013 年 DQN 用神经网络逼近 Q 函数,突破 Atari 游戏;2015 年 A3C、2017 年 PPO 让策略梯度方法可规模化。RLHF 把这套语言搬进大模型对齐,使 RL 从游戏/控制领域进入 NLP 主战场。理解 MDP,就是理解所有这些算法的共同骨架。
三、核心原理深入
3.1 MDP 五元组:决策世界的"物理定律"
把决策过程建模为一棵"状态-动作"交替的树:
MDP = (S, A, P, R, γ)
S : 状态集合(环境可能处于的所有情况)
A : 动作集合(智能体可采取的操作)
P : P(s'|s,a) 状态转移概率(在状态 s 采取动作 a 后,转到 s' 的概率)
R : R(s,a) 即时奖励(标量反馈)
γ : 折扣因子 ∈ [0,1),越接近 1 越重视长远回报
马尔可夫性的精髓:给定当前 s 与 a,未来分布与如何到达 s 无关。即"历史信息已浓缩进当前状态"。这把无限历史问题压缩成局部递推,是贝尔曼方程成立的根本前提。
3.2 策略 π:行为的"决策手册"
策略(policy) 定义智能体的行为方式:
随机策略: π(a|s) = P(a | s) 在状态 s 下采取动作 a 的概率
确定性策略: π(s) = a 在状态 s 直接输出某个动作
RL 的目标就是找到最优策略 π*,使期望累积奖励最大。策略可以是表格(离散小问题),也可以是神经网络 π_θ(a|s)(深度 RL,参数为 θ)。在大模型 RLHF 中,策略就是语言模型本身:状态是 prompt + 已生成 token,动作是下一个 token。
3.3 价值函数:长远眼光的"评估器"
价值函数衡量"站在某个状态/采取某个动作,未来能拿多少累积奖励":
状态价值 V^π(s):
在策略 π 下,从状态 s 出发的期望折扣累积奖励
V^π(s) = E_π[ Σ_{t=0}^∞ γ^t · R_t | s_0 = s ]
动作价值 Q^π(s,a):
在策略 π 下,从状态 s 采取动作 a 后的期望折扣累积奖励
Q^π(s,a) = E_π[ Σ_{t=0}^∞ γ^t · R_t | s_0 = s, a_0 = a ]
两者的关系:V^π(s) 是 Q^π(s,a) 在策略 π 下对动作 a 求期望:
V^π(s) = Σ_a π(a|s) · Q^π(s,a)
关键直觉:V 衡量"状态好不好",Q 衡量"在这个状态下做这个动作好不好"。知道 Q 就能贪心地选最优动作,无需关心环境模型——这是 model-free RL 的根基。
3.4 贝尔曼方程:递推的核心
价值函数满足自洽的递推关系,这就是贝尔曼方程:
V^π(s) = Σ_a π(a|s) · [ R(s,a) + γ · Σ_s' P(s'|s,a) · V^π(s') ]
Q^π(s,a) = R(s,a) + γ · Σ_s' P(s'|s,a) · Σ_a' π(a'|s') · Q^π(s',a')
直观解读:当前状态的价值 = 即时奖励 + γ × (下一状态价值的期望)。它把"无限步累积"拆成"一步 + 剩余",是动态规划的灵魂。
贝尔曼最优方程(最优策略满足的方程):
V*(s) = max_a [ R(s,a) + γ · Σ_s' P(s'|s,a) · V*(s') ]
Q*(s,a) = R(s,a) + γ · Σ_s' P(s'|s,a) · max_a' Q*(s',a')
一旦求出 Q*,最优策略就是 π*(s) = argmax_a Q*(s,a)。
3.5 两大求解路径
价值迭代(Value Iteration):反复用贝尔曼最优方程更新 V,直到收敛:
循环直到收敛:
对每个状态 s:
V_new(s) = max_a [ R(s,a) + γ · Σ_s' P(s'|s,a) · V_old(s') ]
V_old ← V_new
策略迭代(Policy Iteration):交替进行"策略评估"和"策略改进":
1. 策略评估:固定 π,解贝尔曼方程求 V^π
2. 策略改进:π_new(s) = argmax_a [ R(s,a) + γ · Σ_s' P(s'|s,a) · V^π(s') ]
3. 若 π_new = π 则停止,否则 π ← π_new,回到第 1 步
两者都保证收敛到最优策略。策略迭代通常收敛更快但每次评估开销大;价值迭代实现简单但可能慢收敛。深度 RL(如 PPO)本质是策略迭代+函数逼近的现代变体。
四、训练/推理流程
经典 RL 训练流程:
1. 定义 MDP:明确 S、A、P、R、γ
2. 初始化策略 π_θ(随机或预训练)
3. 采集轨迹:用 π_θ 与环境交互,记录 (s_t, a_t, r_t, s_{t+1})
4. 估计回报:计算折扣累积奖励 G_t = Σ_k γ^k · r_{t+k}
5. 更新价值函数 V_φ 或 Q_φ(用 TD/蒙特卡洛目标)
6. 更新策略 π_θ(用策略梯度或 Actor-Critic)
7. 重复 3-6 直到收敛
推理流程:给定训练好的 π*,每步观察状态 s,输出动作 a = π*(s)(或采样 a ~ π*(·|s)),与环境交互直至终止。在大模型场景,"推理"就是模型生成文本的过程。
五、与其他算法的关系
| 概念/算法 | 关系 |
|---|---|
| 动态规划 | MDP 的"已知模型版",价值/策略迭代是它的直接应用 |
| Q-learning | model-free 版价值迭代,学 Q* 而非 V*,off-policy |
| DQN | Q-learning + 神经网络逼近 Q,突破高维状态 |
| Policy Gradient | 直接对 π_θ 求梯度,不经过价值函数的 argmax |
| Actor-Critic | 同时学策略(actor)和价值(critic),PPO/SAC 的基础 |
| RLHF | 把 LLM 当作 π_θ,人类偏好转化为 R,用 PPO 优化 |
核心脉络:动态规划 → Q-learning → DQN → Policy Gradient → Actor-Critic → PPO → RLHF/GRPO。每一步都是在"模型未知、状态高维、策略随机"的方向上做扩展,但底层全是 MDP 与贝尔曼方程。
六、关键论文
| # | 论文 | 贡献 |
|---|---|---|
| 1 | "A Markovian Decision Process" — Bellman, 1957 | 提出 MDP 与动态规划,奠基 RL 数学 |
| 2 | "Learning from Delayed Rewards" — Watkins, 1989 | 提出 Q-learning,model-free RL 的开端 |
| 3 | "Playing Atari with Deep Reinforcement Learning" — Mnih et al., 2013 (arXiv:1312.5602) | DQN,神经网络逼近 Q 函数 |
| 4 | "Proximal Policy Optimization Algorithms" — Schulman et al., 2017 (arXiv:1707.06347) | PPO,当前 RLHF 主流策略优化算法 |
| 5 | "Asynchronous Methods for Deep Reinforcement Learning" — Mnih et al., 2016 (arXiv:1602.01783) | A3C,异步 Actor-Critic |
七、实践思考
三个常见理解误区:
| 误区 | 正解 |
|---|---|
| ❌ "RL 就是 trial-and-error,不需要数学" | ✅ MDP 是严格数学框架,贝尔曼方程是递推核心;不懂方程调参只能瞎试 |
| ❌ "V 和 Q 是一回事" | ✅ V(s) 评估状态,Q(s,a) 评估状态-动作对;知道 Q* 可直接得最优策略,V* 还需模型 |
| ❌ "γ 越大越好(更重视长远)" | ✅ γ 过大会让价值函数方差爆炸、收敛慢;通常 0.9-0.99,长程任务才接近 1 |