深度强化学习之:模仿学习(imitation learning)

深度强化学习之:模仿学习(imitation learning)

2017.12.10

  

  本文所涉及到的 模仿学习,则是从给定的展示中进行学习。机器在这个过程中,也和环境进行交互,但是,并没有显示的得到 reward。在某些任务上,也很难定义 reward。如:自动驾驶,撞死一人,reward为多少,撞到一辆车,reward 为多少,撞到小动物,reward 为多少,撞到 X,reward 又是多少,诸如此类。。。而某些人类所定义的 reward,可能会造成不可控制的行为,如:我们想让 agent 去考试,目标是让其考 100,那么,这个 agent 则可能会为了考 100,而采取作弊的方式,那么,这个就比较尴尬了,是吧 ?我们当然想让 agent 在学习到某些本领的同时,能遵守一定的规则。给他们展示怎么做,然后让其自己去学习,会是一个比较好的方式。

  本文所涉及的三种方法:1. 行为克隆,2. 逆强化学习,3. GAN 的方法

  

  接下来,我们将分别介绍这三种方法:

  一、Behavior Cloning :

  

  这里以自动驾驶为例,首先我们要收集一堆数据,就是 demo,然后人类做什么,就让机器做什么。其实就是监督学习(supervised learning),让 agent 选择的动作和 给定的动作是一致的。。。

  

  但是,这个方法是有问题的,因为 你给定的 data,是有限的,而且是有限制的。那么,在其他数据上进行测试,则可能不会很好。

  要么,你增加 training data,加入平常 agent 没有看到过的数据,即:dataset aggregation 

 

  通过不断地增加数据,那么,就可以很好的改进 agent 的策略。有些场景下,也许适应这种方法。。。

  

  而且,你的观测数据 和 策略是有联系的。因为在监督学习当中,我们需要 training data 和 test data 独立同分布。但是,有时候,这两者是不同的,那么,就惨了。。。

  于是,另一类方法,出现了,即:Inverse Reinforcement Learning (也称为:Inverse Optimal Control,Inverse Optimal Planning)。

  

  二、Inverse Reinforcement Learning (“Apprenticeship learning via Inverse Reinforcement Learning”, ICML 2004)

  顾名思义,IRL 是 反过来的 RL,RL 是根据 reward 进行参数的调整,然后得到一个 policy。大致流程应该是这个样子:

  

  但是, IRL 就不同了,因为他没有显示的 reward,只能根据 人类行为,进行 reward的估计(反推 reward 的函数)。

  

  在得到 reward 函数估计出来之后,再进行 策略函数的估计。。。

  

  原本的 RL,就是给定一个 reward function R(t)(奖励的加和,即:回报),然后,这里我们回顾一下 RL 的大致过程(这里以 policy gradient 方法为例)

  

  而 Inverse Reinforcement Learning 这是下面的这个思路:

  

  逆强化学习 则是在给定一个专家之后(expert policy),通过不断地寻找 reward function 来满足给定的 statement(即,解释专家的行为,explaining expert behavior)。。。

  专家的这个回报是最大的,英雄级别的,比任何其他的 actor 得到的都多。。。

  据说,这个 IRL 和 structure learning 是非常相似的:

  

  可以看到,貌似真是的哎。。。然后,复习下什么是 结构化学习:

  

  我们对比下, IRL 和 结构化学习:

  

  

  

  

时间: 2024-11-14 06:12:35

深度强化学习之:模仿学习(imitation learning)的相关文章

深度强化学习(Deep Reinforcement Learning)入门:RL base & DQN-DDPG-A3C introduction

转自https://zhuanlan.zhihu.com/p/25239682 过去的一段时间在深度强化学习领域投入了不少精力,工作中也在应用DRL解决业务问题.子曰:温故而知新,在进一步深入研究和应用DRL前,阶段性的整理下相关知识点.本文集中在DRL的model-free方法的Value-based和Policy-base方法,详细介绍下RL的基本概念和Value-based DQN,Policy-based DDPG两个主要算法,对目前state-of-art的算法(A3C)详细介绍,其他

深度强化学习(Deep Reinforcement Learning)的资源

来源:http://wanghaitao8118.blog.163.com/blog/static/13986977220153811210319/ Google的Deep Mind团队2013年在NIPS上发表了一篇牛x闪闪的文章,亮瞎了好多人眼睛,不幸的是我也在其中.前一段时间收集了好多关于这方面的资料,一直躺在收藏夹中,目前正在做一些相关的工作(希望有小伙伴一起交流). 一.相关文章 关于DRL,这方面的工作基本应该是随着深度学习的爆红最近才兴起的,做这方面的研究的一般都是人工智能领域的大

深度强化学习泡沫及路在何方?

一.深度强化学习的泡沫 2015年,DeepMind的Volodymyr Mnih等研究员在<自然>杂志上发表论文Human-level control through deep reinforcement learning[1],该论文提出了一个结合深度学习(DL)技术和强化学习(RL)思想的模型Deep Q-Network(DQN),在Atari游戏平台上展示出超越人类水平的表现.自此以后,结合DL与RL的深度强化学习(Deep Reinforcement Learning, DRL)迅速

【干货总结】| Deep Reinforcement Learning 深度强化学习

在机器学习中,我们经常会分类为有监督学习和无监督学习,但是尝尝会忽略一个重要的分支,强化学习.有监督学习和无监督学习非常好去区分,学习的目标,有无标签等都是区分标准.如果说监督学习的目标是预测,那么强化学习就是决策,它通过对周围的环境不断的更新状态,给出奖励或者惩罚的措施,来不断调整并给出新的策略.简单来说,就像小时候你在不该吃零食的时间偷吃了零食,你妈妈知道了会对你做出惩罚,那么下一次就不会犯同样的错误,如果遵守规则,那你妈妈兴许会给你一些奖励,最终的目标都是希望你在该吃饭的时候吃饭,该吃零食

复现深度强化学习论文经验之谈

近期深度强化学习领域日新月异,其中最酷的一件事情莫过于 OpenAI 和 DeepMind 训练智能体接收人类的反馈而不是传统的奖励信号.本文作者认为复现论文是提升机器学习技能的最好方式之一,所以选择了 OpenAI 论文<Deep Reinforcement Learning from Human Preferences>作为 target,虽获得最后成功,却未实现初衷.如果你也打算复现强化学习论文,那么本文经验也许是你想要的.此外,本文虽对强化学习模型的训练提供了宝贵经验,同时也映射出另外

百度正式发布PaddlePaddle深度强化学习框架PARL

去年,斯坦福大学神经生物实验室与 EPFL 联合举办了一场强化学习赛事--人工智能假肢挑战赛(AI for Prosthetics Challenge),希望将强化学习应用到人体腿部骨骼仿真模拟模型的训练. 经过激烈的角逐,最终来自百度大脑的 NLP 技术团队一举击败众多强劲对手,以9980分的成绩夺得冠军! 近日,百度正式发布在赛事夺冠中起到关键作用的深度强化学习框架  PaddlePaddle PARL,同时开源了基于该框架的 NeurIPS 2018强化学习赛事的完整训练代码.点击"阅读原

复现一篇深度强化学习论文之前请先看了这篇文章!

去年,OpenAI和DeepMind联手做了当时最酷的实验,不用经典的奖励信号来训练智能体,而是根据人类反馈进行强化学习的新方法.有篇博客专门讲了这个实验 Learning from Human Preferences,原始论文是< Deep Reinforcement Learning from Human Preferences>(根据人类偏好进行的深度增强学习). 链接:https://arxiv.org/pdf/1706.03741.pdf 过一些深度强化学习,你也可以训练木棍做后空翻

论文:利用深度强化学习模型定位新物体(VISUAL SEMANTIC NAVIGATION USING SCENE PRIORS)

这是一篇被ICLR 2019 接收的论文.论文讨论了如何利用场景先验知识 (scene priors)来定位一个新场景(novel scene)中未曾见过的物体(unseen objects).举例来说,在「厨房」这一场景中,有一张图片显示「苹果」在冰箱的储物架上,同为水果的物体,如「橙子」,会出现在场景的哪个位置呢?论文提出了用基于强化学习的方法来定位「橙子」. 论文:VISUAL SEMANTIC NAVIGATION USING SCENE PRIORS 论文作者:Wei Yang , X

深度强化学习Deep Reinforcement Learning 学习过程流水账

2016/10/23 这篇文章和那篇三维重建的流水账一样,用来记录一些关键资料来源和发牢骚. Python怎么学上手快,够用? 神经网络怎么上手? 强化学习怎么上手? 目标驱动,先去看用Python写的强化学习的代码,再去看一些实现各种神经网络的Python代码.再看两种融合的代码. 熟悉工作环境和工作所用工具,比如Tensorflow之类的.