PPO

Proximal Policy Optimization

PPOとは

PPO(Proximal Policy Optimization)とは、2017年にOpenAIが提案した方策勾配法ベースの強化学習アルゴリズムです。方策の更新幅を制限することで学習の安定性を確保しつつ、実装がシンプルであることが特徴です。現在最も広く使われている強化学習アルゴリズムの一つであり、RLHFにも採用されています。

クリッピングによる更新制限

PPOのClip版では、方策の更新比率 r_t(θ) = π_θ(a|s) / π_θ_old(a|s) を[1-ε, 1+ε]の範囲にクリッピングします。これにより、方策が急激に変化することを防ぎ、学習の安定性を確保します。ε(クリッピング幅)は通常0.1〜0.2に設定されます。

TRPOとの比較

PPOの前身であるTRPO(Trust Region Policy Optimization)はKLダイバージェンスの制約を用いて方策の更新を制限しますが、二次最適化が必要で実装が複雑でした。PPOはクリッピングという単純な手法で同等以上の性能を達成し、実装の容易さからTRPOを置き換えました。

PPOの広範な応用

PPOはロボット制御、ゲームAI、自動運転、そして大規模言語モデルの人間フィードバックによる微調整(RLHF)まで、幅広い応用で標準的に使用されています。安定性、性能、実装の容易さのバランスに優れた実用的なアルゴリズムです。