第七章 PPO 背后的数学
PPO 要同时干两件事:别让策略崩,还想把旧数据再用一遍。这一章把两块积木摊开:KL 衡量两个分布有多不像;重要性采样让你能用 b 抽的样本去估计 π 的期望。替代目标则是在旧策略旁边优化一个下界。
- 一KL(p∥q) 问:用 q 来描述真正的 p,平均要多付多少「惊讶」。
- 二KL 不是距离:KL(p∥q) 一般不等于 KL(q∥p)。
- 三重要性采样:从 b 抽样,每个样本乘 π/b,期望就对上 π。
- 四b 离 π 太远,权重爆炸,方差炸。所以策略不能走太远。
- 五PPO 的 clip 是在近似「优化一个局部下界」。
书 §7.1–7.3 · p.105–118
7.1.1 KL 散度
是什么。两个概率分布 p 和 q 有多不一样。离散时:
p 是「真的」,q 是「你以为的」。q 把真的高概率事件估得很低,KL 就大。p = q 时 KL = 0。
书用硬币:正面真正是 0.5。三个人分别估计成不同的 q,谁的 KL 更大,谁错得更远。
书 §7.1.1 · 表 7.1–7.4 · p.105–107
真硬币 p=0.5,拖你的估计 q
正面概率。KL(p∥q) 随 q 离开 0.5 变大。
KL(p∥q),p=0.5
PPO / GRPO 里常出现 DKL(πθ∥πref):正在学的策略别离参考模型太远。同一把尺子。
接下节。旧策略采的数据,怎么拿来估新策略的期望?重要性采样。
7.1.3 重要性采样
是什么。想算 π 下 f(x) 的期望,但样本是从另一个分布 b 抽的。补一个权重 π(x)/b(x):
和 PPO 的关系。轨迹是旧策略采的(扮演 b),却要优化新策略 π。比值 r 正是这个权重。b 离 π 太远,少数样本会带巨大权重,方差爆炸——又回到「别走太远」。
书 §7.1.3 · 图 7.1–7.3 · p.108–111
从 b 抽到「3」,权重是多少
教学:动作像掷出一个数字。拖 π 和 b 在这个点上的概率,看 π/b。
权重 π / b
b 很小而 π 很大:这个罕见样本会被放大很多倍。clip 就是不让这个比随便冲出 [0.8, 1.2]。
接下节。有了「在附近估计」,可以构造一个比原目标更好处理的替代函数。
7.2 替代目标
是什么。原目标 J(θ) 在 θ 一变、采样分布一变时很难直接优化。做法是:在旧策略周围构造一个下界(替代目标),保证优化这个下界时,真目标也不会变差。图 7.4:推下界,原函数跟着往上。
PPO 没有每次去解带 KL 约束的置信域问题(那是 TRPO 的重活),而是用 clip 当一个便宜的近端约束。§7.3 还补充了状态访问分布、全变差距离:它们说明「策略差一点点,占到的状态也会差」,所以近端不仅是动作概率近,连路过的状态都更像。
书 §7.2–7.3 · 图 7.4 · p.112–118
人话收束:旧数据能用,是因为新策略还住在旧策略隔壁;clip 就是那堵墙。
下一章。能不能连价值网络也省掉?GRPO 用一组轨迹互相比较。
合上这一章
- KL。两个分布差多少。参考模型用它拉住新策略。
- 重要性采样。权重 π/b。差太远就爆炸。
- 替代目标。在近处优化下界。clip 是工程上的近端。
章末自测
讲完了。下面几题核对本讲刚说过的概念。点选立刻看对错;做错也不会锁下一章。