RLHFで最も広く使われる方策勾配型強化学習アルゴリズム。クリッピングによる信頼領域制約で学習の安定性を確保しつつ、効率的な方策更新を実現する。
PPO(Proximal Policy Optimization)は、OpenAIが2017年に提案した方策勾配型の強化学習アルゴリズムである。TRPO(Trust Region Policy Optimization)の理論的保証を近似的に維持しながら、実装の単純さと計算効率を両立させた点で革新的であり、RLHFにおける事実上の標準アルゴリズムとなっている。
PPOの最大の特徴は、方策比率(probability ratio)をクリッピングすることで、1回の更新での方策変化量を制限する点にある。
目的関数は以下の形式をとる:
L_CLIP(θ) = E[min(r_t(θ) × A_t, clip(r_t(θ), 1-ε, 1+ε) × A_t)]
ここで r_t(θ) は新旧方策の確率比、A_t はアドバンテージ推定値、ε はクリッピング範囲(典型値 0.2)である。
| パラメータ | 典型値 | 役割 |
|---|---|---|
| ε(クリップ範囲) | 0.1-0.3 | 方策更新の最大幅を制限 |
| γ(割引率) | 0.99-1.0 | 将来報酬の重み |
| λ(GAE係数) | 0.95 | バイアス-バリアンストレードオフ |
| ミニバッチサイズ | 64-512 | 勾配推定の安定性 |
| エポック数/バッチ | 2-10 | データ再利用回数 |
ゲームやロボティクスでのPPOと異なり、LLM訓練でのPPOには固有の課題がある:
KLペナルティ: SFTモデル(参照方策)からの乖離を防ぐため、報酬にKLダイバージェンス項を加算する。これにより、報酬ハッキングや言語能力の劣化(alignment tax)を抑制する。
生成長の可変性: テキスト生成は可変長であり、トークンレベルの報酬割り当てが必要。通常は系列末尾に一括報酬を与え、GAE(Generalized Advantage Estimation)で各トークンのアドバンテージを逆伝播する。
メモリ要件: 方策モデル・参照モデル・報酬モデル・価値関数の4つのモデルを同時にGPUメモリに保持する必要がある。
| アルゴリズム | 特徴 | PPO比での利点 |
|---|---|---|
| REINFORCE | 最も単純な方策勾配 | 実装容易、但しバリアンス大 |
| TRPO | 信頼領域で厳密制約 | 理論保証が強い、但し計算コスト大 |
| GRPO | グループ相対方策最適化 | 価値関数不要でメモリ削減 |
| ReMax | REINFORCE + ベースライン | PPOより軽量で同等性能の報告あり |
PPO訓練時のハイパーパラメータ調整は経験則に依存する部分が大きい。以下は実務上の知見:
A: TRPOは共役勾配法による二次最適化が必要で実装が複雑かつ計算コストが高い。PPOはクリッピングという単純な機構で近似的に同等の制約を実現し、SGDベースの標準的な最適化パイプラインに組み込める点が決定的な利点である。
A: LLMのRLHF訓練では ε=0.2 が広く使われる出発点である。小さすぎると学習が遅く、大きすぎると方策が不安定に振れる。InstructGPTでは ε=0.2 が採用された。
A: DeepSeek-V2/V3やQwen2.5ではGRPOが採用されメモリ効率の優位性が実証されたが、OpenAIやAnthropicの最新モデルはPPO系を維持しており、性能面でPPOが依然有利な設定も報告されている。