RL论文阅读13-mf-ACER2017

1. Tittle

image-20200604111904198

source

2. 标签

  • model-free
  • PG
  • Continue/Discrete

3. 总结

对AC算法的提升,引入了一些创新,包括使用偏差修正的截断重要性采样,随机竞争网络架构和新的TRPO方法(trust region policy optimization)

4. 原理

4.1 背景和问题引出:

agent的目标是最大化return的数学期望。加入Advantage Function后,对于策略的更新为:

策略 π \pi 的梯度:

image-20200605153307002

image-20200605153628972

Advantage Funcion 可以使用全部使用 Q π ( x t , a t ) Q^\pi(x_t,a_t) (V和Q可以相互表示)、带折扣Return或者基于TD的 r t + γ V π ( x t + 1 ) V π ( x t ) r_t + \gamma V^\pi(x_{t+1}) - V^\pi(x_t) 表示而不引入偏差。推导见A3C笔记。但是选择会有不同的方差。在实际应用中,我门使用神经网络来估计这些变量,因此会引入估计的误差(errors)和偏差(bias)

通常,策略梯度的近似过程,如果

  • 使用 R t R_t 会有高方差,低偏差
  • 使用函数估计(function approximation)会高偏差低方差

结合 R t R_t 当前价值估计函数去最小化偏差的同时,维持方方差在一定的范围,是ACER背后主要的设计思想

A3C的处理方法

A3C策略更新

A3C结合了k-step returns 和 function approximation来处理偏差和方差的问题。

注:A3C没有使用replay

4.2 离散的使用经验回放的AC

使用经验回放的off-policy learning明显提高了AC的采样效率,但是控制方差和稳定性也是十分困难的。Importance sampling(重要性采样)是一个比较流行的方法。

对于序列 { x 0 , a 0 , r 0 , μ ( x 0 ) . . . . x k , a k , r k , μ ( x k ) } \{x_0, a_0, r_0, \mu(\cdot|x_0)....x_k,a_k,r_k,\mu(\cdot|x_k)\}

image-20200605172406036

$\rho_t = \frac{\pi (a_t | x_t)}{\mu(a_t |x_t)} $ importance weight。重要性权重。

μ \mu 是生成动作a的策略。 π \pi 是待优化策略

这个估计是无偏差的。但是有很高的方差,因为importance weights没有边界。为了防止importance weights爆炸,Wawrzynski(2009)对这项进行了裁剪。尽管这么做variance有了一个相对的边界,但是会产生偏差。

Degris et al.(2012)对这个问题的处理:在限制过程分布上使用边际函数去表示接下来的梯度的近似估计:

image-20200605173902176

  • 这个式子依赖 Q π Q^\pi 而不是 Q μ Q^\mu 。所以我们必须有能力去估计 Q π Q^\pi
  • 不再有importance weights。取而代之的是marginal importance weight: ρ t \rho_t

Q π Q^\pi 是使用lambda returns估计: R t λ = r t + ( 1 λ ) γ V ( x t + 1 ) + λ γ ρ t + 1 R t + 1 λ R_t^\lambda = r_t + (1-\lambda)\gamma V(x_{t+1})+ \lambda \gamma \rho_{t+1} R^\lambda_{t+1} ,所以在处理bias和variance前需要先选择 λ \lambda 这个超参。

4.2.1 解决Q的估计

论文中使用Retrace(Munos et al.2016)去估计 Q π ( x t , a t ) Q^\pi(x_t,a_t)

image-20200605174949648

image-20200605175357888

等式5是基于Q的,论文中使用了CNN来估计。这个CNN既用来输出 Q θ v ( x t , a t ) Q_{\theta_v}(x_t,a_t) ,也用来输出 π θ ( a t x t ) \pi_\theta(a_t|x_t) 。输出的Q是一个向量,不是标量。

ACER使用 Q r e t ( x t , a t ) Q^{ret}(x_t,a_t) 去估计等式4的 g m a r g g^{marg} 中的 Q π Q^\pi 。明显减小了梯度估计的偏差。

在critic的学习中,使用 Q r e t Q^{ret} 作为target。MSE损失去更新critc的参数 θ v \theta_v 。梯度为:

image-20200605180425698

多步 Q r e t Q^{ret} 估计的两个好处:

  • 减小策略梯度的误差

  • 加快critic的学习,从而再将来减小偏差

4.2.2 偏差纠正+Importance weight truncation

等式4的marginal importance weights 可能会很大,产生不稳定行。

论文提出了裁剪importance 和 引入一个修正项,从而解构等式4为:

image-20200605181020961

image-20200605181724041

第一项截断的importance weight保证了梯度的方差有界。

第二项偏差修正保证了无偏估计。

把Q替换一下, Q θ v Q_{\theta_v} 是critic产生的:

image-20200605182044716

对于采样序列 { x 0 , a 0 , r 0 , μ ( x 0 ) . . . . x k , a k , r k , μ ( x k ) } \{x_0, a_0, r_0, \mu(\cdot|x_0)....x_k,a_k,r_k,\mu(\cdot|x_k)\} ,ACER策略梯度为:

image-20200605182409675

4.2.3 应用并改进TRPO

在AC更新时,也会产生高方差。确保稳定性,限制每一步更新的大小。较小的learning rates是不够的。TRPO算法提供了一个好的解决方案。但是在大规模的数据下计算开销大。

提出了一个新的trust region policy optimization方法处理大规模数据问题。维护一个average policy network。这个平均策略网络是过去策略的平均值,强制更新策略不能够远离这个平均值。

策略网络可以分解成两部分:分布(Distribution ) f f ,和一个深度神经网络$\phi_\theta 来生成这个分布的统计参数。策略可以表示成: \pi(\cdot|x) = f(\cdot | \phi_\theta(x))$

平均策略网络使用软更新:

image-20200605201425949

9式用 f ϕ f 、 \phi 来表示:

image-20200605201625568

论文提出的trust region 更新包括两个阶段:

一:求解下面这个线性KL限制问题

image-20200605205020606

由于线性限制,整体优化问题可以变为

image-20200605205342333

二:反向传播。

附录

关于bias,variance, error

img

图片来源