TRPO 为什么要用自然梯度优化
普通梯度下降的问题
但强化学习真正关心的不是神经网络权重挪动多少,而是:策略 pi_theta 的行为分布变化多大
权重一点点改动,有时候策略动作概率会翻天覆地;有时候权重改动很大,策略几乎没变
权重空间的欧式距离 ≠ 策略之间的真实距离
SGD 步长很难调:
- 步长大:策略突变、训练震荡、容易崩坏、回报断崖下跌
- 步长太小:学习速度极慢
TRPO,Trust‑Region Policy Optimization
信任区域策略优化
Trust‑Region(信任域):只在当前策略周边、可以信赖的小范围之内搜索更新
Policy Optimization:面向策略网络做优化
核心依靠自然梯度 + KL‑Divergence 约束,防止策略一次性改动过大导致训练崩溃
TRPO 的核心思想
每次更新,严格约束新旧策略的分布变化上限,不让策略跳变得太狠
TRPO (2015): Constrain KL divergence between old and new policy.
Works perfectly but requires expensive second-order optimization (Fisher information matrix, conjugate gradients).
TRPO (2015):用于约束新旧策略之间的 KL 散度。该算法效果非常好,但需要使用昂贵的二阶优化算法来处理问题(例如 Fisher 信息矩阵、共轭梯度法)
F 把参数空间扭曲成策略分布所在的黎曼空间,F⁻¹用来矫正梯度方向
- 普通梯度是权重空间最陡方向
- 自然梯度 = 策略分布空间上的最陡下降方向
