图书简介:
第1章 绪论 1
1.1 强化学习是什么 1
1.2 强化学习的基本思想 3
1.2.1 从环境中产生数据 3
1.2.2 求解最优策略 5
1.3 强化学习为什么重要 6
1.4 本书内容介绍 9
参考文献 10
第2章 马尔可夫决策过程 11
2.1 马尔可夫过程 11
2.2 马尔可夫决策过程的定义 12
2.3 马尔可夫过程与马尔可夫决策过程的对比 15
2.4 马尔可夫决策过程的分类 15
2.4.1 马尔可夫决策过程是否发生退化 16
2.4.2 环境是否已知 17
2.4.3 环境的确定性与随机性 18
2.4.4 马尔可夫决策过程的时齐性 20
2.4.5 状态与动作的连续性 22
*2.4.6 时间的连续性 23
2.4.7 小结 24
2.5 马尔可夫决策过程的奖励函数 25
思考题 26
参考文献 27
第3章 退化的强化学习问题 28
3.1 盲盒售货机问题 28
3.2 探索-利用困境 31
3.3 各种不同的探索策略 33
3.3.1 -贪心策略 33
3.3.2 玻尔兹曼探索策略 35
3.3.3 上置信界策略 36
3.4 总结 36
思考题 37
参考文献 37
第4章 最优控制 38
4.1 基于价值的思想 38
4.1.1 三连棋游戏策略 38
4.1.2 价值的定义 42
4.1.3 基于价值和基于策略 45
4.1.4 小结 46
思考题 47
4.2 动态规划 47
4.2.1 策略迭代法 47
4.2.2 雅可比迭代法 48
4.2.3 值迭代法 50
4.2.4 软提升 51
4.2.5 小结 53
思考题 54
4.3 LQR控制 55
4.3.1 基本LQR控制问题 55
4.3.2 LQR控制器 56
*4.3.3 环境随机的LQR控制问题 59
4.3.4 iLQR控制器 61
4.3.5 实时规划 63
4.3.6 小结 64
思考题 65
4.4 总结 65
参考文献 66
第5章 基于价值的强化学习 68
5.1 Q-Learning 68
5.1.1 Q表格 69
5.1.2 产生数据集的方式:探索与利用 69
5.1.3 探索策略 71
5.1.4 使用训练数据的方法:经验回放 73
思考题 74
5.2 Sarsa 74
5.2.1 基本Sarsa算法 74
5.2.2 同策略与异策略 76
5.2.3 n步Sarsa 77
5.2.4 -return算法 78
*5.2.5 n步Q-Learning 79
思考题 80
5.3 DQN及其变体 81
5.3.1 固定Q目标结构 81
5.3.2 双重DQN 84
5.3.3 优先回放机制 86
5.3.4 优势函数 88
5.3.5 Dueling DQN 90
*5.3.6 Rainbow 92
思考题 94
*5.4 NAF 94
*5.4.1 标准化优势函数 94
*5.4.2 NAF的训练 96
5.5 总结:基于价值的强化学习算法 97
参考文献 98
第6章 策略函数与策略梯度 100
6.1 策略函数与期望回报 100
6.2 无梯度方法 101
6.2.1 增强随机搜索 102
6.2.2 交叉熵算法 104
6.2.3 进化算法 104
6.3 策略梯度 106
6.3.1 策略网络的构造 106
6.3.2 策略梯度的计算 108
6.3.3 基本策略梯度算法 111
*6.3.4 动作连续的策略梯度 113
6.4 策略梯度的训练技巧 114
6.4.1 基准法 114
6.4.2 经验回放 116
6.4.3 探索策略 118
6.5 总结 119
思考题 120
参考文献 121
第7章 AC算法 122
7.1 基本AC算法 122
7.1.1 AC算法的出发点 122
7.1.2 化简策略梯度公式 123
7.1.3 AC算法的基本思想 126
7.1.4 单步更新与回合更新 128
思考题 129
7.2 AC算法的训练技巧 129
7.2.1 广义优势函数估计 129
7.2.2 控制训练两个网络的步调 131
7.2.3 ACER 133
思考题 134
7.3 A3C与A2C 135
7.3.1 并行训练 135
7.3.2 A3C 137
7.3.3 A2C 140
思考题 141
参考文献 141
第8章 AC型算法 143
8.1 自然梯度法 143
8.1.1 牛顿法 144
8.1.2 信赖域方法 146
8.1.3 近似点法 146
*8.1.4 自然策略梯度 147
8.2 TRPO与PPO算法 149
8.2.1 策略提升 149
8.2.2 TRPO算法 151
8.2.3 PPO算法 152
8.2.4 TRPO与PPO算法的训练技巧 155
8.2.5 小结 156
思考题 157
8.3 DDPG 157
8.3.1 动作连续问题的网络结构 158
8.3.2 从基于价值的角度理解DDPG算法 158
8.3.3 DDPG算法及训练技巧 159
8.3.4 确定策略下的策略梯度 162
8.3.5 从基于策略的角度理解DDPG算法 163
思考题 165
*8.4 Soft AC 165
8.5 总结:基于策略的算法 168
8.5.1 基于价值和基于策略 169
8.5.2 偏差-方差取舍 170
8.5.3 策略的空间 172
8.5.4 训练数据的产生与使用 172
8.5.5 小结 173
参考文献 174
第9章 基于模型的基本思想 175
9.1 MBRL概述 175
9.2 模型是什么 177
9.2.1 各种模型及其基本用法 178
9.2.2 更多的模型变体 179
9.2.3 模型的一些特点 180
*9.2.4 对模型的理解 185
思考题 188
9.3 如何使用黑盒模型 189
9.3.1 用黑盒模型增广数据 189
9.3.2 权衡数据成本与准确性 191
9.3.3 黑盒模型的其他用途 193
9.3.4 小结 194
思考题 194
9.4 如何使用白盒模型 195
9.4.1 用白盒模型辅助进行策略优化 195
9.4.2 用白盒模型解最优控制 197
9.4.3 小结 199
思考题 199
参考文献 200
第10章 基于模型的强化学习进阶 202
10.1 如何学习模型 202
10.1.1 让学习更符合最终目标 202
10.1.2 让学习本身成为目标 203
10.1.3 以学习作为唯一目标 206
10.1.4 小结 209
思考题 209
10.2 世界模型 210
10.2.1 观察 210
10.2.2 POMDP 212
10.2.3 为世界建模 214
10.2.4 Dreamer 218
思考题 220
10.3 实时规划 221
10.3.1 实时规划的基本思想 221
10.3.2 蒙特卡洛树搜索 224
10.3.3 模型预测控制 230
思考题 233
10.4 MBRL算法思想总结 233
参考文献 235
*第11章 连续时间的最优控制 238
11.1 时间连续的最优控制问题 238
11.2 H-J-B方程 239
11.2.1 连续时间的贝尔曼方程 239
*11.2.2 用H-J-B方程求解LQR控制问题 242
11.2.3 总结:关于价值的方程 245
思考题 247
*11.3 变分原理 247
11.3.1 从有穷维空间到无穷维空间 247
11.3.2 变分问题 250
*11.3.3 欧拉-拉格朗日方程 252
*11.3.4 用变分法求解最优控制问题 255
11.3.5 总结:策略的最优化 257
思考题 258
参考文献 258
*第12章 其他强化学习相关内容 259
12.1 奖励函数的改造与混合 259
12.2 逆向强化学习 261
12.3 层次强化学习 262
12.4 离线强化学习 264
参考文献 266
展开
强化学习(Reinforcement Learning)是人工智能-机器学习领域一门重要的学科,其前身可以追溯到20世纪初期的控制论(Control Theory),其基本架构在20世纪80年代就奠基完成。2010年以后,随着深度学习技术日趋成熟,强化学习进入了更加快速发展的阶段。2016年,谷歌公司以经典强化学习算法MCTS为基础设计了AlphaGo,并最终击败了当时的围棋世界冠军李世石。这一具有里程碑意义的事件一方面让整个人工智能-机器学习领域吸引了全社会的广泛关注,另一方面让强化学习在人工智能-机器学习领域内部收获了更多关注。事实上,2017年之后,强化学习便逐渐成为人工智能-机器学习领域发展最快、受到关注最多的领域之一。
在广泛的人工智能-机器学习领域,与计算机视觉、自然语言处理等领域相比,强化学习不拘泥于某一种特定的数据类型或场景,而是指向一套更广泛的、脱离具体应用的思维方式与方法论。与传统的有监督学习(分类问题、回归问题)、无监督学习(聚类、降维)等领域相比,强化学习采用的是更加脱离数据统计的、工具化的思维方式,即偏向于采用智能化的思维方式。很多学者认为,强化学习可能是通往强人工智能的关键技术之一。与元学习、自动机器学习等同样前沿与智能化的领域相比,强化学习已经拥有更多成熟的落地应用,就业前景更明朗,包括围棋在内的各种游戏AI就是一个很好的例子。此外,强化学习的许多特性让它拥有与经济、社会等方面产生更广泛联系的潜力,在未来实现更广泛的用途。这在本书的第1章会进行更加详细的介绍。总体来说,强化学习是泛人工智能领域一个非常重要的子领域。
与有监督学习、无监督学习等相对传统的领域相比,强化学习的构件更加复杂。例如,它要组合产生数据(探索-利用权衡)与计算策略(基于价值或基于策略等)这两部分的算法,兼顾数据效率与学习效率两方面。如果是基于模型的强化学习(Model-Based Reinforcement Learning),那么其组成部分还要更复杂,需要兼顾的方面更多。因此,进入这个领域的门槛比较高。目前,市面上已有许多有关强化学习的资料,但普遍存在一定的问题,如重点不够突出、先后顺序不够明朗、过于偏重理论而晦涩难懂、过于追求通俗而不严谨等。本书将竭力避免这些问题,在不失严谨的前提下尽量保证行文通俗易懂。具体而言,本书内容注重理论、思想与技巧这3方面。首先,严谨的理论永远是最重要的基石。书中呈现的每种算法,都会严谨地列出其公式,并进行详细的推导,说明算法中各部分数学的含义,如使用的训练数据服从什么条件概率分布,误差来自统计意义下的偏差还是方差等。其次,为了便于读者更好地理解这门学科,书中尽量使用通俗的语言来阐述其思想。由于强化学习贴近人的思维方式,与经济、社会等各方面能够产生广泛的联系,因此,书中会尽量列举贴近现实生活的例子,以此来帮助读者更好地掌握算法背后的思想,从详细的公式推导中看到更高层的思维模式。最后,在深度学习领域,能发挥实际效果的算法往往需要集成许多工程上的技巧。这些技巧大多缺乏严格的理论基础,但它们被证明能在实践中发挥很好的作用。在本书中,会对这些技巧给予足够的重视,用尽量通俗的语言来说明其发挥作用的原因。在实践中,读者要善于使用这些技巧,以使得算法能取得更好的效果。
需要特别说明的是,强化学习是泛人工智能领域中相对复杂、困难的学科,读者只有先学习概率统计、机器学习与深度学习的基础知识,然后才能进入这一领域。在本书中,假定读者已经具备这些方面的基础知识而直接使用有关知识,这样可以更加专注强化学习这一领域的内容。此外,由于现实中真正发挥作用的强化学习算法往往需要集成很多模块与技巧,因此代码普遍比较长。将真实代码打印在纸质书上,让读者手工录入计算机中这种学习方式既不高效又不经济。在人工智能-机器学习领域,一名优秀的学者或工程师应善于使用开源网站,在一些公认性能较好的基准(Baseline)上进行调试与开发,这是一种最基本的能力。因此在本书中,会辅以便于读者理解算法思想的伪代码,但不会过多地罗列出真实可运行的代码。
2023年,人工智能-机器学习领域的新趋势是建立强大的基础模型(Foundation Model),并对其进行适用于特定领域的调优。现实中,人类也是首先通过基础教育与社会生活拥有了基本素质和较为全面的能力,然后才能轻松、快速地完成各种任务。从这个角度看来,这种基础模型微调的新范式是一种对于通用人工智能(Artificial General Intelligence,AGI)的可信解释与有力尝试。在宏观思想层面上,强化学习的诸多特性能够很好地与这一趋势相结合,打开通往通用人工智能的大门;在微观技术细节上,GPT等时下最强大、最热门的大语言模型(Large Language Model,LLM)在调优过程中均使用了强化学习技术(Reinforcement Learning from Human Feedbacks,RLHF)。因为在进行大语言模型调优时,人类给出的反馈更接近强化学习中的奖励(Reward),而不是有监督学习所需的标签(Label),而且,这一过程的优化目标是多轮连贯对话中的累积效果。综上,在大语言模型时代,强化学习技术及其背后的思想将会变得更重要,并将继续取得长足的发展。
最后还需要说明的是,在线强化学习(Online Reinforcement Learning)是整个强化学习领域中比较成熟、系统化的一类算法,适用于围棋、游戏AI等可以多次重复试验的领域。但是,在工业等难以多次重复、对试错成本非常敏感的领域,在线强化学习的使用可能会受到限制。2020年以后,离线强化学习(Offline Reinforcement Learning)逐渐成为强化学习领域中受到重视最高、发展最快的子领域之一。此外,多智能体强化学习(Multi-Agent Reinforcement Learning,MARL)也是新兴研究热点之一,在游戏、量化交易、机器人等领域有着广阔的应用前景。本书将主要篇幅集中于在线强化学习的经典领域,以便于读者快速入门,理解强化学习的基本思想。但同时要提醒读者密切关注离线强化学习及其他新领域的发展。
作者
于华南理工大学
展开