描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787111650140
内容简介
Pytorch是基于python且具备强大GPU加速的张量和动态神经网络,更是Python中优先的深度学习框架,它使用强大的 GPU 能力,提供*大的灵活性和速度。本书指导读者以Pytorch为工具在Python中学习深层强化学习(DQN)。主要内容包括:强化学习概述及分类、强化学习的算法和实施方法、在Pytorch中实施深度规划与实现。、“实施深层强化学习DQN”、理解并实施新的深层强化学习方法(Double-DQN、Dueling Network、Prioritized Experience Replay、A3C、A2C)。
目 录
译者序
前言
第1章 强化学习概述1
1.1 机器学习的分类(监督学习、非监督学习、强化学习)1
1.2 强化学习、深度强化学习的历史6
1.3 深度强化学习的应用实例11
参考文献14
第2章 在走迷宫任务中实现强化学习16
2.1 Try Jupyter的使用方法16
2.2 迷宫和智能体的实现23
2.3 策略迭代法的实现31
2.4 价值迭代法的术语整理41
2.5 Sarsa的实现46
2.6 实现Q学习52
参考文献57
第3章 在倒立摆任务中实现强化学习59
3.1 在本地PC上准备强化学习的实现和执行环境59
3.2 倒立摆任务“CartPole”64
3.3 由多变量连续值表示的状态的表格表示69
3.4 Q学习的实现72
参考文献80
第4章 使用PyTorch实现深度学习81
4.1 神经网络和深度学习的历史81
4.2 深度学习的计算方法89
4.3 使用PyTorch实现MNIST手写数字分类任务94
参考文献107
第5章 深度强化学习DQN的实现108
5.1 深度强化学习DQN(深度Q网络)的说明108
5.2 实现DQN的四个要点111
5.3 实现DQN(上) 113
5.4 实现DQN(下) 123
参考文献127
第6章 实现深度强化学习的改进版128
6.1 深度强化学习算法发展图128
6.2 DDQN的实现132
6.3 Dueling Network的实现141
6.4 优先经验回放的实现145
6.5 A2C的实现157
参考文献168
第7章 在AWS GPU环境中实现消砖块游戏169
7.1 消砖块游戏“Breakout”的描述169
7.2 准备在AWS上使用GPU所需要的深度学习执行环境174
7.3 学习Breakout的四个关键思想187
7.4 A2C的实现(上) 193
7.5 A2C的实现(下) 203
参考文献212
后记214
前言
第1章 强化学习概述1
1.1 机器学习的分类(监督学习、非监督学习、强化学习)1
1.2 强化学习、深度强化学习的历史6
1.3 深度强化学习的应用实例11
参考文献14
第2章 在走迷宫任务中实现强化学习16
2.1 Try Jupyter的使用方法16
2.2 迷宫和智能体的实现23
2.3 策略迭代法的实现31
2.4 价值迭代法的术语整理41
2.5 Sarsa的实现46
2.6 实现Q学习52
参考文献57
第3章 在倒立摆任务中实现强化学习59
3.1 在本地PC上准备强化学习的实现和执行环境59
3.2 倒立摆任务“CartPole”64
3.3 由多变量连续值表示的状态的表格表示69
3.4 Q学习的实现72
参考文献80
第4章 使用PyTorch实现深度学习81
4.1 神经网络和深度学习的历史81
4.2 深度学习的计算方法89
4.3 使用PyTorch实现MNIST手写数字分类任务94
参考文献107
第5章 深度强化学习DQN的实现108
5.1 深度强化学习DQN(深度Q网络)的说明108
5.2 实现DQN的四个要点111
5.3 实现DQN(上) 113
5.4 实现DQN(下) 123
参考文献127
第6章 实现深度强化学习的改进版128
6.1 深度强化学习算法发展图128
6.2 DDQN的实现132
6.3 Dueling Network的实现141
6.4 优先经验回放的实现145
6.5 A2C的实现157
参考文献168
第7章 在AWS GPU环境中实现消砖块游戏169
7.1 消砖块游戏“Breakout”的描述169
7.2 准备在AWS上使用GPU所需要的深度学习执行环境174
7.3 学习Breakout的四个关键思想187
7.4 A2C的实现(上) 193
7.5 A2C的实现(下) 203
参考文献212
后记214
前 言
本书的目标
近年来,我们常常听到强化学习和深度强化学习等词语。但是,实际上真正实现强化学习的并不多。目前正处于第三次人工智能热潮中,深度学习方面已经出版了大量书籍。然而,大多数关于强化学习和深度强化学习的书籍都是相关研究人员的学术成果。学术性书籍强调理论,倾向于公式和证明,实现代码往往很少。对于非研究人员来说,通过阅读这类书籍来理解强化学习和深度强化学习存在着较大的障碍。
因此,本书面向的不是研究者而是普通大众,旨在让读者在实践中理解强化学习和深度强化学习。本书强调算法的具体实现,通过给出大量代码并对其进行解释和说明,来帮助读者更好地学习。书中所有的代码都可以下载。在阅读本书时请实现相关程序,通过完成实际代码来学习。
强化学习和深度强化学习主要用于两个目的—机器人等控制规则的构建以及围棋、将棋等对战游戏的策略构建。本书涉及控制规则的构建,但没有实现围棋等对战游戏。然而,本书所讲述的基本内容对那些想要为对战游戏制定策略的人也是有用的。
读者所需的先验知识
本书以对强化学习和深度强化学习感兴趣,但不了解其细节和实现方法的读者为对象。阅读本书需要以下三方面的知识:
1)能够理解if语句、for语句。
2)能够自己定义方法(函数)。
3)会执行向量和矩阵的乘法运算。
换句话说,本书试图以更容易理解的方式进行讲解,读者具备一些基本的编程经验和基本的线性代数知识即可顺利学习。本书使用Python作为编程语言来实现相关程序,即使对Python不熟悉的读者也能轻松理解本书内容。但是,由于篇幅的限制,本书没有解释Python的所有基本细节,如果你是Python初学者,请参考网上的信息和Python的入门书籍。
本书的实现代码和运行环境
可以从作者的GitHub或Mynavi出版社的出版支持页面下载本书的实现代码。
近年来,我们常常听到强化学习和深度强化学习等词语。但是,实际上真正实现强化学习的并不多。目前正处于第三次人工智能热潮中,深度学习方面已经出版了大量书籍。然而,大多数关于强化学习和深度强化学习的书籍都是相关研究人员的学术成果。学术性书籍强调理论,倾向于公式和证明,实现代码往往很少。对于非研究人员来说,通过阅读这类书籍来理解强化学习和深度强化学习存在着较大的障碍。
因此,本书面向的不是研究者而是普通大众,旨在让读者在实践中理解强化学习和深度强化学习。本书强调算法的具体实现,通过给出大量代码并对其进行解释和说明,来帮助读者更好地学习。书中所有的代码都可以下载。在阅读本书时请实现相关程序,通过完成实际代码来学习。
强化学习和深度强化学习主要用于两个目的—机器人等控制规则的构建以及围棋、将棋等对战游戏的策略构建。本书涉及控制规则的构建,但没有实现围棋等对战游戏。然而,本书所讲述的基本内容对那些想要为对战游戏制定策略的人也是有用的。
读者所需的先验知识
本书以对强化学习和深度强化学习感兴趣,但不了解其细节和实现方法的读者为对象。阅读本书需要以下三方面的知识:
1)能够理解if语句、for语句。
2)能够自己定义方法(函数)。
3)会执行向量和矩阵的乘法运算。
换句话说,本书试图以更容易理解的方式进行讲解,读者具备一些基本的编程经验和基本的线性代数知识即可顺利学习。本书使用Python作为编程语言来实现相关程序,即使对Python不熟悉的读者也能轻松理解本书内容。但是,由于篇幅的限制,本书没有解释Python的所有基本细节,如果你是Python初学者,请参考网上的信息和Python的入门书籍。
本书的实现代码和运行环境
可以从作者的GitHub或Mynavi出版社的出版支持页面下载本书的实现代码。
本书的运行环境如下所示。我们使用PyTorch作为深度学习的框架,采用的是在2018年4月底发布的0.4.0版本。第7章使用亚马逊的云服务,通过GPU服务器来进行计算。计算所需时间大约3小时,费用为500日元或更少,所以尝试运行所需的费用并不高。
评论
还没有评论。