跳转到正文

E.3.4 策略梯度、Taylor 与 GRPO 推导 ​

前置知识:E.3.2 策略梯度与优势函数——你需要知道策略梯度的基本形式。


对数导数技巧如何推出策略梯度 ​

前面我们一直在用策略梯度的结论,现在来看看它是怎么推导出来的。直接对策略概率 πθ(a∣s)\pi_\theta(a\mid s) 求梯度往往不好算——π\pi 是由 softmax 等复杂函数生成的,梯度表达式很繁。对数导数技巧就是把难算的 ∇θπ\nabla_\theta \pi 转换成好算的 π⋅∇θlog⁡π\pi \cdot \nabla_\theta \log \pi,从而让梯度可以用采样的方式估计,而不需要知道环境的转移概率。策略梯度最常见的形式就是由这个技巧推导出来的:

∇θJ(θ)=Eπ[Gt∇θlog⁡πθ(at∣st)].\nabla_\theta J(\theta) =\mathbb{E}_\pi[ G_t\nabla_\theta\log\pi_\theta(a_t\mid s_t) ].

其中 Eπ[⋅]\mathbb{E}_\pi[\cdot] 表示”按照策略 π\pi 采样时的期望值”,也就是对所有可能的状态-动作对取加权平均,权重就是策略选择每个动作的概率。推导这个公式的关键是一个简单的恒等式:

∇θlog⁡πθ(a∣s)=∇θπθ(a∣s)πθ(a∣s).\nabla_\theta \log \pi_\theta(a\mid s) = \frac{\nabla_\theta \pi_\theta(a\mid s)} {\pi_\theta(a\mid s)}.

两边乘以 πθ(a∣s)\pi_\theta(a\mid s),就得到一个等价但更好用的形式:

∇θπθ(a∣s)=πθ(a∣s)∇θlog⁡πθ(a∣s).\nabla_\theta \pi_\theta(a\mid s) = \pi_\theta(a\mid s)\nabla_\theta\log\pi_\theta(a\mid s).

这个变换的好处在于:直接对 πθ\pi_\theta 求梯度往往不好算,但 log⁡πθ\log\pi_\theta 的梯度通常很简单。接下来把这个技巧代入目标函数。在离散动作空间中,目标函数可以写成:

J(θ)=∑aπθ(a∣s)Qπ(s,a).J(\theta)=\sum_a \pi_\theta(a\mid s)Q^\pi(s,a).

对参数求梯度时,Qπ(s,a)Q^\pi(s,a) 不依赖 θ\theta,只有 πθ\pi_\theta 里有 θ\theta:

∇θJ(θ)=∑a∇θπθ(a∣s)Qπ(s,a).\nabla_\theta J(\theta) =\sum_a \nabla_\theta\pi_\theta(a\mid s)Q^\pi(s,a).

把对数导数技巧代入,把 ∇θπθ\nabla_\theta\pi_\theta 替换掉:

∇θJ(θ)=∑aπθ(a∣s)∇θlog⁡πθ(a∣s)Qπ(s,a).\nabla_\theta J(\theta) =\sum_a \pi_\theta(a\mid s) \nabla_\theta\log\pi_\theta(a\mid s) Q^\pi(s,a).

仔细看这个求和式:每一项都含 πθ(a∣s)\pi_\theta(a\mid s) 作为权重,这恰好是"按策略采样时的加权平均"——也就是期望:

∇θJ(θ)=Ea∼πθ(⋅∣s)[∇θlog⁡πθ(a∣s)Qπ(s,a)].\nabla_\theta J(\theta) = \mathbb{E}_{a\sim\pi_\theta(\cdot\mid s)} [ \nabla_\theta\log\pi_\theta(a\mid s)Q^\pi(s,a) ].

上面只考虑了单个状态。如果对所有状态做加权平均(权重 dπ(s)d^\pi(s) 是策略 π\pi 下访问状态 ss 的频率),就得到完整的策略梯度定理:

∇θJ(θ)=Eπ[∇θlog⁡πθ(at∣st)Qπ(st,at)].\nabla_\theta J(\theta) = \mathbb{E}_\pi[ \nabla_\theta\log\pi_\theta(a_t\mid s_t)Q^\pi(s_t,a_t) ].

在实际算法中,Qπ(st,at)Q^\pi(s_t,a_t) 不容易精确知道,所以常用采样的累计回报 GtG_t 或优势估计 A^t\hat{A}_t 来替代:

∇θJ(θ)≈Eπ[∇θlog⁡πθ(at∣st)A^t].\nabla_\theta J(\theta) \approx \mathbb{E}_\pi[ \nabla_\theta\log\pi_\theta(a_t\mid s_t)\hat{A}_t ].

这就是 REINFORCE、Actor-Critic 和 PPO 这些算法背后共同的梯度结构。


Taylor 展开、Hessian 与 PPO 的二阶直觉 ​

梯度下降只看一阶导数——"当前位置的斜率",然后沿斜率方向走一步。但如果步子走得太大,一阶近似就会失准:你以为还在上坡,其实已经过了山顶开始下坡了。Taylor 展开就是用来分析"步子走多大时一阶近似还靠谱"的工具。一阶展开只看斜率,二阶展开额外考虑曲率(弯不弯、往哪个方向弯)。PPO 和 TRPO 背后的"信任域"思想,正是担心参数更新过大时一阶近似不再可靠——Taylor 展开帮助我们从数学上理解这件事。

f(x+h)≈f(x)+f′(x)h.f(x+h)\approx f(x)+f'(x)h.

看一个数字例子。令:

f(x)=x2,x=3,h=0.1.f(x)=x^2,\qquad x=3,\qquad h=0.1.

真实值是:

f(3.1)=9.61.f(3.1)=9.61.

一阶近似是:

f(3)+f′(3)h=9+6×0.1=9.6.f(3)+f'(3)h=9+6\times0.1=9.6.

已经很接近了,差了 0.010.01。二阶 Taylor 展开再加上一个曲率修正项:

f(x+h)≈f(x)+f′(x)h+12f′′(x)h2.f(x+h)\approx f(x)+f'(x)h+\frac{1}{2}f''(x)h^2.

对 f(x)=x2f(x)=x^2,f′′(x)=2f''(x)=2,所以:

9+6×0.1+12×2×0.12=9.61.9+6\times0.1+\frac{1}{2}\times2\times0.1^2=9.61.

多变量时,二阶项中的 f′′f'' 变成了 Hessian 矩阵 HH(它记录了函数在每个方向上的弯曲程度):

f(θ+Δθ)≈f(θ)∇f(θ)⊤Δθ12Δθ⊤HΔθ.f(\theta+\Delta\theta) \approx f(\theta) \nabla f(\theta)^\top\Delta\theta \frac{1}{2}\Delta\theta^\top H\Delta\theta.

PPO 和 TRPO 背后的"信任域"思想,正是担心参数更新过大时,一阶近似不再可靠,二阶曲率项开始变得重要——此时如果还按一阶信息走大步,可能会把策略搞坏。

对 PPO 的概率比:

rt(θ)=πθ(at∣st)πθold(at∣st),r_t(\theta)= \frac{\pi_\theta(a_t\mid s_t)} {\pi_{\theta_{old}}(a_t\mid s_t)},

在 θold\theta_{old} 附近展开:

rt(θ)≈1+∇θrt⊤(θ−θold)+12(θ−θold)⊤∇θ2rt(θ−θold).r_t(\theta) \approx 1 +\nabla_\theta r_t^\top(\theta-\theta_{old}) +\frac{1}{2}(\theta-\theta_{old})^\top \nabla_\theta^2 r_t (\theta-\theta_{old}).

这里三项分别是:

项含义
11新旧策略相同时,概率比为 11
一阶项小步更新带来的线性变化
二阶项步子变大后,曲率带来的额外变化

PPO 的裁剪虽然没有显式去算 Hessian,但它通过限制 rt(θ)r_t(\theta) 的范围,间接避免了高阶项失控带来的风险。


GRPO 的组归一化 ​

前面讲了策略梯度、PPO 裁剪和 Taylor 展开,这些方法都需要一个优势估计 A^t\hat{A}_t。传统方法(如 PPO)用训练好的 Critic 网络来估计优势,但 Critic 网络本身也需要训练,增加了工程复杂度。GRPO 的核心想法是:不用 Critic,改用"同组回答之间的相对比较"来构造优势。 想象老师批改一道开放题:四个学生的得分放在一起,高于平均的给正向信号,低于平均的给负向信号,不用额外请一个"标准分评判员"。具体来说,假设同一个 prompt 采样 4 个回答,奖励分别是:

r=[2,4,6,8].r=[2,4,6,8].

均值是:

μ=2+4+6+84=5.\mu=\frac{2+4+6+8}{4}=5.

标准差是:

σ=(2−5)2+(4−5)2+(6−5)2+(8−5)24=5.\sigma= \sqrt{ \frac{(2-5)^2+(4-5)^2+(6-5)^2+(8-5)^2}{4} } =\sqrt{5}.

第 4 个回答的标准化优势是:

A^4=8−55≈1.34.\hat{A}_4=\frac{8-5}{\sqrt{5}}\approx1.34.

一般形式是:

A^i=ri−μσ.\hat{A}_i=\frac{r_i-\mu}{\sigma}.

整个计算分两步:

  1. 减去均值:判断这个回答比组内平均好还是差。
  2. 除以标准差:把不同题目的奖励尺度拉平——有的题分数天然偏高,有的偏低,除以标准差后就可以跨题比较。

GRPO 之所以能省掉传统 PPO 里的 Critic 网络,正是因为它用组内相对比较来构造 baseline。它不关心”这个回答绝对多少分”,只关心”这个回答在同组里排得怎么样”。


小结 ​

本篇介绍了三个推导工具:

工具核心公式作用
对数导数技巧∇π=π∇log⁡π\nabla\pi = \pi\nabla\log\pi把概率梯度改成可采样的 log 形式
Taylor 展开f(x+h)≈f(x)+f′(x)h+12f′′(x)h2f(x+h)\approx f(x)+f'(x)h+\frac{1}{2}f''(x)h^2理解 PPO 信任域和裁剪的二阶直觉
GRPO 组归一化A^i=(ri−μ)/σ\hat{A}_i=(r_i-\mu)/\sigma用组内相对比较替代 Critic

这三个工具分别对应策略梯度的推导骨架、更新幅度的理论依据、以及不用 Critic 的替代方案。下一篇把它们整理成完整的公式速查表。

下一篇:E.3.5 完整优化公式 —— PG、DQN、GAE、PPO、GRPO 完整公式速查。

现代强化学习实战课程