Python深度强化学习:基于Chainer和OpenAI Gym

Python深度强化学习:基于Chainer和OpenAI Gym

作者:[日] 牧野浩二[日] 西崎傅光

出版社:机械工业

出版年:2021年11月

ISBN:9787111692584

所属分类:网络科技

书刊介绍

《Python深度强化学习:基于Chainer和OpenAI Gym》内容简介

近年来,机器学习受到了人们的广泛关注。本书面向普通大众,指导读者在Python(基于Chainer和OpenAI Gym)中实践深度强化学习。读者只需要具备一些基本的编程经验即可读懂书中内容,通过实现具体程序来掌握深度强化学习的相关知识。
本书内容: 介绍深度学习、强化学习和深度强化学习的基本知识。
通过多种实际对战游戏(如太空侵略者、吃豆人)来介绍算法,如ε-greedy算法。
使用Anaconda设置本地PC,在倒立摆和老鼠学习问题中实现深度强化学习。
使用Python实现MNIST手写数字分类任务。
实现深度强化学习的基本算法DQN。
详解继DQN之后提出的新的深度强化学习技术(DDQN、PER-DQN、DDPG和A3C等)。
牧野浩二(Koji Makino) 东京工业大学博士,现任山梨大学大学院综合研究部工学领域的助理教授。迄今为止,一直在使用地球模拟器进行纳米碳研究,是使用Arduino进行机器人模型实验的负责人,具有从微机到超级计算机的各种编程经验。主要致力于研究人类的隐性知识,并且正在进行从测量仪器开发到数据分析的连贯研究。
西崎博光(Hiromitsu Nishizaki) 丰桥技术科学大学博士,现为山梨大学大学院综合研究部工学领域的副教授。主要致力于语音信息处理的研究,尤其是语音识别和语音文档检索的研究(即从大规模语音数据库中找到相应语音的研究)。

作品目录

关于本书
作者简介
译者简介
译者序
前言
第1章引言
1.1、深度强化学习可以做什么
1.2、本书的结构
1.3、框架:Chainer和ChainerRL
1.4、Python的运行检查
1.5、Chainer的安装
1.6、ChainerRL的安装
1.7、模拟器:OpenAI
Gym
专栏
第2章深度学习
2.1、什么是深度学习
2.2、神经网络
2.3、基于Chainer的神经网络
2.3.1、Chainer与神经网络的对应
2.3.2、Chainer程序
2.3.3、参数设置
2.3.4、创建数据
2.3.5、定义神经网络
2.3.6、各种声明
2.3.7、显示训练状态
2.3.8、保存训练状态
2.3.9、执行训练
2.4、与其他神经网络的对应
2.4.1、感知器
2.4.2、5层神经网络(深度学习)
2.4.3、计算输入中的1的数量
2.5、基于深度神经网络的手写数字识别
2.5.1、手写数字的输入格式
2.5.2、深度神经网络的结构
2.5.3、8×8的手写数字数据
2.6、基于卷积神经网络的手写数字识别
2.6.1、卷积
2.6.2、激活函数
2.6.3、池化
2.6.4、执行
2.7、一些技巧
2.7.1、读取文件数据
2.7.2、使用训练模型
2.7.3、重启训练
2.7.4、检查权重
2.7.5、从文件中读取手写数字
第3章强化学习
3.1、什么是强化学习
3.1.1、有监督学习
3.1.2、无监督学习
3.1.3、半监督学习
3.2、强化学习原理
3.3、通过简单的示例来学习
3.4、应用到Q学习问题中
3.4.1、状态
3.4.2、行动
3.4.3、奖励
3.4.4、Q值
3.5、使用Python进行训练
3.5.1、运行程序
3.5.2、说明程序
3.6、基于OpenAI
Gym的倒立摆
3.6.1、运行程序
3.6.2、说明程序
3.7、如何保存和加载Q值
第4章深度强化学习
4.1、什么是深度强化学习
4.2、对于老鼠学习问题的应用
4.2.1、运行程序
4.2.2、说明程序
4.2.3、如何保存和读取智能体模型
4.3、基于OpenAI
Gym的倒立摆
4.3.1、运行程序
4.3.2、说明程序
4.4、基于OpenAI
Gym的太空侵略者
4.5、基于OpenAI
Gym的颠球
4.5.1、运行程序
4.5.2、说明程序
4.6、对战游戏
4.6.1、黑白棋
4.6.2、训练方法
4.6.3、变更盘面
4.6.4、黑白棋实体
4.6.5、如何与人类对战
4.6.6、卷积神经网络的应用
4.7、使用物理引擎进行模拟
4.7.1、物理引擎
4.7.2、运行程序
4.7.3、说明程序
4.8、物理引擎在颠球问题中的应用
4.9、物理引擎在倒立摆问题中的应用
4.10、物理引擎在机械臂问题中的应用
4.11、使用其他深度强化学习方法
4.11.1、深度强化学习的类型
4.11.2、将训练方法更改为DDQN
4.11.3、将训练方法更改为PER-DQN
4.11.4、将训练方法更改为DDPG
4.11.5、将训练方法更改为A3C
第5章实际环境中的应用
5.1、使用摄像机观察环境(MNIST)
5.1.1、摄像机设置
5.1.2、通过卷积神经网络对摄像机图像进行分类
5.1.3、使用图像大小为28×28的手写数字进行训练
5.2、实际环境中的老鼠学习问题
问题设置
5.3、使用Raspberry
Pi处理老鼠学习问题
5.3.1、环境构建
5.3.2、以输入输出为重点的简化
5.3.3、使用摄像机测量环境
5.4、使用Arduino
+
PC处理老鼠学习问题
5.4.1、环境构建
5.4.2、以输入输出为重点的简化
5.4.3、使用摄像机测量环境
5.5、使用Raspberry
Pi
+
Arduino处理老鼠学习问题
5.6、结语
附录
A.1、VirtualBox的安装
A.1.1、复制和粘贴
A.1.2、共享文件夹
A.2、Raspberry
Pi的设置
A.2.1、操作系统安装
A.2.2、程序的传输设置
A.2.3、RC伺服电动机的设置
A.3、安装Arduino
A.4、GPU的使用
A.4.1、在安装CuPy之前
A.4.2、CuPy的使用方法
A.5、使用Intel
Math
Kernel
Library安装NumPy

相关推荐

微信二维码