最近在与做RL的同学交流时,他向我推荐了 IGO 框架,说这是一个很有意思的大统一视角。笔者在学习之后,除了了解到 IGO 和 RL 的 Policy Gradient 在形式上高度一致以外,它所引入的 Fisher Information Matrix 让我觉得很有意思——尤其是它和 KL divergence 以及 Hessian 阵的联系,让笔者感觉到背后还有更本质的东西。于是深入挖掘了一下,将 PG 到 PPO 的整个过程在统计流形优化的视角下串联到了一起。在这个过程中,笔者也意外地终于理解了TRPO,所以现在将这个探索的过程整理出来,也供大家参考。
1. 参数空间这把尺子,量不准概率的地图
1.1 从 PG 到 PPO:从未被超越的 baseline
做过 RL 的人,大概率都从 Vanilla Policy Gradient 写过第一行代码。标准更新公式再简单不过:
其中
在代码中,你真正优化的是轨迹级别的策略梯度。实际实现时,采集一批轨迹,对每个时间步 $t$ 计算:
写成优化目标就是:
看着简洁,实现起来也很自然。但它极度不稳定:同一组超参数,换一个随机种子跑两次,学习曲线就可能完全不同。为了不崩盘,学习率 $\alpha$ 往往要调到极小。
于是工程上大家不约而同地转向了 PPO(Proximal Policy Optimization)。PPO 的优化目标如下:
在 $\theta = \theta_{old}$ 时,$r_t = 1$,PPO 与 PG 诱导出的梯度完全一致。但 PPO 在同一轮参数更新中小步迭代时,$\theta$ 逐渐偏离 $\theta_{old}$,clip 开始起作用,改变了每一步的更新方向。累积下来的真实参数迭代步,与 Policy Gradient 原本的梯度方向已经不同了。
正是这个小小的方向改变,让 Policy Gradient 的迭代一下子变得极其稳定且迅速。时至今日,真正有效的 RL 策略优化算法几乎都是 PPO 的各种变体。那么潜藏在这背后的原理是什么?难道仅仅是因为”更新时不要让模型离得太远”?如果是这样,”远”又是怎么定义的?
1.2 同样的油门,不同的车速 — 参数距离的概率代价
我们在代码里做梯度下降,默认假设参数空间是一个平坦的欧氏空间,步长约束是 $|\Delta\theta|_2^2 \le \epsilon$。
但参数空间的一小步,落到概率分布上可能是巨大的一步。
考虑单变量高斯分布 $\mathcal{N}(\mu, \sigma^2)$,同样的参数更新 $\Delta\mu = 1$:
- 当 $\sigma = 10$ 时,分布很宽。$\mu$ 从 0 挪到 1,两个高斯分布高度重叠,KL 散度很小。策略行为几乎没变。
- 当 $\sigma = 1$ 时,分布适中。$\mu$ 从 0 挪到 1,两个高斯分布已有明显偏移,KL 散度不容忽略。策略发生了显著变化。
在参数空间里,你迈出的都是 “1” 步。但落到概率分布上,一个几乎没动,一个彻底跑偏。
神经网络的参数化,使得同样的参数变化量,对应的概率分布变化可以天差地别。你在参数轴上量的距离,不等于你真正关心的东西——策略行为的变化。
2. 换一把尺子:在概率的曲面上做梯度下降
2.1 IGO 与 Fisher 矩阵:不同的尺子,不同的方向
信息几何优化(Information Geometric Optimization, IGO)提供了一个理解概率分布优化的几何视角。IGO 考虑的问题很朴素:找到 $x^*$ 使得打分函数 $f(x)$ 最大。但 $f(x)$ 本身可能非凸、不连续、甚至不可导,直接在其 landscape 上做优化的难度很大。IGO 的思路是换一个角度——引入一个参数化的概率分布 $p_\theta(x)$,通过调整 $\theta$ 让分布逐渐集中到 $f(x)$ 高的区域。优化目标变为最大化期望:
用 log-trick 写出 $J(\theta)$ 的欧氏梯度:
(注意这个形式与 Policy Gradient 的 $\mathbb{E}_t[\nabla_\theta \log \pi_\theta(a_t|s_t) \cdot \hat{A}_t]$ 几乎完全一致:$\pi_\theta$ 对应 $p_\theta$,$\hat{A}_t$ 对应 $f$。)
有了上面的定义,优化的过程中自然引入了统计流形 $\mathcal{M} = \{ p_\theta \mid \theta \in \Theta \}$。统计流形空间具有自然的微分结构,光滑且连续。Information Geometry 的含义,正是利用统计流形的几何特性来做优化。
从 IGO 的视角看,不应该直接在参数空间做欧氏梯度上升,而应该每步约束分布的变化量,在统计流形上移动。要在统计流形上做约束优化,首先要定义两个分布之间的距离。此处我们选择 KL 散度(为什么是 KL 散度,后文会给出答案)。在 $\theta$ 的无穷小邻域内,对 KL 散度做二阶泰勒展开:
这里冒出来的 $I(\theta)$,就是 Fisher 信息矩阵(FIM):
它在局部充当了统计流形的黎曼度规。
有了度规,在这个视角下,每步求解带 KL 约束的优化问题:
拉格朗日乘子法给出:
这就是自然梯度(Natural Gradient)。
自然梯度的核心优势在于参数化不变性。普通梯度在参数空间的每一步,落点高度依赖网络的具体参数化:同一个概率分布族,换一种参数化方式,梯度更新会划出完全不同的轨迹,导致训练过程剧烈抖动。而自然梯度产生的优化轨迹完全由统计流形的内蕴几何性状决定,与参数化的选取无关——每一次更新在概率分布层面产生的变化量都是统一可控的。
这个最速下降方向和参数空间里的普通梯度方向完全不同。初看可能困惑——从机器学习的第一课起,最速下降方向就是梯度方向。为什么这里不一样?原因在于,两种”最速”用的是不同的度量。普通梯度背后是欧氏度规 $I$(单位矩阵),约束的是 $|\Delta\theta|_2^2 \le \epsilon$。自然梯度背后是 Fisher 度规 $I(\theta)$,约束的是 $\frac{1}{2}\Delta\theta^T I(\theta)\Delta\theta \le \epsilon$。
不同的约束条件 = 不同的黎曼度量 = 不同的流形曲面 = 不同的最速下降方向。
约束到底意味着什么——这就是整件事的核心。
2.2 IGO 视角下的 RL Policy Gradient
从 IGO 的视角审视 RL,首先要确定对应关系。RL 里参数 $\theta$ 直接影响的是条件策略 $\pi_\theta(a|s)$,但环境动态 $P(s’|s,a)$ 的存在,使得整个 MDP(Markov Decision Process)中实际运行的分布不止这一层。策略 $\pi_\theta$ 在环境中长期交互,会诱导出一个状态平稳分布 $d^{\pi_\theta}(s)$,两者共同构成状态-动作的整体访问分布:
在 IGO 视角下,$\mu_\theta(s,a)$ 才是对应 $p_\theta(x)$ 的正确对象——它不是单步策略的分布,不是单条轨迹的分布,而是策略在 MDP 中长期运行形成的全局联合分布。对应关系如下:
| IGO | RL |
|---|---|
| 参数化分布 $p_\theta(x)$ | 整体访问分布 $\mu_\theta(s,a) = d^{\pi_\theta}(s)\,\pi_\theta(a \mid s)$ |
| 打分函数 $f(x)$ | 优势函数 $A^{\pi_\theta}(s,a)$ |
| 目标 $J = \mathbb{E}_{x \sim p_\theta}[f(x)]$ | $J(\theta) = \mathbb{E}_{s,a \sim \mu_\theta}\left[A^{\pi_\theta}(s,a)\right]$ |
用 log-trick 写出 $J(\theta)$ 的欧氏梯度:
由于 $\nabla_\theta \log \mu_\theta(s,a) = \nabla_\theta \log d^{\pi_\theta}(s) + \nabla_\theta \log \pi_\theta(a|s)$,而 $\nabla_\theta \log d^{\pi_\theta}(s)$ 的梯度期望在 $A$ 为优势函数时为零(baseline 性质),于是退化为我们熟悉的 Policy Gradient:
在 IGO 视角下,这是参数空间里的欧氏梯度。正确的做法是使用自然梯度,Fisher 信息矩阵应当取在 $\mu_\theta(s,a)$ 上:
IGO 视角下的 RL 优化,等价于每一步求解带 KL 约束的问题:
把 1.1 节 Vanilla PG 的更新拿来对比一下。PG 在参数空间里做的是:
两个问题的形式完全一致。唯一的区别在于——前者用 KL 散度约束统计流形上的距离,后者用欧氏范数约束参数轴上的距离。换句话说,PG 和 IGO 视角下的 RL,本质上在做同一件事,只是度量”一步走多远”的尺子不同。
因此,在 IGO 视角下,优化约束应该直接作用于 $\mu_\theta$:每一步更新的目标是在 $D_{KL}(\mu_{\theta_{old}} \parallel \mu_\theta) \le \delta$ 的约束下提升期望回报。但 $D_{KL}(\mu_{\theta_{old}} \parallel \mu_\theta)$ 中的 $d^{\pi_\theta}(s)$ 由未知的环境动态决定,工程上无法直接计算。
不过,KL 散度有一条关键的链式分解。利用 $\mu_\theta(s,a) = d^{\pi_\theta}(s)\,\pi_\theta(a|s)$,可以展开为:
总 KL 精确分解为两项:第一项是状态分布漂移——旧策略访问的状态和新策略访问的状态本身的分布差距;第二项是期望单步 KL——在旧策略访问的状态上,新旧动作分布的加权平均差异。
这个分解是 IGO 和 TRPO(Trust Region Policy Optimization)之间最重要的桥梁。TRPO 的做法,正是去约束第二项。而 TRPO 的下界定理则保证了:只要约束住第二项,第一项的状态漂移也会间接受限。这正是下一节的内容。
3. 工程落地:TRPO 与 PPO 的两次折衷
3.1 TRPO:给性能装一道不会跌的护栏
TRPO 的做法,正是对上一节 KL 分解 (6) 中的第二项——期望单步 KL——做约束。它的完整优化问题是:
其中 surrogate objective 为:
▸ 为什么是 surrogate objective?
把这个 surrogate 和 1.1 节 PG 的优化目标对比。PG 做的是 $\mathbb{E}_{\tau \sim \pi_\theta}[\sum_t \log \pi_\theta(a_t|s_t) \hat{A}_t]$,它是 on-policy 的——数据必须来自当前策略 $\pi_\theta$ 本身。一旦你用旧策略 $\pi_{old}$ 采集的数据去估计它,估计是有偏的,策略的梯度方向会出现系统性偏移。TRPO 的 surrogate 通过 importance sampling 修正了这个偏差——在 $\theta = \theta_{old}$ 时有 $\nabla_\theta L^{\pi_{old}} = \nabla_\theta J$,且在新旧策略偏离不远时保持无偏。这是 TRPO 能做多步迭代的基础:同一批轨迹数据可以在一次大的参数更新中被安全地用于多次小步梯度更新,而 PG 做多步就会累积偏差导致崩溃。
▸ 为什么用 KL 散度做约束?
TRPO 的数学保证来自它证明的单调递增下界:
用 importance sampling 在旧策略 $\pi_{old}$ 的数据上估计新策略 $\pi$ 的期望回报,得到的 $L_{\pi_{old}}(\pi)$ 和真实的 $J(\pi)$ 之间必然存在偏差。偏差的来源是策略更新带来的分布漂移——数据来自 $\pi_{old}$ 访问的状态,而 $\pi$ 实际访问的状态分布已经发生了偏移。下界 (8) 在推导过程中证明了一件事:$\max_s D_{KL}(\pi_{old} \parallel \pi)$ 控制住,分布漂移就控制住,从而 surrogate 的估计偏差也被 $\max_s D_{KL}$ 所界定。因此,直接约束 $\max_s D_{KL}(\pi_{old} \parallel \pi) \le \epsilon$,优化 $L$ 就能可靠地带来 $J$ 的提升。在实践中,$\max_s$ 要求在全体状态上验证,这是不可行的。TRPO 将其放松为在经验状态集上的期望 $\mathbb{E}_{s \sim d^{\pi_{old}}}$。严格来说,期望约束不一定能完全控制最坏情况的状态漂移,但策略变化最剧烈的地方通常就是它最常访问的状态,因此在实际中这个放松是有效的。约束问题则通过 Fisher 矩阵和共轭梯度法求解自然梯度更新。
但即便放松为期望,求解仍然不轻松:共轭梯度每一步都需要 Fisher-vector 乘积,Fisher 矩阵的维度等于神经网络参数量。在实验室的几块显卡上,TRPO 跑一次更新往往要几分钟。
3.2 PPO:将 KL 约束替换为 clip
TRPO 每步需要求解一个带 KL 约束的优化问题,通过共轭梯度逼近自然梯度,计算成本高。PPO 的思路是把显式的 KL 约束拿掉,换成一个 objective 层面的 clip 操作。
clip 为什么能替代 KL 约束?PPO 论文本身并没有给出严格的理论推导——clip 是作为一种工程手段被直接提出的。但可以试图从 KL 距离一阶近似的角度去理解它。在 $\theta$ 接近 $\theta_{old}$ 时:
取一阶近似,$|r_t - 1|$ 约束的是单个状态-动作对上 log-probability 的变化量 $|\nabla \log \pi \cdot \Delta\theta|$。回顾 2.1 节中 KL 散度和 Fisher 矩阵的关系 $D_{KL} \approx \frac{1}{2}\Delta\theta^T I(\theta)\Delta\theta = \frac{1}{2}\mathbb{E}[(\nabla \log \pi \cdot \Delta\theta)^2]$,KL 散度正是这些逐点变化量的平方期望。因此,对每个样本点约束 $|r_t - 1| \le \epsilon$,相当于在样本层面逐点限制了 log-probability 的变化,是 KL 约束的一阶近似。
基于这个想法,我们再来看 PPO 的优化目标:
min + clip 的组合分两种情况起作用:
- 当 $\hat{A}_t > 0$:我们想增大 $r_t$。$r_t$ 一旦超过 $1+\epsilon$,$\text{clip}(r_t) \hat{A}_t$ 被截断在 $(1+\epsilon)\hat{A}_t$,min 取截断值,梯度为零,优化器无法从继续增大 $r_t$ 中获得收益。
- 当 $\hat{A}_t < 0$:我们想减小 $r_t$。$r_t$ 一旦低于 $1-\epsilon$,同样的机制将梯度截停。
换句话说,clip 在 $|r_t - 1| > \epsilon$ 时切断梯度,使优化器没有动力继续推动策略远离 $\pi_{old}$。这样就保住了逐点的 log-probability 变化量,从而控制了 KL 距离。TRPO 用 Fisher 矩阵求解约束下的精确方向,PPO 用一阶截断近似收到了同样的效果——阻止策略一次更新走太远——但不需要计算二阶矩阵。
值得注意的一点是 clip 的触发。TRPO 和 PPO 都采用外层采样、内层多步优化的结构:同一批轨迹数据在内层被反复用于多次小步梯度更新。如果 clip 始终不触发,内层的每一次小步更新就和 vanilla PG 没有本质区别——参数沿着欧氏梯度方向直走。clip 的触发意味着优化器触碰到了信任区域的边界,梯度方向因此被掰弯,累积的多步更新才真正偏离 PG 的方向,体现出约束的效果。GSPO(Group Sequence Policy Optimization, Zheng et al., 2025)在 GRPO(Group Relative Policy Optimization)与序列级 clip 的对比中也观察到了类似的反直觉现象:序列级 clip 截断的 token 比例比 GRPO 的 token 级 clip 高出两个数量级,但训练效率反而更高。这说明 clip 触发本身不是坏事——被截断的东西是否可靠,才是真正要紧的。从 clip 的设计初衷看,这恰恰是期望的行为——只有触碰到边界,才说明优化步长足够大,策略在信任区域内真正发挥了移动的效力。
总结
从 PG 到 PPO,本质上是一次度量标准从外在坐标轴到内蕴概率结构的迁移:
- PG 在参数空间做欧氏梯度下降。参数距离不等于概率距离,同样的步长落到分布上可能天差地别。
- 引入 Fisher 矩阵后发现:不同的约束 = 不同的黎曼度量 = 不同的流形曲面 = 不同的最速下降方向。不是梯度算错了,是拿来量距离的尺子是错的。乘上 $I(\theta)^{-1}$,每步在概率分布上的变化量才一致可控。
- TRPO 证明了:性能估计的偏差可以被单步 KL 散度所控制。约束 KL 散度是自然采取的下一步动作,而这就导致它引入了背后的统计流形黎曼度量,优化由此从参数空间转到了统计流形上。代价是每步要用共轭梯度迭代求解自然梯度方向,需要反复计算 Fisher-vector 乘积。
- PPO 用一个 clip 替代了整个二阶计算。在 $r_t$ 上的逐点截断近似等价的 KL 约束,省去了构造 Fisher 矩阵和共轭梯度求解。
从 PG 到 PPO 的整个演进中,KL 约束的引入将优化从参数空间带到了统计流形上,TRPO 和 PPO 则在工程层面接力落地,最终实现了 RL 策略的平稳迭代。说到底,不同的约束意味着在不同的流形上做优化,对应着完全不同的最速下降方向。这正是 RL 策略空间的内蕴几何学——从统计流形到 PPO,一切脉络都收束于此。
本文在 DeepSeek v4 的协助下完成,特此致谢。
A. 延伸阅读
在写作过程中,以下资源为本文提供了重要参考和补充视角:
- OpenAI Spinning Up 的 PPO 文档提供了简洁的代码实现和直观的数学推导,适合快速上手。
- Lilian Weng 的博客 Policy Gradient Algorithms(lilianweng.github.io)系统梳理了从 Vanilla PG 到 PPO/TRPO 的完整算法族谱,与本文形成良好互补。
- 知乎专栏文章《IGO 框架下的统一视角:Online RL、Offline RL 与 CFG Diffusion》讨论了 IGO 框架如何横向统一 online RL、offline RL 和 CFG diffusion,也是启发本文的一篇资料;但本文更注重纵向打通从 PG 到 PPO 的优化演变。
- 知乎专栏文章《Natural Gradient 详解》对 natural gradient 进行了细致的推导,并涉及了 FIM,但因总体偏分类介绍,没有对 FIM 这个主题进行贯穿。
- Be(CN₃H₃)₂ 的博客 《从 VPG 到 PPO》覆盖了与本文相似的内容脉络(VPG → 自然梯度 → TRPO → PPO),但侧重严格的公式推导,而本文侧重数学概念的阐释和整体思路的流变。笔者在写作时尚未读到该文章,特此说明并补录。
- Kakade (2002) 首次将自然梯度引入策略优化,是 RL 内蕴几何的起点。
- Ollivier et al. (2017) 从不变性原理出发,给出了信息几何优化的统一框架 (IGO)。本文 2.1 节的核心思想即来源于此。
- Amari & Nagaoka (2000) 是信息几何的系统性专著,涵盖 Fisher 度规、对偶平坦结构等理论基础,是理解附录 B.1 和 B.2 的进阶读物。
B. 数学注脚
B.1 唯一合法的度量:Cencov 定理
前文在推导自然梯度、分析 TRPO 和 PPO 时,始终使用 KL 散度作为概率分布间的距离度量。一个更基础的问题是:在 $L^2$ 距离、JS 散度、Wasserstein 距离等众多备选中,为什么是 KL 散度——或者说,为什么它的局部二阶逼近 Fisher 信息度规是唯一正确的选择?
Cencov 唯一性定理给出了回答。该定理表明:若要求黎曼度规在充分统计量变换下保持不变,且在非充分变换下信息量单调不增,则在常数倍意义下,Fisher 信息度规是唯一合法的选择。
这里”信息量”指的是统计区分能力——两个分布在局部上的几何间隔。
- 充分变换下不变:数据虽经变形,关于参数 $\theta$ 的统计信息丝毫未少,因此两分布的区分度不应改变,黎曼距离不变。普通的 $L^2$ 距离违反的正是这一条:对样本空间做缩放变换,雅可比行列式进入积分,距离值发生变化——分布间的区分度不应随坐标单位变化,但 $L^2$ 度量变了。
- 非充分变换下单调不增:变换丢失了部分区分能力,处理后的分布只能变”近”,不能变”远”。若某个度量在信息丢失后距离反而增大,说明它衡量的是外在的数值标签,而非概率结构本身。均值差度量 $d(p,q) = |\mathbb{E}_p[X] - \mathbb{E}_q[X]|$ 是典型反例:取 $p$ 为 Bernoulli($\pm 1$ 各半,均值 0),$q$ 为 0 处点质量(均值 0),$d(p,q)=0$;施加非充分变换 $Y = |X|$ 后,$d(T_\ast p, T_\ast q) = 1$,距离不降反升。
Fisher 信息度规同时满足两条:它只依赖于 score function $\nabla_\theta \log p_\theta$,在充分统计量变换下不变;又因其对信息丢失有天然的单调收缩性,非充分变换下距离不增。在常数倍意义下,它是唯一合法的黎曼度规。
在本文的语境中,Fisher 信息度规以自然梯度的形式出现——它修正了参数空间的梯度方向,使每一步更新在概率分布层面可控。这仅是它诸多角色之一。Fisher 信息度规之所以渗透统计推断与机器学习的多个分支,除了 Cencov 的独一性,还源于以下独立性质:
- Cramér-Rao 下界:任何无偏估计量的方差下界由 Fisher 信息的逆给出。它为从样本能学到什么设定了基本极限。
- 数据处理不等式:对参数化模型施加任意数据处理,Fisher 信息只减不增。它精密追踪信息在每一层处理中的衰减。
- Jeffreys 先验:$\sqrt{\det I(\theta)}$ 是唯一在参数重参数化下保持体积不变的先验分布,是贝叶斯推断中无信息先验的自然选择。
- 对偶平坦结构:在指数族上,Fisher 度规配以 e/m 对偶仿射联络,定义了同时包含黎曼距离和测地线的完整几何,为最大熵、EM 算法等提供统一框架(Amari & Nagaoka, 2000)。
- 经验 Fisher 与 Hessian:Fisher 信息矩阵是 log 似然 Hessian 的负期望。这一连接使它成为二阶优化方法(如自然梯度下降、K-FAC)的核心构件。
B.2 Fisher 度规的几何来源:平方根映射
上一节从公理化的角度说明了 Fisher 度规的唯一性。本节换一个构造性的视角:Fisher 信息矩阵可以从一个自然的几何操作中直接诱导出来。
将概率分布 $p_\theta(x)$ 做映射 $2\sqrt{p_\theta(x)}$,嵌入到平方可积函数构成的希尔伯特空间 $L^2(\mathcal{X})$ 中。由于 $\int (2\sqrt{p})^2 dx = 4$,该映射将概率分布送到 $L^2$ 中半径为 2 的球面上。球面有自然的 $L^2$ 内积与距离。随参数 $\theta$ 变化,$2\sqrt{p_\theta}$ 在球面上画出一条曲线,该曲线的局部几何由 $L^2$ 度量诱导。
对参数求导:
该方向向量在 $L^2$ 内积下构成的黎曼度规为:
这就是 Fisher 信息矩阵。它的几何含义很清晰:将概率分布通过 $2\sqrt{p}$ 映射嵌入 $L^2$ 球面后,球面上的标准 $L^2$ 度规拉回到参数空间,恰好就是 Fisher 度规。换句话说,Fisher 矩阵不是凭空定义的——它是 $L^2$ 希尔伯特空间的内蕴几何在参数空间上的自然投影。
参考文献
- Čencov, N. N. (1982). Statistical Decision Rules and Optimal Inference. American Mathematical Society.
- Amari, S., & Nagaoka, H. (2000). Methods of Information Geometry. American Mathematical Society.
- Kakade, S. (2002). A Natural Policy Gradient. Advances in Neural Information Processing Systems, 14.
- Ollivier, Y., Arnold, L., Auger, A., & Hansen, N. (2017). Information-Geometric Optimization Algorithms: A Unifying Picture via Invariance Principles. Journal of Machine Learning Research, 18(18), 1–65.
- Schulman, J., Levine, S., Abbeel, P., Jordan, M., & Moritz, P. (2015). Trust Region Policy Optimization. Proceedings of the 32nd International Conference on Machine Learning.
- Schulman, J., Wolski, F., Dhariwal, P., Radford, A., & Klimov, O. (2017). Proximal Policy Optimization Algorithms. arXiv:1707.06347.
- Shao, Z., Wang, P., Zhu, Q., Xu, R., Song, J., Bi, X., … & Guo, D. (2024). DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models. arXiv:2402.03300.
- Zheng, C., Liu, S., Li, M., Chen, X.-H., Yu, B., Gao, C., … & Lin, J. (2025). Group Sequence Policy Optimization. arXiv:2507.18071.