原文传送门
Wu, Cathy, et al. "Variance reduction for policy gradient with action-dependent factorized baselines." arXiv preprint arXiv:1803.07246 (2018). (ICLR 2018)
特色
Baseline 是 policy gradient 类方法的一个重要的减小方差的手段,这里针对行动可以拆分为若干个条件独立部分的情形,提出了更进一步减小方差的方法。该方法仍然可以保持bias-free。我主要是想随便找篇文章看看 policy gradient 类方法应该如何分析方差。
过程
1. baseline不改变策略梯度的期望
我们先来看只依赖于状态的baseline(通常我们所说的baseline)
如果
2. 最优baseline
baseline不改变策略梯度的期望,但是能够改变它的方差,我们期望能够找到一个最优的baseline使得方差最小。
策略梯度写为
把期望里面的梯度看做一个随机变量
令
策略梯度的方差可以写为(文中写漏了一项,还需要加上
令方差的导数为零,可以求导最优的baseline。(上面的方差是对于所有
在平常使用中,我们并不使用这个计算比较困难的baseline,而是使用
3. Action-dependent baseline
首先观察到很多情况下,action存在这样的结构
- 连续控制的时候,常使用协方差矩阵仅有对角项的多元高斯分布,这时候action的各个维度就可以写为这样的形式;
- 多智能体强化学习里,如果各个智能体的执行是非中心化的,那么各个智能体之间的行动也可以写成这样的形式;
在这种结构下,可以把梯度拆成多个部分的求和
各个部分使用不同的baseline,规定每个部分的baseline只需要不和action对应的这部分有关就可以,即规定
由此,我们可以得到含有action-dependent baseline的策略梯度
4. Optimal action-dependent baseline
最优的意思就是方差最小,分析方式和前面类似,不过为了抵消掉交叉项,需要做如下假设
该假设说明行动中的不同部分被不同部分的策略参数影响。
策略梯度可以看做如下若干部分的梯度求和
各个部分的随机梯度向量
把方差写出来
其中
(33)里面第二项由于前面的假设消掉了,
我们来看单一
对其求导为零,可以得到最优的baseline。
5. 选择一个方便计算的action-dependent baseline
和state-dependent baseline类似,我们推导到最优的baseline,但是出于practical的考虑,一般使用
- Marginalized Q baseline:即使用
作为baseline,其好处是它对于方差的减小程度近乎最优的action-dependent baseline。实际中可以估计一个然后再做marginalization,得到相应的个baseline。
- Monte Carlo Q baseline:估计到一个
之后,要做marginalization需要通过蒙特卡洛采样得到,即
- Mean marginalized Q baseline:如果估计到的
是一个神经网络表示的话,蒙特卡洛采样要求需要把该神经网络向前传播若干次,这比较耗费计算量;这里把它用均值代替,这样只需要正向计算一次了