Policy Gradient的缺点
根据策略梯度方法,参数更新的方法是
θ n e w = θ o l d + α ∇ θ J \theta_{new}=\theta_{old}+\alpha\nabla_\theta J θnew=θold+α∇θJ
策略梯度算法的硬伤就在更新步长 α \alpha α,当步长不合适时,更新的参数所对应的策略是一个更不好的策略,当利用这个更不好的策略进行采样学习时,再次更新的参数会更差,因此很容易导致越学越差,最后崩溃。

(对于监督性学习来说,当某次迭代前后结果相差太大时,下一次更新有可能会解决这个问题)
合适的步长是指当策略更新后,回报函数的值不能更差。为了实现这一点,一般的想法就是将新策略的回报分解为旧策略的回报加上旧策略的一些什么东西。
贝尔曼公式的等效方法
假设 η ( π θ ) \eta(\pi_{\theta}) η(πθ)表示当前策略 π θ \pi_\theta πθ下轨迹 τ \tau τ的累积反馈值期望( π θ → π \pi_\theta\rightarrow\pi πθ→π):
η ( π ) = E τ ∼ π [ ∑ t = 0 ∞ γ t ( r ( s t ) ) ] \eta(\pi)=E_{\tau\sim\pi}[\sum_{t=0}^\infty\gamma^t(r(s_t))] η(π)=Eτ∼π[t=0∑∞γt(r(st))]
其中 γ \gamma γ是折扣系数。则新策略 π ~ \widetilde{\pi} π
与旧策略 π \pi π之间存在以下关系(类似于贝尔曼公式):
η ( π ~ ) = η ( π ) + E τ ∼ π ~ [ ∑ t = 0 ∞ γ t A π ( s t , a t ) ] ,(1) \eta(\widetilde{\pi})=\eta(\pi)+E_{\tau\sim\widetilde{\pi}}[\sum_{t=0}^\infty\gamma^tA_\pi(s_t,a_t)]\text{,(1)} η(π
)=η(π)+Eτ∼π
[t=0∑∞γtAπ(st,at)],(1)
其中 A A A</

本文探讨了策略梯度方法的缺点,特别是步长调整问题,以及如何通过贝尔曼公式等价方法改进。介绍了四个关键技巧,包括旧策略分布近似、重要性采样、KL散度约束和使用π代替ρ。核心讲解了TRPO的伪代码,展示了如何通过这些技巧优化策略更新过程。
最低0.47元/天 解锁文章
1540

被折叠的 条评论
为什么被折叠?



