为什么直接优化策略
上一篇我们看到,Value-Based 方法(Q-Learning / DQN)的核心是学习 Q(s,a),然后贪心选最大 Q 值的动作。这种方法有几个根本限制:
- 只能处理离散动作空间:需要对每个可能的动作计算 Q 值,当动作空间很大(如 LLM 的词汇表 32K+ tokens)或连续时(如机器人控制),这不现实
- 无法表达随机策略:有时最优策略需要随机性(如石头剪刀布),Q-Learning 只能输出确定性策略
- 小变化大影响:Q 值的微小变化可能导致 argmax 翻转,策略突变
Policy Gradient 的核心思想:既然 LLM 本身就是一个参数化策略 πθ(a∣s)(给定 context,输出 token 概率分布),为什么不直接优化这个策略?
策略梯度定理
Policy Gradient 的目标是最大化期望累积回报 J(θ)=Eπθ[∑tγtrt]。
策略梯度定理给出了 J(θ) 对参数 θ 的梯度:
∇θJ(θ)=Eπθ[∇θlogπθ(at∣st)⋅Gt]
其中 Gt=∑k=0∞γkrt+k 是从时间步 t 开始的折扣回报。
直觉:
- ∇θlogπθ(a∣s) 是让动作 a 概率增加的方向
- Gt 是这条轨迹的好坏程度
- 两者相乘:Gt>0 时推高好动作概率,Gt<0 时压低坏动作概率
这个公式的美妙之处:不需要知道环境模型,只需要采样 trajectory 就能估计梯度。
REINFORCE 算法
REINFORCE 是最简单的 Policy Gradient 实现:
- 采样:用当前策略 πθ 采样一条完整 trajectory τ=(s0,a0,r0,s1,a1,r1,…)
- 计算 Return:对 trajectory 中每个时间步计算折扣回报 Gt
- 更新参数:θ←θ+α∑t∇θlogπθ(at∣st)⋅Gt
高方差问题
REINFORCE 虽然简单优美,但有一个致命缺陷:梯度估计的方差极高。
每次只采样一条 trajectory,这条 trajectory 的 return 受随机性影响很大。同一个策略,两次采样可能得到截然不同的 return——一次碰巧走了好路径得到高 return,另一次走了坏路径得到低 return。
这导致梯度估计非常不稳定,需要大量采样才能得到可靠的梯度方向。
Baseline 与 Advantage
解决高方差的关键洞察:reward 的绝对值不重要,重要的是”比平均好多少”。
引入 Baseline b(s)(通常取 V(s) 的估计),将梯度修改为:
∇θJ(θ)=Eπθ[∇θlogπθ(at∣st)⋅(Gt−b(st))]
数学上可以证明:减去任何不依赖于动作的 baseline 不改变梯度期望(无偏),但显著降低方差。
这就引出了 Advantage Function:
Aπ(s,a)=Qπ(s,a)−Vπ(s)
A>0 表示这个动作比平均水平好,A<0 表示比平均差。用 Advantage 替代 raw return,梯度同时具有无偏性和低方差。
Raw Return G
从 REINFORCE 到 Actor-Critic
REINFORCE + Baseline 仍然需要采样完整 trajectory 才能计算 return。能不能每走一步就更新?
答案是 Actor-Critic:用一个神经网络(Critic)来近似 V(s),作为 baseline。这样:
- Actor(策略网络)决定采取什么动作
- Critic(价值网络)评估当前状态有多好
Critic 的 TD 估计可以在每一步提供 Advantage 信号,不需要等 trajectory 结束。这大幅提升了样本效率。
Actor-Critic 是通向 PPO 和 RLHF 的关键跳板,我们将在下一篇深入讲解。
总结
本文梳理了 Policy Gradient 的核心思路:
- 直接优化策略 πθ 比 Value-Based 方法更适合大动作空间(如 LLM)
- 策略梯度定理提供了不依赖环境模型的梯度估计
- REINFORCE 是最简单的实现,但方差极高
- Baseline / Advantage 在保持无偏的同时大幅降低方差
- Actor-Critic 用神经网络近似 baseline,实现逐步更新
下一篇我们将深入 Actor-Critic 架构和 PPO,理解 RLHF 中最核心的优化算法。