深入浅出强化学习:原理入门pdf下载

深入浅出强化学习:原理入门百度网盘pdf下载

作者:
简介:深入浅出强化学习:原理入门
出版社:电子工业出版社
出版时间:2018-01-01
pdf下载价格:0.00¥

免费下载


书籍下载


内容介绍

编辑推荐
  从零起步掌握强化学习技术精髓,称霸人工智能领域!
  《深入浅出强化学习:原理入门》针对初学者的需求,直接分析原理,并辅以编程实践。从解决问题的思路,层层剖析,普及了传统的强化学习基本方法和当前炙手可热的深度强化学习方法,直接将读者带入强化学习的殿堂。读完本书,读者能在熟练掌握原理的基础上,直接上手编程实践。
  本书的叙述方式简洁、直接、清晰,值得精读!
  本书除了系统地介绍理论,还介绍了相应的数学基础与编程实例,因此既适合零基础的人员入门学习,也适合相关人员作为研究参考。


  特别说明:购买此电子书,暂无附赠视频,敬请谅解。

内容简介
  《深入浅出强化学习:原理入门》用通俗易懂的语言深入浅出地介绍了强化学习的基本原理,覆盖了传统的强化学习基本方法和当前炙手可热的深度强化学习方法。开篇从最基本的马尔科夫决策过程入手,将强化学习问题纳入到严谨的数学框架中,接着阐述了解决此类问题最基本的方法——动态规划方法,并从中总结出解决强化学习问题的基本思路:交互迭代策略评估和策略改善。
  基于这个思路,分别介绍了基于值函数的强化学习方法和基于直接策略搜索的强化学习方法。最后介绍了逆向强化学习方法和近年具有代表性、比较前沿的强化学习方法。
  除了系统地介绍基本理论,书中还介绍了相应的数学基础和编程实例。因此,《深入浅出强化学习:原理入门》既适合零基础的人员入门学习、也适合相关科研人员作为研究参考。
目录
版权信息
推荐序一
推荐序二
推荐序三
推荐序四
推荐序五
前言
1 绪论
1.1 这是一本什么书
1.2 强化学习可以解决什么问题
1.3 强化学习如何解决问题
1.4 强化学习算法分类及发展趋势
1.5 强化学习仿真环境构建
1.6 本书主要内容及安排
第一篇 强化学习基础
2 马尔科夫决策过程
2.1 马尔科夫决策过程理论讲解
2.2 MDP中的概率学基础讲解
2.3 基于gym的MDP实例讲解
2.4 习题
3 基于模型的动态规划方法
3.1 基于模型的动态规划方法理论
3.2 动态规划中的数学基础讲解
3.3 基于gym的编程实例
3.4 最优控制与强化学习比较
3.5 习题
第二篇 基于值函数的强化学习方法
4 基于蒙特卡罗的强化学习方法
4.1 基于蒙特卡罗方法的理论
4.2 统计学基础知识
4.3 基于Python的编程实例
4.4 习题
5 基于时间差分的强化学习方法
5.1 基于时间差分强化学习算法理论讲解
5.2 基于Python和gym的编程实例
5.3 习题
6 基于值函数逼近的强化学习方法
6.1 基于值函数逼近的理论讲解
6.2 DQN及其变种
6.3 函数逼近方法
6.4 习题
第三篇 基于直接策略搜索的强化学习方法
7 基于策略梯度的强化学习方法
7.1 基于策略梯度的强化学习方法理论讲解
7.2 基于gym和TensorFlow的策略梯度算法实现
7.3 习题
8 基于置信域策略优化的强化学习方法
8.1 理论基础
8.2 TRPO中的数学知识
8.3 习题
9 基于确定性策略搜索的强化学习方法
9.1 理论基础
9.2 习题
10 基于引导策略搜索的强化学习方法
10.1 理论基础
10.2 GPS中涉及的数学基础
10.3 习题
第四篇 强化学习研究及前沿
11 逆向强化学习
11.1 概述
11.2 基于最大边际的逆向强化学习
11.3 基于最大熵的逆向强化学习
11.4 习题
12 组合策略梯度和值函数方法
13 值迭代网络
13.1 为什么要提出值迭代网络
13.2 值迭代网络
14 基于模型的强化学习方法:PILCO及其扩展
14.1 概述
14.2 PILCO
14.3 滤波PILCO和探索PILCO
14.4 深度PILCO
后记
参考文献
前言
  2017年5月,AlphaGo击败世界围棋冠军柯洁,标志着人工智能进入一个新的阶段。AlphaGo背后的核心算法——深度强化学习——成为继深度学习之后广泛受人关注的前沿热点。与深度学习相比,深度强化学习具有更宽泛的应用背景,可应用于机器人、游戏、自然语言处理、图像处理、视频处理等领域。深度强化学习算法被认为是最有可能实现通用人工智能计算的方法。不过,由于深度强化学习算法融合了深度学习、统计、信息学、运筹学、概率论、优化等多个学科的内容,因此强化学习的入门门槛比较高,并且,到目前为止,市面上没有一本零基础全面介绍强化学习算法的书籍。
  本书是笔者在南开大学计算机与控制工程学院做博士后期间,每周在课题组内讲解强化学习知识的讲义合集。在学习强化学习基本理论的时候,我深深地感受到强化学习理论中的很多概念和公式都很难理解。经过大量资料和文献的查阅并终于理解一个全新的概念时,内心涌现的那种喜悦和兴奋,鼓动着我将这些知识分享给大家。为此,我在知乎开辟了《强化学习知识大讲堂》专栏,并基本保持了每周一次更新的速度。该专栏得到大家的关注,很多知友反映受益良多,本书的雏形正是来源于此。在成书时,考虑到书的逻辑性和完整性,又添加了很多数学基础和实例讲解。希望本书能帮助更多的人入门强化学习,开启自己的人工智能之旅。
  在写作过程中,博士后合作导师方勇纯教授给了大量的建议,包括书的整体结构、每一章的讲述方式,甚至每个标题的选择。写作后,方老师细致地审阅了全文,给出了详细的批注,并多次当面指导书稿的修改。正是因为方老师的耐心指导与辛勤付出,本书才得以顺利完成。
  同时,非常感谢组内的研究生丁杰、朱威和赵铭慧三位同学,通过与他们的交流,我学会了如何更明晰地讲解一个概念。本书的很多讲解方式都是在与他们的交流中产生的。
  本书在写作过程中参考了很多文献资料,这些文献资料是无数科研工作者们日日夜夜奋斗的成果。本书对这些成果进行加工并形成了一套自成体系的原理入门教程。可以说没有这些科研工作者们的丰硕成果就没有今天蓬勃发展的人工智能,也就没有这本书,在此对这些科学工作者们表示由衷的敬意。
  本书前六章的内容及组织思路很大部分参考了David Silver的网络课程,同时参考了强化学习鼻祖Richard S.Sutton等人所著的Reinforcement Learning:An Introduction,在此向Silver和Sutton致敬。
  本书第8章介绍了置信域强化学习算法,主要参考了John Shulman的博士论文,在此向John Shulman博士及其导师Pieter Abbeel致敬。第10章主要介绍了Sergey Levine博士的工作,在此对其表示感谢。在强化学习前沿部分,本书介绍了最近一年该领域很优秀的研究工作,如Donoghue的组合策略梯度和Qlearning方法,Tamar的值迭代网络,Deisenroth的PILCO方法和McAllister的PILCO扩展方法,在此对这些作者表示感谢。当然,本书还介绍了很多其他科研工作者的工作,在此对他们一并致谢。
  本书阐述的主要是前人提出的强化学习算法的基本理论,并没有介绍笔者个人的工作,但在此仍然要感谢目前我负责的两项基金的支持:国家自然科学基金青年基金(61603200)和中国博士后基金面上项目(2016M601256)。这两个项目都和强化学习有关,本书也可看成是这两个项目的前期调研和积累。关于更多笔者个人的工作,留待以后再与大家分享。
  由于个人水平有限,书稿中难免有错误,欢迎各位同行和读者批评指正。我的个人邮箱是guoxiansia@163.com,如有疑问,欢迎咨询。
  最后,感谢我的家人,感谢我的爱人王凯女士,感谢她长时间对我的理解和支持,没有她的帮助,我一无所有,一事无成。这本书献给她。
  郭宪
  2017年11月
精彩书摘
  这是一本人人都可以读懂的书。唐代大诗人白居易写诗定稿的标准是“老妪能解”,也就是说只有连市井中的老妇人都能听懂的诗才是好诗。本书力求做到这一点。不过,真正做到“老妪能解”的程度还是有困难的。因为强化学习是集数学、工程学、计算机科学、心理学、神经科学于一身的交叉学科。力图将这门“深奥”的学科讲明白,是写作本书的目的。
  本书讲的是强化学习算法,什么是强化学习算法呢,它离我们有多远?2016年和2017年最具影响力的AlphaGo大胜世界围棋冠军李世石和柯洁事件,其核心算法就用到了强化学习算法。相信很多人想了解或者转行研究强化学习算法或多或少都跟这两场赛事有联系。如今,强化学习继深度学习之后,成为学术界和工业界追捧的热点。从目前的形式看,强化学习正在各行各业开花结果,前途一片大好。然而,强化学习的入门却很难,明明知道它是一座“金山”,可是由于总不能入门,只能望“金山”而兴叹了。另外,市面上关于强化学习的中文书并不多,即便有,翻开几页出现的各种专业术语,一下就把人搞懵了。本来下定决心要啃下这块硬骨头的,可是啃了几天发现,越啃越痛苦,连牙都咯掉了,肉渣还没吃到。本书下决心不给大家吃骨头,只给肉,因此本书与其他教科书有以下几个方面的不同。
  第一,本书的语言风格偏口语化。因为本书的写作目的是让大家尽快入门强化学习。众所周知,学一门新的课程,最快的入门方式就是请私人家教进行一对一的训练。然而,由于各种原因,这种方式并非对每个人都现实可行。而本书,正希望通过这种口语化的方式与读者交流,尽量实现一对一的训练效果。读者们可以将这本书想象成自己的私人家教。
  第二,本书不会将数学基础作为单独的章节列出来,而是在强化学习算法中用到哪些数学,就在那个章节里介绍。这样,就算是没有多少数学基础的读者也可以学习;而对于那些有数学基础的读者,通过将数学与具体的强化学习算法相结合,可以提升数学的应用能力。
  第三,本书的每部分都包括理论讲解,代码讲解和直观解释三项内容。强化学习算法是应用性很强的算法,大部分读者学习强化学习算法的目的是用来解决实际问题的。一边学理论,一边写代码,可以使读者在学习的过程中,同步提升理论研究和解决问题两方面的能力。
  第四,本书涵盖的内容相当丰富,几乎会涉及强化学习算法的各个方面。从最基础的强化学习算法到目前最前沿的强化学习算法都会有所涉猎。所以,本书可以说是“完全”教程。当然了,这里所谓的“完全”也只是相对的。因为,强化学习算法当前正处于快速发展中,每个月都会有新的突破。但是,强化学习的基本思想是不会那么快变化的,最新的突破都是基于这些基本的思想而来。所以,读完了本书,你再继续读最新的论文,就不会再有如读天书的感觉了。或者说,读完了本书你就可以参与到构建能改变世界的伟大算法中了。
  我们再回到刚才的问题:什么是强化学习算法?
  要回答这个问题,必须先回答强化学习可以解决什么问题,强化学习如何解决这些问题。
  如图1.1所示是强化学习算法的成功案例。其中的A图为典型的非线性二级摆系统。该系统由一个台车(黑体矩形表示)和两个摆(红色摆杆)组成,可控制的输入为台车的左右运动,该系统的目的是让两级摆稳定在竖直位置。两级摆问题是非线性系统的经典问题,在控制系统理论中,解决该问题的基本思路是先对两级摆系统建立精确的动力学模型,然后基于模型和各种非线性的理论设计控制方法。一般来说,这个过程非常复杂,需要深厚的非线性控制理论的知识。而且,在建模的时候需要知道台车和摆的质量,摆的长度等等。
精彩插图