進階策略優化

PPO 的實作細節(PPO implementation details)

PPO 發表的公式很短,但從公式到一個真能達到論文分數的版本,中間填滿了一長串不起眼的工程選擇。重現 PPO 的研究者發現,是這幾十項細節——而不是裁剪目標本身——撐起了它大部分的表現,而悄悄拿掉它們,會把一個強智能體變成弱智能體。這個教訓是:在深度強化學習裡,紙上的演算法和真正可行的演算法,可能是出奇不同的兩回事。

影響最大的細節包括:在每個小批次內把優勢標準化並裁剪、用滑動平均與變異數把觀測標準化、對獎勵做縮放與裁剪、用正交初始化並把最後一層的增益設得很小、在訓練過程中退火學習率、裁剪價值函數的損失、加上熵獎勵、以及對全域梯度範數做裁剪。仔細調過 lambda 與 gamma 的廣義優勢估計也很重要。單看每一項都不高深;合在一起,卻是「能發表」與「不能發表」之間的差別。

這些技巧大多是通用的策略梯度衛生習慣,並非 PPO 專屬;裁剪目標只是其中一味。

又称
PPO code-level tricksthe 37 details