深度强化学习基础到前沿论文阅读笔记

【5分钟 Paper】Reinforcement Learnin

2020-03-25  本文已影响0人  小小何先生
标题及作者信息

所解决的问题?

  作者提出一种energy-based 的强化学习算法,将其运用于连续的状态和动作空间问题中,将其称之为Soft Q-Learning。这种算法的好处就是鲁棒性和tasks之间的skills transfer

背景

  以往的方法是通过stochastic policy来增加一点exploration,例如增加噪声,或者使用一个entropy很高的policy来对其进行初始化。但是有时候我们确实会期望去学一个stochastic behaviors(鲁棒性会更强,具体参见文末扩展阅读)。

  那这样的一种stochastic policy会是optimal policy吗?当我们考虑一个最优的控制和概率推断问题之间的联系的话( consider the connection between optimal control and probabilistic inference),stochastic policy可以被视为是一种最优的选择(optimal answer )。(Todorov, 2008)

  直观理解就是,将控制问题作为一个推理的过程(framing control as inference produces policies),目的不仅仅是为了去产生一个确定性的lowest cost behavior,而是整个low-cost behavior。(Instead of learning the best way to perform the task, the resulting policies try to learn all of the ways of performing the task.)也就是我要找到这个问题所有的“最优解”

  这种方法也可以作为一个困难问题的初始化,比如用这种方法训练一个robot向前走的model,然后这个model作为下次训练robot跳跃、奔跑的初始化参数;在多模态的奖励空间中是一种更好的exploration机制(a better exploration mechanism for seeking out the best mode in a multi-modal reward landscape);由于behavior的选择变多了,所以在处理干扰的时候,鲁棒性更强。

  前人也有一些stochastic policy的一些研究(参考文末资料),但是大部分都难以用于高维连续动作空间。或者是一些简单的高斯策略分布(very limited)。那能不能去找到一个任意分布的策略分布呢?

  作者提出了一种energy-based model(EBM)的方法,energy functionsoft Q function

所采用的方法?

Maximum Entropy Reinforcement Learning

  标准的强化学习算法的优化目标为:

\pi_{\mathrm{std}}^{*}=\arg \max _{\pi} \sum_{t} \mathbb{E}_{\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right) \sim \rho_{\pi}}\left[r\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)\right]

  Maximum entropy RL算法的优化目标:

\pi_{\mathrm{MaxEnt}}^{*}=\arg \max _{\pi} \sum_{t} \mathbb{E}_{\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right) \sim \rho_{\pi}}\left[r\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)+\alpha \mathcal{H}\left(\pi\left(\cdot | \mathbf{s}_{t}\right)\right)\right]

  其中\alpha是衡量rewardentropy之间的权重系数。与以往的Boltzman explorationPGQ算法不一样的地方在于,maximum entropy objective会使得整个trajectorypolicy分布的entropy变大。

Soft Value Functions and Energy-Based Models

  传统的RL方法一般action是一个单峰的策略分布(unimodal policy distribution,下图中左图所示),而我们想要探索整个的action分布,很自然的想法就是对其取幂,就变成了一个多峰策略分布 (multimodal policy distribution)。

A multimodal Q-function

  由此作者使用了一种energy-basedpolicy方法,如下形式:

\pi\left(\mathbf{a}_{t} | \mathbf{s}_{t}\right) \propto \exp \left(-\mathcal{E}\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)\right)

  其中\mathcal{E}energy function,可以用neural network来表示。

Theorem1. Let the soft Q-function be defined :

  定义soft q function

\begin{array}{l} Q_{\mathrm{soft}}^{*}\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)=r_{t}+ \\ \mathbb{E}_{\left(\mathbf{s}_{t+1}, \ldots\right) \sim \rho_{\pi}}\left[\sum_{l=1}^{\infty} \gamma^{l}\left(r_{t+l}+\alpha \mathcal{H}\left(\pi_{\mathrm{MaxEnt}}^{*}\left(\cdot | \mathbf{s}_{t+l}\right)\right)\right)\right] \end{array}

  和soft value function

V_{\mathrm{soft}}^{*}\left(\mathbf{s}_{t}\right)=\alpha \log \int_{\mathcal{A}} \exp \left(\frac{1}{\alpha} Q_{\mathrm{soft}}^{*}\left(\mathbf{s}_{t}, \mathbf{a}^{\prime}\right)\right) d \mathbf{a}^{\prime}

  Maximum entropy RL算法的优化目标:

\pi_{\mathrm{MaxEnt}}^{*}=\arg \max _{\pi} \sum_{t} \mathbb{E}_{\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right) \sim \rho_{\pi}}\left[r\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)+\alpha \mathcal{H}\left(\pi\left(\cdot | \mathbf{s}_{t}\right)\right)\right]

  由此可以得到上述Maximum entropy RL算法的优化目标的 the optimal policy

\pi_{\mathrm{MaxEnt}}^{*}\left(\mathbf{a}_{t} | \mathbf{s}_{t}\right)=\exp \left(\frac{1}{\alpha}\left(Q_{\mathrm{soft}}^{*}\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)-V_{\mathrm{soft}}^{*}\left(\mathbf{s}_{t}\right)\right)\right)

  Soft Q Learning中Policy Improvement 证明中有上述公式定义的部分解释(最优策略一定会满足这种energy-based的形式)。

  Theorem1maximum entropy objectiveenergy-based的方法联系在一起了。其中\frac{1}{\alpha} Q_{\mathrm{soft}}\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right) acts as the negative energy。\frac{1}{\alpha}V_{soft}(s_{t}) serve as the log-partition function。

Soft Q function会满足Soft Bellman Equation

Q_{\mathrm{soft}}^{*}\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)=r_{t}+\gamma \mathbb{E}_{\mathbf{s}_{t+1} \sim p_{\mathbf{s}}}\left[V_{\mathrm{soft}}^{*}\left(\mathbf{s}_{t+1}\right)\right]

  到此一些基本的定义就定义完成了,之后我们需要将Q-Learning的算法用于maximum entropy policy就可以了。

Training Expressive Energy-Based Models via Soft Q-Learning

  通过压缩映射能够证明:

\begin{aligned} Q_{\mathrm{soft}}\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right) & \leftarrow r_{t}+\gamma \mathbb{E}_{\mathbf{s}_{t+1} \sim p_{\mathrm{s}}}\left[V_{\mathrm{soft}}\left(\mathbf{s}_{t+1}\right)\right], \forall \mathbf{s}_{t}, \mathbf{a}_{t} \\ V_{\mathrm{soft}}\left(\mathbf{s}_{t}\right) & \leftarrow \alpha \log \int_{\mathcal{A}} \exp \left(\frac{1}{\alpha} Q_{\mathrm{soft}}\left(\mathbf{s}_{t}, \mathbf{a}^{\prime}\right)\right) d \mathbf{a}^{\prime}, \forall \mathbf{s}_{t} \end{aligned}

  会收敛到Q_{soft}^{*}V_{soft}^{*}。然后这里还是有几个点需要去考虑,比如如何将其用于大规模的stateaction空间。从energy-based中采样会变得很棘手(intractable)。

Soft Q Learning

  即使证明了soft贝尔曼方程会收敛,但是V_{soft}^{*}的计算过程中含有积分项,因此处理起来还是会很困难。作者用function approximator来定义Q_{soft}^{\theta}(s,a)

  First,想要用stochastic optimization方法来对上述公式进行优化,我们首先将soft value function通过重要性采样得到其期望的形式:

V_{\mathrm{soft}}^{\theta}\left(\mathbf{s}_{t}\right)=\alpha \log \mathbb{E}_{q_{\mathbf{a}^{\prime}}}\left[\frac{\exp \left(\frac{1}{\alpha} Q_{\mathrm{soft}}^{\theta}\left(\mathbf{s}_{t}, \mathbf{a}^{\prime}\right)\right)}{q_{\mathbf{a}^{\prime}}\left(\mathbf{a}^{\prime}\right)}\right]

  其中q_{a^{\prime}}可以为action space中的任意一个分布。我们可以将soft Q-Iteration 表示为最小化形式:

J_{Q}(\theta)=\mathbb{E}_{\mathbf{s}_{t} \sim q_{s_{t}}, \mathbf{a}_{t} \sim q_{\mathbf{a}_{t}}}\left[\frac{1}{2}\left(\hat{Q}_{\mathrm{soft}}^{\bar{\theta}}\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)-Q_{\mathrm{soft}}^{\theta}\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)\right)^{2}\right]

  其中\hat{Q}_{\mathrm{soft}}^{\bar{\theta}}\left(\mathbf{s}_{t}, \mathbf{a}_{t}\right)=r_{t}+\gamma \mathbb{E}_{\mathbf{s}_{t+1} \sim p_{\mathbf{s}}}\left[V_{\mathrm{soft}}^{\theta}\left(\mathbf{s}_{t+1}\right)\right]target Q-Value

Approximate Sampling and Stein Variational Gradient Descent (SVGD)

  那我们如何从soft q function中采样呢?传统的从energy-based分布中采样通常会有两种策略:1. use Markov chain Monte Carlo (MCMC) based sampling;2. learn a stochastic sampling network trained to output approximate samples from the target distribution . 然而作者依据2016年Liu, Q. and Wang, D.提出的两种方法,a sampling network based on Stein variational gradient descent (SVGD) 和 amortized SVGD.做采样。

  这样做的好处主要有三点,提供一个stochastic sample generation;会收敛到EBM精确的后验分布;第三他可以跟actor critic算法联系起来,也就有了之后的SAC

  我们想要去学习一个state-conditioned stochastic neural network \mathbf{a}_{t}=f^{\phi}\left(\xi ; \mathbf{s}_{t}\right)\phi 为网络参数,\xi 为高斯或者其他任意一个分布的噪声。想要去寻找一个参数\phi下的动作分布\pi^{\phi}(a_{t},s_{t}),期望这个分布能够近似energy-based的分布,KL divergence定义如下:

J_{\pi}\left(\phi ; \mathbf{s}_{t}\right)= D_{K L}\left(\pi^{\phi}\left(\cdot | \mathbf{s}_{t}\right) \| \exp \left(\frac{1}{\alpha}\left(Q_{\text {soft }}^{\theta}\left(\mathbf{s}_{t}, \cdot\right)-V_{\text {soft }}^{\theta}\right)\right)\right)

  Stein variationa lgradient descent如下:

\begin{aligned} \Delta f^{\phi}\left(\cdot ; \mathbf{s}_{t}\right)= \mathbb{E}_{\mathbf{a}_{t}\sim \pi^{\phi}}[\kappa\left(\mathbf{a}_{t}, f^{\phi}\left(\cdot ; \mathbf{s}_{t}\right)\right) \nabla_{\mathbf{a}^{\prime}} ]Q_{\mathrm{soft}}^{\theta}\left(\mathbf{s}_{t}, \mathbf{a}^{\prime}\right)|_{\mathbf{a}^{\prime}=\mathbf{a}_{t}}\\+\alpha \nabla_{\mathbf{a}^{\prime}} \kappa(\mathbf{a}^{\prime}, f^{\phi}(\cdot ; \mathbf{s}_{t}))|_{\mathbf{a}^{\prime}=\mathbf{a}_{t}}] \end{aligned}

  其中\kappa表示核函数,\Delta f^{\phi}是the optimal direction of the reproducing kernel Hilbert space of \kappa,使用链导法则和Stein variational gradient into policy network我们有:

\frac{\partial J_{\pi}\left(\phi ; \mathbf{s}_{t}\right)}{\partial \phi} \propto \mathbb{E}_{\xi}\left[\Delta f^{\phi}\left(\xi ; \mathbf{s}_{t}\right) \frac{\partial f^{\phi}\left(\xi ; \mathbf{s}_{t}\right)}{\partial \phi}\right]

Soft Q Learning算法伪代码

取得的效果?

验证 multi-modal behavior实验结果 Soft Q会考虑更多的最优策略

所出版信息?作者信息?

  这篇文章是ICML2017上面的一篇文章。第一作者Tuomas HaarnojaGoogle DeepMindresearch Scientist

在这里插入图片描述

参考链接

扩展阅读

为什么要使用Stochastic Policy

  在有些情况下我们需要去学习一个stochastic policy,为什么要去学这样一个stochastic policy呢?作者举例了两点理由:

  1. exploration in the presence of multimodal objectives(多模态的信息来源), and compositionality attained via pretraining. (Daniel et al., 2012)
  2. 增加在不确定环境下的鲁棒性(Ziebart,2010),在模仿学习中(Ziebartetal.,2008),改善收敛性和计算性能( improved convergence and computational properties) (Gu et al., 2016a)

前人在 maximum entropy stochastic policy上的研究

  1. Z-learning (Todorov, 2007);

  Todorov, E. Linearly-solvable Markov decision problems. In Advances in Neural Information Processing Systems, pp. 1369–1376. MIT Press, 2007.

  1. maximum entropy inverse RL(Ziebartetal.,2008);

   Ziebart, B. D., Maas, A. L., Bagnell, J. A., and Dey, A. K. Maximum entropy inverse reinforcement learning. In AAAI Conference on Artificial Intelligence, pp. 1433– 1438, 2008.

  1. approximate inference using message passing (Toussaint, 2009);
  1. \Psi-learning (Rawlik et al., 2012);

  Rawlik, K., Toussaint, M., and Vijayakumar, S. On stochastic optimal control and reinforcement learning by approximate inference. Proceedings of Robotics: Science and Systems VIII, 2012.

  1. G-learning (Fox et al., 2016),

   Fox, R., Pakman, A., and Tishby, N. Taming the noise in reinforcement learning via soft updates. In Conf. on Uncertainty in Artificial Intelligence, 2016.

  1. PGQ (O’Donoghue et al., 2016);recent proposals in deep RL

   O’Donoghue, B., Munos, R., Kavukcuoglu, K., and Mnih, V. PGQ: Combining policy gradient and Q-learning. arXiv preprint arXiv:1611.01626, 2016

微信公众号

公众号介绍:主要研究分享深度学习、机器博弈、强化学习等相关内容!期待您的关注,欢迎一起学习交流进步!

上一篇下一篇

猜你喜欢

热点阅读