策略梯度方法
分數函數估計式(score-function estimator)
你常常想求某個量平均值的梯度,而這個量依賴隨機抽樣——例如動作從你的策略隨機抽出時的期望獎勵。麻煩在於:隨機性本身依賴參數,所以你不能直接對平均內部的東西微分。分數函數估計式正是標準的脫困之道:它把「期望的梯度」化成「梯度的期望」,而後者可以抽樣。
做法是把抽到的值 f(x) 乘上樣本對數機率的梯度 ∇_θ log p_θ(x),再對樣本取平均。對任何性質良好的 f,這都是 ∇_θ E[f(x)] 的不偏估計,即使 f 不可微、甚至你根本不知道它的形式。在強化學習裡,f 是報酬、p_θ 是策略,這正是實務上計算策略梯度定理的方式。
它最大的長處是通用——對 f 只需要樣本與獎勵,別無所求。它最大的弱點是變異數,因為對數機率那一項可能很大,又和 f 無相關。這就是為什麼分數函數估計幾乎一定要先搭配基準線與其他變異數削減技巧,才真正堪用。
\nabla_\theta\,\mathbb{E}_{x\sim p_\theta}[f(x)]=\mathbb{E}_{x\sim p_\theta}\!\left[f(x)\,\nabla_\theta\log p_\theta(x)\right]
用樣本的分數對 f 加權,就能「穿過」抽樣來微分。
又稱
另見