以下是我对Human-Level Control Through Deep Reinforcement Learning这篇论文的解读。首先是对本文提出的问题进行总结;其次综述性地阐述了本研究提出的算法及实验结果,并给出自己理解;最后对本研究方法论,即预处理、模型结构及训练细节进行总结。

问题提出

1.  强化学习中智能体(agent)在面对复杂外界环境时的局限性:他们需要从高维空间学习到输入数据的有效表征,并应用到新环境中,这是个富有挑战性的任务。

2.  传统的强化学习的局限性:只能用在人工提取特征的有效表征(handcrafted feature representations)的情景,或用于可观测的低维状态空间。

本文研究:针对以上问题,本文研究将强化学习策略与深度卷积神经网络(CNN)结合起来,提出一种DeepQ-Network(DQN),它能够从输入的高维感知空间直接学习到知识,并通过端到端的强化学习策略(end-to-end)对智能体(agent)进行训练。本文以Atari游戏作为实验对象,以原始像素和游戏得分作为输入,实验结果表明该算法的性能好过之前所有的算法(包括传统的强化学习算法),并能够达到人类专业玩家的水平。本文研究的两大亮点:

1.  针对传统强化学习出现的不稳定甚至偏差现象,本文提出两种方式来解决这种不稳定问题

a) 使用经验回放(experience replay)来去除观测值之间的相关性(removecorrelations),平滑数据分布(smooth over data distribution)并对数据进行随机抽样(randomover data).

b) 对目标参数进行周期性更新(Q-learning updates),以减少动作值Q与目标值之间的相关性。

2.  用深度卷积神经网络(CNN)作为动作-值函数(action-value function)。利用卷积神经网络的层次特征表征及模拟生物机制的特点,通过观察状态s下的动作a,以折减系数γ计算出当前状态的value,最终的目标是最大化未来的累计奖励(maximize the cumulative future reward)。

在这里,我认为CNN的层次结构对于高维数据特征的学习是有充分的,有帮助的,也能有效解决上述问题1中智能体在高维空间中特征学习的局限性。其次,CNN的共享性原则也能大大减少深度网络的参数量及模型的复杂度,降低计算成本。再者,CNN的层次学习特点与强化学习策略的动作-值函数能够完美地契合。这可以理解为,给定一个输入,由CNN逐层地学习数据的特征表征(由低层到高层,由简单到抽象),agent根据逐层的特征表征做出相应的动作反应并得到每一步的奖励值,最终返回累计的未来奖励值,目标是使得未来的奖励值最大化。对于CNN学习到的一些低层次特征(low-level features),agent可能采取一些通用性动作(general actions);而对于一些高层次特征(high-levelfeatures,如一些class-specific features or patterns),agent会采取一些更有针对性的动作,所对应的奖励值也会越大。这样,CNN所提取的特征都能为agent每一步的动作决策提供依据,二者能够完美地结合起来以最大化未来的奖励函数。

更进一步地说,对于CNN能够适用的数据类型,都可以通过这种方式,让agent自主地通过学习的知识来做出下一步的决策,以得到未来的最大化奖励(或最优化决策);或者,将CNN替换成一些CNN变体(如ResNet, DenseNet等优秀的CNN变体结构)来学习更有效的特征表征;再或是替换成其他类型的深度神经网络(RNN、Capsule等)来适应不同数据类型特征提取的需要以扩展强化学习的适用范围。我认为这种将深度神经网络和强化学习策略结合的思想也是本研究最大贡献之处,而深度神经网络结构的选择可以视具体需求而定。

Methodology

1. Preprocessing:以Atari游戏为实验对象,预处理操作主要降低输入的维度及对Atari模拟器(emulator)的一些处理。首先是对单帧输入进行编码,对每帧的每个像素去最大值,以消除部分图像的缺失;再者是提取通道Y的数据并将其调整为84×84大小。

2. Architecture:模型的总体结构是给定一个状态作为输入,输出值为该状态下的每个动作的Q值。模型具体结构可见论文中图1说明,在此不详细说明。整体思路是将预处理后的84×84图像作为输入,中间层以一些带ReLU为激活函数的卷积层组成,输出层是线性全连接层,输出每个动作所对应的Q值,有多少个动作就有多少个Q值。

3. Training Details:用Atari游戏来验证本文提出的DQN算法,只改变reward设置,将其修剪(clip)在-1到1之间。此外,实验中使用了batch size为32的RMSProp优化算法,以ε-greedy算法,ε为线性退火率(ε由1线性下降到0.1)训练模型。实验过程采用跳帧训练的技巧,即不是对每一帧数据都进行学习,而是跳过几帧相同动作的数据,这样能够避免冗余学习,减少内存的无效占用,达到高效学习的目的。最后,将训练完毕的DQN模型用于测试阶段,每次的初始状态都是随机选取的,这能够减少模型的过拟合程度。

如有不足之处烦请批评指正!

Human-Level Control Through Deep Reinforcement Learning论文解读相关推荐

  1. DDPG:CONTINUOUS CONTROL WITH DEEP REINFORCEMENT LEARNING

    CONTINOUS CONTROL WITH DEEP REINFORCEMENT LEARNING 论文地址 https://arxiv.org/abs/1509.02971 个人翻译,并不权威 T ...

  2. 代码实现 Human-level control through deep reinforcement learning

    代码实现 Human-level control through deep reinforcement learning 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 前言 使用D ...

  3. Human-level control through deep reinforcement learning

    Human-level control through deep reinforcement learning 文章出处:Human-level control through deep reinfo ...

  4. 2015 - Human-level control through deep reinforcement learning

    地址:https://www.nature.com/articles/nature14236

  5. Deep Reinforcement Learning 深度增强学习资源

    http://blog.csdn.net/songrotek/article/details/50572935 1 学习资料 增强学习课程 David Silver (有视频和ppt): http:/ ...

  6. 【DQN】解析 DeepMind 深度强化学习 (Deep Reinforcement Learning) 技术

    原文:http://www.jianshu.com/p/d347bb2ca53c 声明:感谢 Tambet Matiisen 的创作,这里只对最为核心的部分进行的翻译 Two years ago, a ...

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

    深度强化学习(Deep Reinforcement Learning)的资源 2015-04-08 11:21:00|  分类: Torch |  标签:深度强化学习   |举报 |字号 订阅 Goo ...

  8. 算法笔记:Playing Atari with Deep Reinforcement Learning

    Playing Atari with Deep Reinforcement Learning 比较尴尬,上篇文章不是DQN的来源,这篇才是.上篇Nature文章对于DQN做出的改进上次没读明白,查看其 ...

  9. 18 Issues in Current Deep Reinforcement Learning from ZhiHu

    深度强化学习的18个关键问题 from: https://zhuanlan.zhihu.com/p/32153603 85 人赞了该文章 深度强化学习的问题在哪里?未来怎么走?哪些方面可以突破? 这两 ...

最新文章

  1. Linux进程间通信(IPC)-------消息队列
  2. Java 批量文件不打包下载_【Java】Java批量文件打包下载zip
  3. 杭电oj2072c语言,杭电acm 2072(单词数)
  4. 爱立信思科结盟背后:几家欢喜几家愁
  5. 从零开始学python网络爬虫-教你从零开始学会写爬虫(Python)
  6. Network 之五 TCP/IP 协议族、工作流程、常用协议格式
  7. OpenCASCADE绘制测试线束:数据交换命令之XDE 形状命令
  8. Webbots、Spiders和Screen Scrapers:技术解析与应用实践(原书第2版)
  9. Qt的drawText不换行解决
  10. mongodb的架构 副本集搭建
  11. VS2005代码格式化
  12. AJAX解惑篇(转)
  13. 系统性能调优的各个方面
  14. python爬虫网络出错怎么办_python网络爬虫(3)python爬虫遇到的各种问题(python版本、进程等)...
  15. 天翼校园客户端没有linux版本,Linux下突破校园天翼宽带客户端限制(已移植OpenWRT)...
  16. 前端原生Html免费模板网站总结(带网址)
  17. bzoj1135:[POI2009]Lyz
  18. 京东探索研究院NLP水平超越微软 织女Vega v1模型位居GLUE榜首
  19. 马毅:低维模型与深度模型的殊途同归(神经网络、压缩感知和低秩分解与补全)
  20. 世界经典科幻影片TOP20

热门文章

  1. 线下实体店结合VR全景,让虚拟购物更加真实
  2. [element]element-ui框架下载
  3. 幼儿园教师计算机心得,幼儿园教师信息技术应用心得体会
  4. 正信光电新三板挂牌上市
  5. 计算机专业在清华学几年,考上清华退学,就为再考清华计算机?
  6. 题解:luogu P2634 [国家集训队]聪聪可可
  7. 技术点:weekMap和Map的区别
  8. Nanopi-NEO点亮SPI-TFT
  9. 2019年8月8日星期四(系统编程)
  10. 计算机基础知识综合参考书,计算机基础知识综合参考-20210411123539.pdf-原创力文档...