【ICLR2020】通过强化学习和稀疏奖励进行模仿学习

简介: 【ICLR2020】通过强化学习和稀疏奖励进行模仿学习
  • 论文题目SQIL: Imitation Learning via Reinforcement Learning with Sparse Rewards

所解决的问题?

  从高维的状态动作空间中进行模仿学习是比较困难的,以往的行为克隆算法(behavioral cloning BC)算法容易产生分布漂移(distribution shift),而最近做得比较好的就是生成对抗模仿学习算法(generative adversarial imitation learning (GAIL)),是逆强化(Inverse RL)学习算法与生成对抗网络结合的一种模仿学习算法,这个算法使用adversarial training技术学reward function,而作者提出的算法不需要reward function。整篇文章是在证明constant rewardRL方法与学习复杂的reward function的强化学习算法一样有效。

  文章的主要贡献在于提出了一种简单易于实现版本的模仿学习算法,用于高维、连续、动态环境中。能够很好克服模仿学习中的distribution shift问题。

背景

  模仿学习的问题在于behavior shift,并且误差会累计。一旦trajectory偏离专家的trajectory,智能体并不知道如何回到expert的轨迹状态上来。最近做地比较好的就是GAILGAIL做模仿学习最大的好处就是 encourage long-horizon imitation。那为什么GAIL能够做到long-horizon imitation呢?模型学习一般分为两步,在某个state下采取某个action,一般的BC算法都这么做的,而GAIL除此之外还考虑了采取这个action之后还回到expert 轨迹的下一个状态上。而作者也采纳了GAIL的上述两点优势,但是并未使用GAIL算法中的adversarial training技术,而是使用一个constant reward。如果matching the demonstrated action in a demonstrated state,reward = +1;对于其他的情况 reward =0。也就是说你在给定状态下会采取给定动作,就能拿到奖励。因此整个问题就变成了一个奖励稀疏的强化学习问题。

所采用的方法?

  作者引入soft-q-learning算法,将expert demonstrations的奖励设置为1,而与环境互动得到的新的experiences奖励设置为0。由于soft Q-Learning算法是off-policy的算法,因此有data就可以训练了。整个算法作者命名为 soft Q imitation learning (SQIL)。

Soft Q Imitation Learning算法

  SQILsoft q learning算法上面做了三个小的修正:

  1. expert demonstration初始化填入agentexperience replay buffer,其reward设置为+1
  2. agent与环境互动得到新的data也加入到experience replay buffer里面,其reward设置为0
  3. 平衡demonstration experiencesnew experiences50 % 50\%50%。这个方法在GAILadversarial IRL算法上面也都有应用。

  SQIL算法如下所示:

  其中Q θ 表示的是soft q functionD d e m o demonstrationsδ 2 表示的是soft bellman errorEquation 1表示为:


image.png

其中奖励r rr只有01两个取值。上述公式的理解就是希望demonstrated action能够获得比较高的Q QQ值,而周围的nearby stateaction分布就不期望那么突出,期望均匀一点,这里就跟熵联系起来了。

取得的效果?

所出版信息?作者信息?

  作者是来自加利福尼亚伯克利大学的博士生Siddharth Reddy

参考链接

扩展阅读

  • Maximum entropy model of expert behavior

  Maximum entropy model of expert behaviorSQIL是基于最大熵expert behavior所得出来的算法。策略π \piπ服从Boltzmann distribution


image.png

Soft Q values可通过soft Bellman equation得到:


image.png


  • Behavioral cloning (BC)

  在behavior clone中是去拟合一个参数化的modelπ θ \pi_{\theta}πθ,最小化负的log-likelihood loss


image.png

 本文中作者采用的是soft q function,所以最大化的likelihood目标方程如下所示:

image.png

从这里可以看出作者的目标函数中相比较于行为克隆算法好处在于:后面那一项基于能量的式子是考虑了state transitions

  • Regularized Behavior Clone

  SQIL可以看作是 a sparsity(稀疏) prior on the implicitly-represented rewards的行为克隆算法。

  Sparsity regularization:当agent遇见了一个未见过的state的时候,Q θ Q_{\theta}Qθ也许会输出任意值。(Piot et al., 2014) 等人有通过引入a sparsity prior on the implied rewards 的正则化项。

  • Bilal Piot, Matthieu Geist, and Olivier Pietquin. Boosted and reward-regularized classification for apprenticeship learning. In Proceedings of the 2014 international conference on Autonomous agents and multi-agent systems, pp. 1249–1256. International Foundation for Autonomous Agents and Multiagent Systems, 2014.

  作者与上述这篇文章的不同点在于有将其应用于连续的状态空间,还有加了latest imitation policy进行rollouts采样。

  基于上文的soft Bellman equation

image.png

我们可以得到reward的表达式子:


image.png

从中也可以发现其会考虑下一个状态s ′,而不像BC那样只maximization action likelihood。最终的Regularized BC算法可表示为:


image.png

 其中λ \lambdaλ是超参数,δ 2 soft bellman error的平方。可以看出RBC算法与SQIL有异曲同工之妙。

  • Connection Between SQIL and Regularized Behavioral Clone


image.png

SQIL相比与RBC算法引入了+10reward,相当于是加强了奖励稀疏的先验知识

相关文章
|
机器学习/深度学习 算法 PyTorch
深度学习经典算法PPO的通俗理解
#1 前置知识点 基本概念 [https://www.yuque.com/docs/share/04b60c4c-90ec-49c7-8a47-0dae7d3c78c7?#](https://www.yuque.com/docs/share/04b60c4c-90ec-49c7-8a47-0dae7d3c78c7?#) (部分符合的定义在这里) 要理解PPO,就必须先理解Actor
9035 0
|
6月前
|
机器学习/深度学习 人工智能 自然语言处理
论文介绍:自我对弈微调——将弱语言模型转化为强语言模型的新方法
【5月更文挑战第17天】论文《自我对弈微调》提出了一种新方法,名为SPIN,用于在无需额外人工标注数据的情况下增强大型语言模型(LLM)。SPIN利用自我对弈机制,让模型通过与自身历史版本交互生成自我训练数据,实现性能提升。该方法在多个基准数据集上表现出色,超越了传统监督微调和直接偏好优化。SPIN还为生成对抗网络研究提供了新思路,展示了自我对弈在强化学习和深度学习中的潜力。实验表明,SPIN有效提升了模型性能,为未来研究奠定了基础。[[arxiv](https://arxiv.org/abs/2401.01335v1)]
68 3
|
6月前
|
机器学习/深度学习 开发框架 .NET
强化学习第1天:马尔可夫过程
强化学习第1天:马尔可夫过程
|
机器学习/深度学习 人工智能 自然语言处理
【ICLR2020】基于模型的强化学习算法玩Atari【附代码】
【ICLR2020】基于模型的强化学习算法玩Atari【附代码】
189 0
|
机器学习/深度学习 人工智能 算法
强化学习基础篇【1】:基础知识点、马尔科夫决策过程、蒙特卡洛策略梯度定理、REINFORCE 算法
强化学习基础篇【1】:基础知识点、马尔科夫决策过程、蒙特卡洛策略梯度定理、REINFORCE 算法
 强化学习基础篇【1】:基础知识点、马尔科夫决策过程、蒙特卡洛策略梯度定理、REINFORCE 算法
|
机器学习/深度学习 人工智能 算法
自监督为何有效?243页普林斯顿博士论文「理解自监督表征学习」,全面阐述对比学习、语言模型和自我预测三类方法
自监督为何有效?243页普林斯顿博士论文「理解自监督表征学习」,全面阐述对比学习、语言模型和自我预测三类方法
138 0
自监督为何有效?243页普林斯顿博士论文「理解自监督表征学习」,全面阐述对比学习、语言模型和自我预测三类方法
|
机器学习/深度学习 算法 vr&ar
强化学习第二课【马尔科夫链】
强化学习第二课【马尔科夫链】
362 0
强化学习第二课【马尔科夫链】
|
机器学习/深度学习 存储 编解码
强化学习DQN浓缩
强化学习DQN浓缩
222 0
|
机器学习/深度学习 自然语言处理 算法
MoCo:无监督视觉表示学习的动量对比
MoCo:无监督视觉表示学习的动量对比
286 0
MoCo:无监督视觉表示学习的动量对比
|
机器学习/深度学习 数据可视化 算法
文本分类还停留在BERT?对偶比学习框架也太强了
文本分类还停留在BERT?对偶比学习框架也太强了
223 0