ML2.2.2 PG 之 PPO 算法思路和实践

1. 资料

PG 方法核心思路:https://pangruitao.com/post/5164

2. PPO 算法思路

PPO 是基于 AC 的进一步优化。AC 的思路和实现见:https://pangruitao.com/post/5262

其核心优化思路是: 限制策略更新幅度

  • AC 的策略更新可以导致策略分布变化过大,从而影响训练的稳定性。
  • PPO 引入了 Clipped Objective,通过对策略比率的更新幅度进行限制,避免单次更新过大。

更新幅度定义为:

  • \(r_t(\theta) = \frac{\pi_\theta(a|s)}{\pi_{\theta_{\text{old}}}(a|s)} = \exp\left(\log \pi_\theta(a|s) – \log \pi_{\theta_{\text{old}}}(a|s)\right)\)

更新时对幅度进行限制,使更新公式为

  • \(L^{\text{CLIP}}(\theta) = \mathbb{E}_t \left[ \min\left( r_t(\theta) \cdot \hat{A}_t, \text{clip}(r_t(\theta), 1-\epsilon, 1+\epsilon) \cdot \hat{A}_t \right) \right]\)

发表评论