内容简介
本书基于备受读者推崇的王树森“深度强化学习”系列公开视频课,专门解决“入门深度强化学习难”的问题。
本书的独特之处在于:第一,知识精简,剔除一切不必要的概念和公式,学起来轻松;第二,内容新颖,聚焦近10年深度强化学习领域的突破,让你一上手就紧跟最新技术。本书系统讲解深度强化学习的原理与实现,但不回避数学公式和各种模型,原创100多幅精美插图,并以全彩印刷展示。简洁清晰的语言+生动形象的图示,助你扫除任何可能的学习障碍!本书内容分为五部分:基础知识、价值学习、策略学习、多智能体强化学习、应用与展望,涉及DQN、A3C、TRPO、DDPG、AlphaGo等。
本书面向深度强化学习入门读者,助你构建完整的知识体系。学完本书,你能够轻松看懂深度强化学习的实现代码、读懂该领域的论文、听懂学术报告,具备进一步自学和深挖的能力。
作者简介
王树森
现任小红书基础模型团队负责人,从事搜索和推荐算法研发工作。从浙江大学获得计算机学士和博士学位,就读期间获得“微软学者”和“百度奖学金”等多项荣誉。在加入小红书之前,曾任美国加州大学伯克利分校博士后、美国史蒂文斯理工学院助理教授、博导。在机器学习、强化学习、数值计算、分布式计算等方向有多年科研经验,在计算机国际顶级期刊和会议上发表30多篇论文。
在YouTube、B站开设“深度强化学习”“深度学习”“推荐系统”公开课(ID:ShusenWang),全网视频播放量超过100万次。
黎彧君
华为诺亚方舟实验室高级研究员,主要从事AutoML相关的研发工作。上海交通大学博士,研究方向为数值优化、强化学习;攻读博士学位期间曾前往普林斯顿大学访问一年。共同翻译出版“花书”《深度学习》。
张志华
北京大学数学科学学院教授。此前先后执教于浙江大学和上海交通大学,任计算机科学教授。主要从事统计学、机器学习与计算机科学领域的研究和教学。曾主讲“统计机器学习”“机器学习导论”“深度学习”“强化学习”,其课程视频广受欢迎。
目录
序言i前言v
常用符号xi
第一部分基础知识
第1章机器学习基础2
1.1线性模型2
1.1.1线性回归2
1.1.2逻辑斯谛回归4
1.1.3softmax分类器7
1.2神经网络10
1.2.1全连接神经网络10
1.2.2卷积神经网络11
1.3梯度下降和反向传播12
1.3.1梯度下降13
1.3.2反向传播14
知识点小结16
习题16
第2章蒙特卡洛方法18
2.1随机变量18
2.2蒙特卡洛方法实例21
2.2.1例一:近似π值21
2.2.2例二:估算阴影部分面积23
2.2.3例三:近似定积分25
2.2.4例四:近似期望26
2.2.5例五:随机梯度27
知识点小结29
习题29
第3章强化学习基本概念31
3.1马尔可夫决策过程31
3.1.1状态、动作、奖励31
3.1.2状态转移32
3.2策略33
3.3随机性35
3.4回报与折扣回报37
3.4.1回报37
3.4.2折扣回报37
3.4.3回报中的随机性38
3.4.4有限期MDP和无限期MDP39
3.5价值函数39
3.5.1动作价值函数40
3.5.2最优动作价值函数40
3.5.3状态价值函数41
3.6实验环境:OpenAIGym42
知识点小结44
习题44
第二部分价值学习
第4章DQN与Q学习48
4.1DQN48
4.1.1概念回顾48
4.1.2DQN表达式49
4.1.3DQN的梯度50
4.2TD算法50
4.2.1驾车时间预测示例50
4.2.2TD算法的原理51
4.3用TD训练DQN53
4.3.1算法推导53
4.3.2训练流程55
4.4Q学习算法57
4.4.1表格形式的Q学习57
4.4.2算法推导57
4.4.3训练流程58
4.5同策略与异策略59
相关文献60
知识点小结61
习题61
第5章SARSA算法63
5.1表格形式的SARSA63
5.1.1算法推导63
5.1.2训练流程64
5.1.3Q学习与SARSA的对比65
5.2神经网络形式的SARSA66
5.2.1价值网络66
5.2.2算法推导66
5.2.3训练流程67
5.3多步TD目标68
5.3.1算法推导68
5.3.2多步TD目标的原理69
5.3.3训练流程70
5.4蒙特卡洛方法与自举70
5.4.1蒙特卡洛方法71
5.4.2自举71
5.4.3蒙特卡洛方法和自举的对比72
相关文献73
知识点小结73
习题74
第6章价值学习高级技巧75
6.1经验回放75
6.1.1经验回放的优点76
6.1.2经验回放的局限性76
6.1.3优先经验回放77
6.2高估问题及解决方法79
6.2.1自举导致偏差传播79
6.2.2最大化导致高估80
6.2.3高估的危害81
6.2.4使用目标网络82
6.2.5双Q学习算法84
6.2.6总结85
6.3对决网络86
6.3.1最优优势函数86
6.3.2对决网络的结构87
6.3.3解决不唯一性88
6.3.4对决网络的实际实现89
6.4噪声网络90
6.4.1噪声网络的原理90
6.4.2噪声DQN91
6.4.3训练流程93
相关文献94
知识点小结94
习题94
第三部分策略学习
第7章策略梯度方法98
7.1策略网络98
7.2策略学习的目标函数99
7.3策略梯度定理101
7.3.1简化证明101
7.3.2严格证明102
7.3.3近似策略梯度106
7.4REINFORCE107
7.4.1简化推导108
7.4.2训练流程108
7.4.3严格推导109
7.5actor-critic110
7.5.1价值网络110
7.5.2算法推导111
7.5.3训练流程114
7.5.4用目标网络改进训练114
相关文献115
知识点小结115
习题116
第8章带基线的策略梯度方法117
8.1策略梯度中的基线117
8.1.1基线的引入117
8.1.2基线的直观解释118
8.2带基线的REINFORCE算法119
8.2.1策略网络和价值网络120
8.2.2算法推导121
8.2.3训练流程121
8.3advantageactor-critic122
8.3.1算法推导123
8.3.2训练流程125
8.3.3用目标网络改进训练126
8.4证明带基线的策略梯度定理127
知识点小结128
习题128
第9章策略学习高级技巧129
9.1置信域策略优化129
9.1.1置信域方法129
9.1.2策略学习的目标函数132
9.1.3算法推导133
9.1.4训练流程135
9.2策略学习中的熵正则135
相关文献138
知识点小结138
第10章连续控制139
10.1连续空间的离散化139
10.2深度确定性策略梯度140
10.2.1策略网络和价值网络140
10.2.2算法推导142
10.3深入分析DDPG145
10.3.1从策略学习的角度看待DDPG145
10.3.2从价值学习的角度看待DDPG146
10.3.3DDPG的高估问题147
10.4双延迟深度确定性策略梯度148
10.4.1高估问题的解决方案——目标网络148
10.4.2高估问题的解决方案——截断双Q学习148
10.4.3其他改进点149
10.4.4训练流程150
10.5随机高斯策略151
10.5.1基本思路152
10.5.2随机高斯策略网络153
10.5.3策略梯度154
10.5.4用REINFORCE学习参数155
10.5.5用actor-critic学习参数155
相关文献157
知识点小结157
第11章对状态的不完全观测158
11.1不完全观测问题158
11.2循环神经网络159
11.3基于RNN的策略网络161
相关文献162
知识点小结163
习题163
第12章模仿学习165
12.1行为克隆165
12.1.1连续控制问题165
12.1.2离散控制问题166
12.1.3行为克隆与强化学习的对比168
12.2逆向强化学习169
12.2.1IRL的基本设定169
12.2.2IRL的基本思想170
12.2.3从黑箱策略反推奖励170
12.2.4用奖励函数训练策略网络171
12.3生成判别模仿学习171
12.3.1生成判别网络172
12.3.2GAIL的生成器和判别器175
12.3.3GAIL的训练176
相关文献178
知识点小结179
第四部分多智能体强化学习
第13章并行计算182
13.1并行计算基础182
13.1.1并行梯度下降182
13.1.2MapReduce183
13.1.3用MapReduce实现并行梯度下降184
13.1.4并行计算的代价187
13.2同步与异步188
13.2.1同步算法188
13.2.2异步算法189
13.2.3同步梯度下降与异步梯度下降的对比191
13.3并行强化学习191
13.3.1异步并行双Q学习191
13.3.2A3C:异步并行A2C193
相关文献195
知识点小结195
习题196
第14章多智能体系统197
14.1常见设定197
14.2基本概念199
14.2.1专业术语199
14.2.2策略网络200
14.2.3动作价值函数200
14.2.4状态价值函数201
14.3实验环境202
14.3.1multi-agentparticleworld202
14.3.2StarCraftmulti-agentchallenge204
14.3.3HanabiChallenge205
相关文献206
知识点小结206
第15章完全合作关系设定下的多智能体强化学习207
15.1完全合作关系设定下的策略学习208
15.2完全合作关系设定下的多智能体A2C209
15.2.1策略网络和价值网络209
15.2.2训练和决策211
15.2.3实现中的难点212
15.3三种架构213
15.3.1中心化训练+中心化决策214
15.3.2去中心化训练+去中心化决策215
15.3.3中心化训练+去中心化决策217
相关文献219
知识点小结220
习题220
第16章非合作关系设定下的多智能体强化学习221
16.1非合作关系设定下的策略学习222
16.1.1非合作关系设定下的目标函数222
16.1.2收敛的判别223
16.1.3评价策略的优劣223
16.2非合作关系设定下的多智能体A2C224
16.2.1策略网络和价值网络224
16.2.2算法推导225
16.2.3训练226
16.2.4决策227
16.3三种架构227
16.3.1中心化训练+中心化决策227
16.3.2去中心化训练+去中心化决策228
16.3.3中心化训练+去中心化决策229
16.4连续控制与MADDPG231
16.4.1策略网络和价值网络231
16.4.2算法推导232
16.4.3中心化训练234
16.4.4去中心化决策236
相关文献237
知识点小结237
第17章注意力机制与多智能体强化学习238
17.1自注意力机制238
17.1.1自注意力层239
17.1.2多头自注意力层241
17.2自注意力改进多智能体强化学习242
17.2.1不使用自注意力的状态价值网络242
17.2.2使用自注意力的状态价值网络243
17.2.3使用自注意力的动作价值网络244
17.2.4使用自注意力的中心化策略网络244
17.2.5总结245
相关文献245
知识点小结245
习题246
第五部分应用与展望
第18章AlphaGo与蒙特卡洛树搜索248
18.1强化学习眼中的围棋248
18.2蒙特卡洛树搜索250
18.2.1MCTS的基本思想250
18.2.2MCTS的四个步骤250
18.2.3MCTS的决策255
18.3训练策略网络和价值网络255
18.3.1AlphaGo2016版本的训练256
18.3.2AlphaGoZero版本的训练258
相关文献260
知识点小结260
习题261
第19章现实世界中的应用262
19.1神经网络结构搜索262
19.1.1超参数和交叉验证262
19.1.2强化学习方法264
19.2自动生成SQL语句266
19.3推荐系统268
19.4网约车调度270
19.4.1价值学习271
19.4.2派单机制271
19.5强化学习与监督学习的对比273
19.5.1决策是否改变环境273
19.5.2当前奖励还是长线回报274
19.6制约强化学习落地应用的因素275
19.6.1所需的样本数量过大275
19.6.2探索阶段代价太大276
19.6.3超参数的影响非常大277
19.6.4稳定性极差278
知识点小结279
附录A贝尔曼方程281
附录B习题答案283
参考文献288
······