Python中文网

强化学习:原理与Python实现

cnpython685

强化学习:原理与Python实现,由机械工业出版社在2019-07-01月出版发行,本书编译以及作者信息为: 肖智清 著,这是第1次发行, 国际标准书号为:9787111631774,品牌为机工出版, 这本书采用平装开本为16开,纸张采为胶版纸,全书共有239页,字数万字,值得推荐。

此书内容摘要

本书理论完备,涵盖主流非深度强化学习算法和深度强化学习算法;实战性强,基于Python、Gym、TensorFlow 2等构建,并有AlphaZero等综合案例。全书共12章,主要内容如下。

第1章:介绍强化学习的基础知识与强化学习环境库Gym的使用,并给出完整的编程实例。

第2~9章:介绍强化学习的理论知识。以Markov决策过程为基础模型,覆盖了所有主流强化学习理论和算法,包括资格迹等经典算法和深度确定性梯度策略等深度强化学习算法。所有章节都提供了与算法配套的Python程序,使读者完全掌握强化学习算法的原理与应用。

第10~12章:介绍了多个热门综合案例,包括电动游戏、棋盘游戏和自动驾驶。算法部分涵盖了在《自然》《科学》等期刊上发表的多个深度强化学习明星算法,包括AlphaGo的全新改进版AlphaZero。


关于此书作者

肖智清
强化学习一线研发人员,清华大学工学博士,现就职于全球知名投资银行。擅长概率统计和机器学习,于近5年发表SCI/EI论文十余篇,是多个国际性知名期刊和会议审稿人。在国内外多项程序设计和数据科学竞赛上获得冠军。

编辑们的推荐

适读人群 :1.强化学习算法和研发人员 2. 深度学习研发和算法工程师 3. 大数据架构师 4.其他爱好者

强化学习一线研发人员撰写,涵盖主流强化学习算法和多个综合案例,在理论基础、算法设计、性能分析等多个角度全面覆盖强化学习的原理,并逐章配套Python代码。


强化学习:原理与Python实现图书的目录

前言

第1章初识强化学习 1

1.1强化学习及其关键元素 1

1.2强化学习的应用 3

1.3智能体/环境接口 4

1.4强化学习的分类 6

1.4.1按任务分类 6

1.4.2按算法分类 7

1.5如何学习强化学习 8

1.5.1学习路线 9

1.5.2学习资源 9

1.6案例:基于Gym库的智能体/环境交互 9

1.6.1安装Gym库 10

1.6.2使用Gym库 10

1.6.3小车上山 12

1.7本章小结 14

第2章Markov决策过程 16

2.1Markov决策过程模型 16

2.1.1离散时间Markov决策过程 16

2.1.2环境与动力 18

2.1.3智能体与策略 19

2.1.4奖励、回报与价值函数 19

2.2Bellman期望方程 21

2.3最优策略及其性质 25

2.3.1最优策略与最优价值函数 25

2.3.2Bellman最优方程 25

2.3.3用Bellman最优方程求解最优策略 29

2.4案例:悬崖寻路 31

2.4.1实验环境使用 31

2.4.2求解Bellman期望方程 32

2.4.3求解Bellman最优方程 33

2.5本章小结 35

第3章有模型数值迭代 37

3.1度量空间与压缩映射 37

3.1.1度量空间及其完备性 37

3.1.2压缩映射与Bellman算子 38

3.1.3Banach不动点定理 39

3.2有模型策略迭代 40

3.2.1策略评估 40

3.2.2策略改进 42

3.2.3策略迭代 44

3.3有模型价值迭代 45

3.4动态规划 46

3.4.1从动态规划看迭代算法 46

3.4.2异步动态规划 47

3.5案例:冰面滑行 47

3.5.1实验环境使用 48

3.5.2有模型策略迭代求解 49

3.5.3有模型价值迭代求解 51

3.6本章小结 52

第4章回合更新价值迭代 54

4.1同策回合更新 54

4.1.1同策回合更新策略评估 54

4.1.2带起始探索的同策回合更新 58

4.1.3基于柔性策略的同策回合更新 60

4.2异策回合更新 62

4.2.1重要性采样 62

4.2.2异策回合更新策略评估 64

4.2.3异策回合更新最优策略求解 65

4.3案例:21点游戏 66

4.3.1实验环境使用 66

4.3.2同策策略评估 67

4.3.3同策最优策略求解 70

4.3.4异策策略评估 72

4.3.5异策最优策略求解 73

4.4本章小结 74

第5章时序差分价值迭代 76

5.1同策时序差分更新 76

5.1.1时序差分更新策略评估 78

5.1.2SARSA算法 81

5.1.3期望SARSA算法 83

5.2异策时序差分更新 85

5.2.1基于重要性采样的异策算法 85

5.2.2Q学习 86

5.2.3双重Q学习 87

5.3资格迹 89

5.3.1λ回报 89

5.3.2TD(λ) 90

5.4案例:出租车调度 92

5.4.1实验环境使用 93

5.4.2同策时序差分学习调度 94

5.4.3异策时序差分学习调度 97

5.4.4资格迹学习调度 99

5.5本章小结 100

第6章函数近似方法 101

6.1函数近似原理 101

6.1.1随机梯度下降 101

6.1.2半梯度下降 103

6.1.3带资格迹的半梯度下降 105

6.2线性近似 107

6.2.1精确查找表与线性近似的关系 107

6.2.2线性最小二乘策略评估 107

6.2.3线性最小二乘最优策略求解 109

6.3函数近似的收敛性 109

6.4深度Q学习 110

6.4.1经验回放 111

6.4.2带目标网络的深度Q学习 112

6.4.3双重深度Q网络 114

6.4.4对偶深度Q网络 114

6.5案例:小车上山 115

6.5.1实验环境使用 116

6.5.2用线性近似求解最优策略 117

6.5.3用深度Q学习求解最优策略 120

6.6本章小结 123

第7章回合更新策略梯度方法 125

7.1策略梯度算法的原理 125

7.1.1函数近似与动作偏好 125

7.1.2策略梯度定理 126

7.2同策回合更新策略梯度算法 128

7.2.1简单的策略梯度算法 128

7.2.2带基线的简单策略梯度算法 129

7.3异策回合更新策略梯度算法 131

7.4策略梯度更新和极大似然估计的关系 132

7.5案例:车杆平衡 132

7.5.1同策策略梯度算法求解最优策略 133

7.5.2异策策略梯度算法求解最优策略 135

7.6本章小结 137

第8章执行者/评论者方法 139

8.1同策执行者/评论者算法 139

8.1.1动作价值执行者/评论者算法 140

8.1.2优势执行者/评论者算法 141

8.1.3带资格迹的执行者/评论者算法 143

8.2基于代理优势的同策算法 143

8.2.1代理优势 144

8.2.2邻近策略优化 145

8.3信任域算法 146

8.3.1KL散度 146

8.3.2信任域 147

8.3.3自然策略梯度算法 148

8.3.4信任域策略优化 151

8.3.5Kronecker因子信任域执行者/评论者算法 152

8.4重要性采样异策执行者/评论者算法 153

8.4.1基本的异策算法 154

8.4.2带经验回放的异策算法 154

8.5柔性执行者/评论者算法 157

8.5.1熵 157

8.5.2奖励工程和带熵的奖励 158

8.5.3柔性执行者/评论者的网络设计 159

8.6案例:双节倒立摆 161

8.6.1同策执行者/评论者算法求解最优策略 162

8.6.2异策执行者/评论者算法求解最优策略 168

8.7本章小结 170

第9章连续动作空间的确定性策略 172

9.1同策确定性算法 172

9.1.1策略梯度定理的确定性版本 172

9.1.2基本的同策确定性执行者/评论者算法 174

9.2异策确定性算法 176

9.2.1基本的异策确定性执行者/评论者算法 177

9.2.2深度确定性策略梯度算法 177

9.2.3双重延迟深度确定性策略梯度算法 178

9.3案例:倒立摆的控制 180

9.3.1用深度确定性策略梯度算法求解 181

9.3.2用双重延迟深度确定性算法求解 184

9.4本章小结 187

第10章综合案例:电动游戏 188

10.1Atari游戏环境 188

10.1.1Gym库的完整安装 188

10.1.2游戏环境使用 190

10.2基于深度Q学习的游戏AI 191

10.2.1算法设计 192

10.2.2智能体的实现 193

10.2.3智能体的训练和测试 197

10.3本章小结 198

第11章综合案例:棋盘游戏 200

11.1双人确定性棋盘游戏 200

11.1.1五子棋和井字棋 200

11.1.2黑白棋 201

11.1.3围棋 202

11.2AlphaZero算法 203

11.2.1回合更新树搜索 203

11.2.2深度残差网络 206

11.2.3自我对弈 208

11.2.4算法流程 210

11.3棋盘游戏环境boardgame2 210

11.3.1为Gym库扩展自定义环境 211

11.3.2boardgame2设计 211

11.3.3Gym环境接口的实现 214

11.3.4树搜索接口的实现 216

11.4AlphaZero算法实现 218

11.4.1智能体类的实现 218

11.4.2自我对弈的实现 223

11.4.3训练智能体 224

11.5本章小结 225

第12章综合案例:自动驾驶 226

12.1AirSim开发环境使用 226

12.1.1安装和运行AirSim 226

12.1.2用Python访问AirSim 228

12.2基于强化学习的自动驾驶 229

12.2.1为自动驾驶设计强化学习环境 230

12.2.2智能体设计和实现 235

12.2.3智能体的训练和测试 237

12.3本章小结 239

部分内容试读

强化学习正在改变人类社会的方方面面:基于强化学习的游戏AI已经在围棋、星际争霸等游戏上战胜人类顶尖选手,基于强化学习的控制算法已经运用于机器人、无人机等设备,基于强化学习的交易算法已经部署在金融平台上并取得超额收益。由于同一套强化学习代码在使用同一套参数的情况下能解决多个看起来毫无关联的问题,所以强化学习常被认为是迈向通用人工智能的重要途径。在此诚邀相关专业人士研究强化学习,以立于人工智能的时代之巅。
内容梗概
本书介绍强化学习理论及其Python实现,全书分为三个部分。
第1章:介绍强化学习的基础知识与环境库Gym的使用,并给出一个完整的编程实例。
第2~9章:介绍强化学习的理论和算法。采用严谨的数学语言,推导强化学习的基本理论,进而在理论的基础上讲解算法,并为算法提供配套的Python实现。算法的讲解和Python实现逐一对应,覆盖了所有主流的强化学习算法。
第10~12章:介绍多个综合案例,包括电动游戏、棋盘游戏和自动驾驶。环境部分涵盖Gym库的完整安装和自定义扩展,也包括Gym库以外的环境。算法部分涵盖了《自然》 《科学》等权威期刊发表的多个深度强化学习明星算法。
本书特色
本书完整地介绍了主流的强化学习理论。
全书采用完整的数学体系,各章内容循序渐进,严谨地讲授强化学习的理论基础,主要定理均给出证明过程。基于理论讲解强化学习算法,覆盖了所有主流强化学习算法,包括资格迹等经典算法和深度确定性梯度策略等深度强化学习算法。
全书采用一致的数学符号,并且与权威强化学习教程(如R. Sutton等的《Reinforce-ment Learning: An Introduction(第2版)》和D. Silver的视频课程)完美兼容。
本书各章均提供Python代码,实战性强。
全书代码统一规范,基于最新的Python 3.7(兼容Python 3.6)、Gym 0.12和TensorFlow 2(兼容TensorFlow 1)实现强化学习算法。所有代码在Windows、macOS和Linux三大操作系统上均可运行,书中给出了环境的安装和配置方法。
涉及环境全面。第1~9章提供算法的配套实现,强化学习环境只依赖于Gym的最小安装,使理论学习免受环境安装困扰;第10~12章的综合案例既涵盖Gym库的完整安装和自定义扩展,还包括Gym库以外的环境,让读者体验更加复杂的强化学习任务。
全书实现对硬件配置要求低。第1~9章代码在没有GPU的计算机上也可运行;第10~12章代码在配置普通GPU的计算机上即可运行。
代码下载和技术支持
本书代码下载地址为:http://github.com/zhiqingxiao/rl-book。笔者会不定期更新代码,以适应软件版本的升级。
在此推荐你加入本书学习交流QQ群:935702193。如果有任何意见、建议或经过网络搜索仍不能解决的问题,可以在QQ群里提问。笔者的邮箱是:xzq.xiaozhiqing@gmail.com。
致谢
在此感谢为本书出版做出贡献的所有工作人员。其中,机械工业出版社的高婧雅女士是本书的责任编辑,她对本书的写作提出了很多建设性意见。同时,还要感谢机械工业出版社的其他编辑为提升本书质量所做的大量工作,与他们合作是一个愉快的过程。我要特别感谢我的父亲肖林进和母亲许丽平,他们也参与了本书的编写。同时,还要感谢我的上级、同事和其他亲友,他们在本书写作期间给予我极大的支持。
感谢你选择本书。祝你学习快乐!

关于此书评价

暂无.

书摘内容

暂无.

强化学习:原理与Python实现最新最全的试读、书评、目录、简介信息由Python中文网整理提供。

上一篇:没有了

下一篇:Python游戏编程快速上手