基於人類回饋的強化學習
用 PPO 做偏好最佳化(PPO for preference optimization)
一旦你有了能替行為評分的獎勵模型,你仍得改進策略,好讓它賺到高分——而這是個強化學習問題。近端策略最佳化(PPO)是最常被選來做這件事的演算法。智能體產生一個行為,獎勵模型替它評分,PPO 再推動策略,讓高分行為更可能出現,而且每步都小心翼翼,絕不一個踉蹌就衝進胡言亂語裡。
在語言模型的場景裡,「環境」就是文字生成:策略一個詞元一個詞元地產生回應,獎勵模型給出一個純量獎勵(通常只在結尾),PPO 則用那個獎勵、外加一個對凍結起始模型逐詞元的 KL 懲罰,執行一次裁剪過的策略梯度更新。裁剪把每次更新關在一個信賴域內,讓策略無法因單一吵雜批次就移動太遠——當獎勵訊號本身只是個不完美的模型時,這點至關重要。
以 PPO 為基礎的 RLHF 強大卻難伺候。它有許多會動的零件——一個價值頭、KL 係數、獎勵正規化、裁剪範圍——而且對每一個都很敏感,所以要重現一次好的訓練得格外用心。正是這份複雜,催生了像直接偏好最佳化這樣更簡單的替代方案;但 PPO 仍是最有彈性的配方,也是常見選擇中唯一真能為新的高獎勵行為去探索的那一個。
\max_\theta\ \mathbb{E}_{y\sim\pi_\theta(\cdot\mid x)}\big[r_\phi(x,y)\big]-\beta\,\mathrm{KL}\big(\pi_\theta(\cdot\mid x)\,\|\,\pi_{\mathrm{ref}}(\cdot\mid x)\big)
最大化學到的獎勵,同時用 KL 項把策略拉在起點附近。
又称
另见