您好,欢迎来到聚文网。 登录 免费注册
深入浅出强化学习 编程实战

深入浅出强化学习 编程实战

  • 字数: 354000
  • 装帧: 平装
  • 出版社: 电子工业出版社
  • 作者: 郭宪,宋俊潇,方勇纯
  • 出版日期: 2020-03-01
  • 商品条码: 9787121367465
  • 版次: 1
  • 开本: 16开
  • 页数: 264
  • 出版年份: 2020
定价:¥89 销售价:登录后查看价格  ¥{{selectedSku?.salePrice}} 
库存: {{selectedSku?.stock}} 库存充足
{{item.title}}:
{{its.name}}
精选
编辑推荐
"本书是《深入浅出强化学习:原理入门》的姐妹篇。 1 实战性强:以编程实战为主线,旨在帮助读者通过实战更清晰地理解算法并快速应用。 2 系统全面:在马尔可夫理论框架下,介绍了最基本的算法,涵盖了基于值函数的算法,直接策略搜索方法,基于模型的强化学习方法等。 3 前沿技术分析:剖析了AlphaZero强大技术背后的深度强化学习原理,并介绍了它在五子棋上的具体实现。 4 操作性强:读者可根据书中的代码直接上手,并通过修改程序中的超参数,亲自体会算法原理。"
内容简介
《深入浅出强化学习:编程实战》是《深入浅出强化学习:原理入门》的姊妹篇,写作的初衷是通过编程实例帮助那些想要学习强化学习算法的读者更深入、更清楚地理解算法。
本书首先介绍马尔可夫决策过程的理论框架,然后介绍基于动态规划的策略迭代算法和值迭代算法,在此基础上分3篇介绍了目前强化学习算法中最基本的算法。第1篇讲解基于值函数的强化学习算法,介绍了基于两种策略评估方法(蒙特卡洛策略评估和时间差分策略评估)的强化学习算法,以及如何将函数逼近的方法引入强化学习算法中。第2篇讲解直接策略搜索方法,介绍了基本的策略梯度方法、AC方法、PPO方法和DDPG算法。第3篇讲解基于模型的强化学习方法,介绍了基于MPC的方法、AlphaZero算法基本原理及在五子棋上的具体实现细节。建议读者根据书中的代码亲自动手编程,并修改程序中的超参数,根据运行结果不断体会算法原理。
作者简介
郭宪,南开大学人工智能学院讲师。2009年毕业于华中科技大学机械设计制造及自动化专业,同年保送到中国科学院沈阳自动化研究所进行硕博连读,2016年1月获得工学博士学位,并到南开大学从事博士后研究工作,2018年7月任教于南开大学至今。目前主要研究方向和兴趣是仿生机器人智能运动控制、强化学习和机器人博弈。__eol____eol__宋俊潇,香港科技大学博士,目前就职于启元世界,担任研究科学家,专注于决策智能相关算法的研究与开发。博士期间在国际知名期刊和会议发表论文9篇。2015年,获得阿里巴巴天池大数据黄金联赛个人年度第1名(参赛队伍总计15154支)。曾就职于网易游戏,担任资深数据挖掘研究员,负责个性化推荐算法及基于深度强化学习的游戏AI技术的探索研究,三次获得公司层面的技术进步奖。__eol____eol__方勇纯,南开大学人工智能学院院长、教授、博士生导师,国家杰出青年基金获得者(2013年),教育部长江学者特聘教授(2017年)。1992~1994年在浙江大学混合班(尖子班)学习,获混合班荣誉证书。1996年和1999年分获浙江大学学士和硕士学位,2002年获美国克莱姆森大学(Clemson University)电机工程博士学位。2002至2003年在康乃尔大学(Cornell University)从事博士后研究。2003年底至今,任教于南开大学。目前主要研究方向为机器人视觉控制、无人机、欠驱动吊车系统和微纳米操作。
目录
第0篇先导篇1
1一个极其简单的强化学习实例2
1.1多臂赌博机2
1.1.1??greedy策略3
1.1.2玻尔兹曼策略.6
1.1.3UCB策略7
1.2多臂赌博机代码实现7
2马尔可夫决策过程13
2.1从多臂赌博机到马尔可夫决策过程13
2.2马尔可夫决策过程代码实现23
第1篇基于值函数的方法31
3基于动态规划的方法32
3.1策略迭代与值迭代.32
3.1.1策略迭代算法原理33
3.1.2值迭代算法原理35
3.2策略迭代和值迭代的代码实现36
3.2.1鸳鸯环境的修改36
3.2.2策略迭代算法代码实现37
3.2.3值迭代算法代码实现.41
4基于蒙特卡洛的方法45
4.1蒙特卡洛算法原理46
4.2蒙特卡洛算法的代码实现49
4.2.1环境类的修改和蒙特卡洛算法类的声明49
4.2.2探索初始化蒙特卡洛算法实现52
4.2.3同策略蒙特卡洛算法实现.56
5基于时间差分的方法62
5.1从动态规划到时间差分强化学习62
5.2时间差分算法代码实现66
5.2.1时间差分算法类的声明66
5.2.2SARSA算法.67
5.2.3Q-Learning算法70
6基于函数逼近的方法74
6.1从表格型强化学习到线性函数逼近强化学习74
6.1.1表格特征表示74
6.1.2固定稀疏表示75
6.1.3参数的训练76
6.2基于线性函数逼近的Q-Learning算法实现76
6.3非线性函数逼近DQN算法代码实现85
第2篇直接策略搜索的方法95
7策略梯度方法96
7.1算法基本原理及代码架构96
7.1.1策略的表示问题97
7.1.2随机策略梯度的推导98
7.1.3折扣累积回报99
7.1.4代码架构101
7.2离散动作:CartPole实例解析及编程实战103
7.2.1CartPole简介103
7.2.2问题分析及MDP模型.104
7.2.3采样类的Python源码实现105
7.2.4策略网络模型分析106
7.2.5策略网络类的Python源码实现108
7.2.6策略网络的训练与测试110
7.2.7用策略梯度法求解Cartpole的主函数112
7.2.8CartPole仿真环境开发113
7.3连续动作Pendulum实例解析及编程实战117
7.3.1Pendulum简介118
7.3.2采样类的Python源代码实现118
7.3.3策略网络模型分析.120
7.3.4策略网络类的Python源码实现121
7.3.5策略网络的训练与测试125
7.3.6用策略梯度法求解Pendulum的主函数126
7.3.7Pendulum仿真环境开发127
8Actor-Critic方法131
8.1Actor-Critic原理及代码架构131
8.1.1Actor-Critic基本原理131
8.1.2Actor-Critic算法架构.133
8.2TD-AC算法133
8.2.1采样类的Python源码134
8.2.2策略网络的Python源码135
8.2.3策略训练和测试138
8.2.4主函数及训练效果140
8.3Minibatch-MC-AC算法141
8.3.1Minibatch-MC-AC算法框架141
8.3.2采样类的Python源码142
8.3.3策略网络的Python源码144
8.3.4策略的训练和测试147
8.3.5主函数及训练效果149
9PPO方法151
9.1PPO算法基本原理及代码结构151
9.2Python源码解析154
9.2.1采样类154
9.2.2策略网络156
9.2.3策略的训练和测试159
9.2.4主函数及训练效果160
10DDPG方法163
10.1DDPG基本163
10.2Python源码解析167
10.2.1经验缓存器类167
10.2.2策略网络169
10.2.3训练和测试173
10.2.4主函数及训练效果175
第3篇基于模型的强化学习方法177
11基于模型预测控制的强化学习算法178
11.1基于模型的强化学习算法的基本原理178
11.1.1神经网络拟合动力学模型179
11.1.2模型预测控制179
11.1.3基于模型的强化学习算法伪代码180
11.2Python源码实现及解析181
11.2.1数据收集类181
11.2.2数据采样类181
11.2.3动力学网络类182
11.2.4模型预测控制器类185
11.2.5模型训练和预测函数186
11.2.6主函数188
12AlphaZero原理浅析190
12.1从AlphaGo到AlphaZero191
12.2蒙特卡洛树搜索算法196
12.2.1博弈树和极小极大搜索196
12.2.2再论多臂老虎机问题198
12.2.3UCT算法200
12.3基于自我对弈的强化学习206
12.3.1基于MCTS的自我对弈206
12.3.2策略价值网络的训练210
13AlphaZero实战:从零学下五子棋214
13.1构建简易的五子棋环境215
13.2建立整体算法流程223
13.3实现蒙特卡洛树搜索229
13.4实现策略价值网络235
13.5训练实验与效果评估240
附录APyTorch入门246
A.1PyTorch基础知识246
A.1.1Tensor246
A.1.2基础操作247
A.1.3Tensor和NumPyarray间的转化249
A.1.4Autograd:自动梯度249
A.2PyTorch中的神经网络250
A.2.1如何定义神经网络251
A.2.2如何训练神经网络254
A.2.3在CIFAR-10数据集上进行训练和测试256
A.2.4模型的保存和加载259
参考文献261
后记263

蜀ICP备2024047804号

Copyright 版权所有 © jvwen.com 聚文网