深度强化学习:基础、研究与应用
  • 推荐2
  • 收藏3
  • 浏览2.4K

深度强化学习:基础、研究与应用

董豪 (作者) 

  • 书  号:978-7-121-41188-5
  • 出版日期:2021-06-10
  • 页  数:520
  • 开  本:16(185*235)
  • 出版状态:上市销售
  • 维护人:孙学瑛
纸质版 ¥129.00
深度强化学习结合深度学习与强化学习算法各自的优势解决复杂的决策任务。得益于 DeepMind AlphaGo 和 OpenAI Five 成功的案例,深度强化学习受到大量的关注,相关技术广泛应用于不同的领域。
本书分为三大部分,覆盖深度强化学习的全部内容。第一部分介绍深度学习和强化学习的入门知识、一些非常基础的深度强化学习算法及其实现细节,包括第 1~6 章。第二部分是一些精选的深度强化学习研究题目,这些内容对准备开展深度强化学习研究的读者非常有用,包括第 7~12 章。第三部分提供了丰富的应用案例,包括 AlphaZero、让机器人学习跑步等,包括第 13~17 章。
本书是为计算机科学专业背景、希望从零开始学习深度强化学习并开展研究课题和实践项目的学生准备的。本书也适合没有很强的机器学习背景、但是希望快速学习深度强化学习并将其应用到具体产品中的软件工程师阅读。
中国年轻学者和工程师编写的深度强化学习著作,全面涵盖深度强化学习的基础理论、算法实现、代码细节、实践应用、实战技巧、科研前瞻等,一本书轻松搞懂深度学习、强化学习、深度Q网络、策略梯度、模仿学习、分层强化学习、并行计算、多智能体强化学习等,理论与代码配套,轻松易懂,案例丰富,英文版同步发行,得到郭毅可、陈宝权、金驰、李克之等海内外大学教授一致好评。
为什么写作本书
人工智能已经成为当今信息技术发展的主要方向,国务院印发的《新一代人工智能发展规划》中指出:2020 年我国人工智能核心产业规模超过 1500 亿元,带动相关产业规模超过 1 万亿元;2030 年人工智能核心产业规模超过 1 万亿元,带动相关产业规模超过 10 万亿元。深度强化学习将结合深度学习与强化学习算法各自的优势来解决复杂的决策任务。近年来,归功于 DeepMind AlphaGo 和 OpenAI Five 这类成功的案例,深度强化学习受到大
量的关注,相关技术广泛用于金融、医疗、军事、能源等领域。为此,学术界和产业界急需大量人才,而深度强化学习作为人工智能中的智能决策部分,是理论与工程相结合的重要研究方向。本书将以通俗易懂的方式讲解相关技术,并辅以实践教学。
本书主要内容
本书分为三大部分,以尽可能覆盖深度强化学习所需要的全部内容。第一部分介绍深度学习和强化学习的入门知识、一些非常基础的深度强化学习算法及其实现细节,请见第 1~6 章。
第二部分是一些精选的深度强化学习研究题目,请见第 7~12 章,这些内容对准备开展深度强化学习研究的读者非常有用。为了帮助读者更深入地学习深度强化学习,并把相关技术用于实践,本书第三部分提供了丰富的例子,包括 AlphaZero、让机器人学习跑步等,请见第 13~17 章。
如何阅读本书
本书是为计算机科学专业背景、希望从零学习深度强化学习并开展研究课题和实践项目的学生准备的。本书也适用于没有很强机器学习背景、但是希望快速学习深度强化学习并把它应用到具体产品中的软件工程师。
鉴于不同的读者情况会有所差异(比如,有的读者可能是第一次接触深度学习,而有的读者可能已经对深度学习有一定的了解;有的读者已经有一些强化学习基础;有的读者只是想了解强化学习的概念,而有的读者是准备长期从事深度强化学习研究的),这里根据不同的读者情况给予不同的阅读建议。
1. 要了解深度强化学习。
第 1~6 章覆盖了深度强化学习的基础知识,其中第 2 章是最关键、最基础的内容。如果您已经有深度学习基础,可以直接跳过第 1 章。第 3 章、附录 A 和附录 B 总结了不同的算法。
2. 要从事深度强化学习研究。
除了深度学习的基础内容,第 7 章介绍了当今强化学习技术发展遇到的各种挑战。您可以通过阅读第 8~12 章来进一步了解不同的研究方向。
3. 要在产品中使用深度强化学习。
如果您是工程师,希望快速地在产品中使用深度强化学习技术,第 13~17 章是您关注的重点。您可以根据业务场景中的动作空间和观测种类来选择最相似的应用例子,然后运用到您的业务中。
董豪
2021 年 4 月

目录

基础部分 1 第 1 章 深度学习入门 2
1.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 感知器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.3 多层感知器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.4 激活函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.5 损失函数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.6 优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.6.1 梯度下降和误差的反向传播 . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.6.2 随机梯度下降和自适应学习率 . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.6.3 超参数筛选 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.7 正则化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.7.1 过拟合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.7.2 权重衰减 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
1.7.3 Dropout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.7.4 批标准化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
1.7.5 其他缓和过拟合的方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.8 卷积神经网络 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
1.9 循环神经网络 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.10 深度学习的实现样例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.10.1 张量和梯度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
1.10.2 定义模型 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
1.10.3 自定义层 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
1.10.4 多层感知器:MNIST 数据集上的图像分类 . . . . . . . . . . . . . . . . . . . 33
1.10.5 卷积神经网络:CIFAR-10 数据集上的图像分类 . . . . . . . . . . . . . . . . 35
1.10.6 序列到序列模型:聊天机器人 . . . . . . . . . . . . . . . . . . . . . . . . . . 36
第 2 章 强化学习入门 43
2.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.2 在线预测和在线学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.2.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.2.2 随机多臂赌博机 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
2.2.3 对抗多臂赌博机 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
2.2.4 上下文赌博机 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
2.3 马尔可夫过程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.3.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.3.2 马尔可夫奖励过程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
2.3.3 马尔可夫决策过程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
2.3.4 贝尔曼方程和最优性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
2.3.5 其他重要概念 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.4 动态规划 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
2.4.1 策略迭代 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
2.4.2 价值迭代 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
2.4.3 其他 DPs:异步 DP、近似 DP 和实时 DP . . . . . . . . . . . . . . . . . . . 68
2.5 蒙特卡罗 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
2.5.1 蒙特卡罗预测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70
2.5.2 蒙特卡罗控制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
2.5.3 增量蒙特卡罗 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72
2.6 时间差分学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
2.6.1 时间差分预测 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
2.6.2 Sarsa:在线策略 TD 控制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
2.6.3 Q-Learning:离线策略 TD 控制 . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.7 策略优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.7.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
2.7.2 基于价值的优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
2.7.3 基于策略的优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
2.7.4 结合基于策略和基于价值的方法 . . . . . . . . . . . . . . . . . . . . . . . . 105
第 3 章 强化学习算法分类 110
3.1 基于模型的方法和无模型的方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111
3.2 基于价值的方法和基于策略的方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . 113
3.3 蒙特卡罗方法和时间差分方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
3.4 在线策略方法和离线策略方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
第 4 章 深度 Q 网络 119
4.1 Sarsa 和 Q-Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
4.2 为什么使用深度学习: 价值函数逼近 . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
4.3 DQN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
4.4 Double DQN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
4.5 Dueling DQN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
4.6 优先经验回放 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
4.7 其他改进内容:多步学习、噪声网络和值分布强化学习 . . . . . . . . . . . . . . . 128
4.8 DQN 代码实例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131
第 5 章 策略梯度 146
5.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 146
5.2 REINFORCE:初版策略梯度 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
5.3 Actor-Critic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
5.4 生成对抗网络和 Actor-Critic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 150
5.5 同步优势 Actor-Critic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
5.6 异步优势 Actor-Critic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
5.7 信赖域策略优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 154
5.8 近端策略优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
5.9 使用 Kronecker 因子化信赖域的 Actor-Critic . . . . . . . . . . . . . . . . . . . . . . 159
5.10 策略梯度代码例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
5.10.1 相关的 Gym 环境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
5.10.2 REINFORCE: Atari Pong 和 CartPole-V0 . . . . . . . . . . . . . . . . . . . . . 165
5.10.3 AC: CartPole-V0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
5.10.4 A3C: BipedalWalker-v2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176
5.10.5 TRPO: Pendulum-V0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
5.10.6 PPO: Pendulum-V0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192
第 6 章 深度 Q 网络和 Actor-Critic 的结合 200
6.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
6.2 深度确定性策略梯度算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
6.3 孪生延迟 DDPG 算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
6.4 柔性 Actor-Critic 算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
6.4.1 柔性策略迭代 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 206
6.4.2 SAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
6.5 代码例子 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
6.5.1 相关的 Gym 环境 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
6.5.2 DDPG: Pendulum-V0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
6.5.3 TD3: Pendulum-V0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 215
6.5.4 SAC: Pendulum-v0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
研究部分 236
第 7 章 深度强化学习的挑战 237
7.1 样本效率 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 237
7.2 学习稳定性 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
7.3 灾难性遗忘 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
7.4 探索 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
7.5 元学习和表征学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
7.6 多智能体强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246
7.7 模拟到现实 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
7.8 大规模强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
7.9 其他挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
第 8 章 模仿学习 258
8.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258
8.2 行为克隆方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
8.2.1 行为克隆方法的挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
8.2.2 数据集聚合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
8.2.3 Variational Dropout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
8.2.4 行为克隆的其他方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 262
8.3 逆向强化学习方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
8.3.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
8.3.2 逆向强化学习方法的挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
8.3.3 生成对抗模仿学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 265
8.3.4 生成对抗网络指导性代价学习 . . . . . . . . . . . . . . . . . . . . . . . . . . 266
8.3.5 对抗性逆向强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 268
8.4 从观察量进行模仿学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
8.4.1 基于模型方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
8.4.2 无模型方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
8.4.3 从观察量模仿学习的挑战 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
8.5 概率性方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 277
8.6 模仿学习作为强化学习的初始化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
8.7 强化学习中利用示范数据的其他方法 . . . . . . . . . . . . . . . . . . . . . . . . . . 280
8.7.1 将示范数据导入经验回放缓存 . . . . . . . . . . . . . . . . . . . . . . . . . . 280
8.7.2 标准化 Actor-Critic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281
8.7.3 用示范数据进行奖励塑形 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
8.8 总结 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 282
第 9 章 集成学习与规划 289
9.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
9.2 基于模型的方法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
9.3 集成模式架构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 292
9.4 基于模拟的搜索 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 293
9.4.1 朴素蒙特卡罗搜索 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
9.4.2 蒙特卡罗树搜索 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
9.4.3 时间差分搜索 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295
第 10 章 分层强化学习 298
10.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
10.2 选项框架 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
10.2.1 战略专注作家 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 300
10.2.2 选项-批判者结构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303
10.3 封建制强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
10.3.1 封建制网络 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
10.3.2 离线策略修正 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
10.4 其他工作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
第 11 章 多智能体强化学习 315
11.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315
11.2 优化和均衡 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
11.2.1 纳什均衡 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 317
11.2.2 关联性均衡 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 318
11.2.3 斯塔克尔伯格博弈 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
11.3 竞争与合作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
11.3.1 合作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
11.3.2 零和博弈 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 321
11.3.3 同时决策下的竞争 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 322
11.3.4 顺序决策下的竞争 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
11.4 博弈分析架构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 324
第 12 章 并行计算 326
12.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 326
12.2 同步和异步 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
12.3 并行计算网络 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
12.4 分布式强化学习算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
12.4.1 异步优势 Actor-Critic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
12.4.2 GPU/CPU 混合式异步优势 Actor-Critic . . . . . . . . . . . . . . . . . . . . . 332
12.4.3 分布式近端策略优化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 333
12.4.4 重要性加权的行动者-学习者结构和可扩展高效深度强化学习 . . . . . . . . 336
12.4.5 Ape-X、回溯-行动者和分布式深度循环回放 Q 网络 . . . . . . . . . . . . . 338
12.4.6 Gorila . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
12.5 分布式计算架构 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 340
应用部分 343
第 13 章 Learning to Run 344
13.1 NeurIPS 2017 挑战:Learning to Run . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
13.1.1 环境介绍 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
13.1.2 安装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
13.2 训练智能体 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 347
13.2.1 并行训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 348
13.2.2 小技巧 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
13.2.3 学习结果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
第 14 章 鲁棒的图像增强 354
14.1 图像增强 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
14.2 用于鲁棒处理的强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
第 15 章 AlphaZero 366
15.1 简介 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
15.2 组合博弈 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
15.3 蒙特卡罗树搜索 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
15.4 AlphaZero:棋类游戏的通用算法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
第 16 章 模拟环境中机器人学习 388
16.1 机器人模拟 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 389
16.2 强化学习用于机器人任务 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405
16.2.1 并行训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
16.2.2 学习效果 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 407
16.2.3 域随机化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
16.2.4 机器人学习基准 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
16.2.5 其他模拟器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 409
第 17 章 Arena:多智能体强化学习平台 412
17.1 安装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
17.2 用 Arena 开发游戏 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 413
17.2.1 简单的单玩家游戏 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414
17.2.2 简单的使用奖励机制的双玩家游戏 . . . . . . . . . . . . . . . . . . . . . . . 416
17.2.3 高级设置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 420
17.2.4 导出二进制游戏 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
17.3 MARL 训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
17.3.1 设置 X-Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 427
17.3.2 进行训练 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 429
17.3.3 可视化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
17.3.4 致谢 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 431
第 18 章 深度强化学习应用实践技巧 433
18.1 概览:如何应用深度强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
18.2 实现阶段 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434
18.3 训练和调试阶段 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
总结部分 445
附录 A 算法总结表 446
附录 B 算法速查表 451
B.1 深度学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
B.1.1 随机梯度下降 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
B.1.2 Adam 优化器 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
B.2 强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
B.2.1 赌博机 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 452
B.2.2 动态规划 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 453
B.2.3 蒙特卡罗 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
B.3 深度强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
B.4 高等深度强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
B.4.1 模仿学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 467
B.4.2 基于模型的强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
B.4.3 分层强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 470
B.4.4 多智能体强化学习 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
B.4.5 并行计算 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 472
附录 C 中英文对照表 476

读者评论

  • 图1.18 卷积核计算示例种的第二个通道的计算就有误,应该是-1才对,书上却说是0,烦请编辑或其他读者重新check一下是不是有误。

    jqfu发表于 2023/5/7 23:25:41

相关博文

  • 详解经典强化学习算法,搞定“阿尔法狗”下围棋

    详解经典强化学习算法,搞定“阿尔法狗”下围棋

    博文小编 2021-07-13

    以上内容摘自《深度强化学习:基础、研究与应用》一书。想继续阅读的读者欢迎关注和购买此书阅读。 《深度强化学习:基础、研究与应用》 董豪、丁子涵、仉尚航等 著 一本书轻松上手深度学习|强化学习|模仿学习|集成学习|并行计算|多智...

    博文小编 2021-07-13
    443 0 0 0