欢迎您来到懒之才-站长的分享平台!   学会偷懒,并懒出境界是提高工作效率最有效的方法!
首页 > 教程文档 > 其他教程 > 强化学习精要 核心算法与TensorFlow实现_冯超[PDF][87.56MB]

强化学习精要 核心算法与TensorFlow实现_冯超[PDF][87.56MB]

2019-06-06 600 收藏 0 赞一个 0 真差劲 0 去评论 去下载

内容简介

《强化学习精要:核心算法与TensorFlow 实现》用通俗幽默的语言深入浅出地介绍了强化学习的基本算法与代码实现,为读者构建了一个完整的强化学习知识体系,同时介绍了这些算法的具体实现方式。从基本的马尔可夫决策过程,到各种复杂的强化学习算法,读者都可以从本书中学习到。本书除了介绍这些算法的原理,还深入分析了算法之间的内在联系,可以帮助读者举一反三,掌握算法精髓。书中介绍的代码可以帮助读者快速将算法应用到实践中。

目录

第一部分强化学习入门与基础知识
1 引言2
1.1 强化学习的概念. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.1.1 巴浦洛夫的狗. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 俄罗斯方块. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2 站在被实验者的角度看问题. . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3 强化学习效果的评估. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.1 不断试错. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.3.2 看重长期回报. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
1.4 强化学习与监督学习. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
1.4.1 强化学习与监督学习的本质. . . . . . . . . . . . . . . . . . . . . 9
1.4.2 模仿学习. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.5 强化学习的实验环境. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.5.1 Arcade Learning Environment . . . . . . . . . . . . . . . . . . . . . 12
1.5.2 Box2D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
1.5.3 MuJoCo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
1.5.4 Gym . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.6 本书的主要内容. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.7 参考资料. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2 数学与机器学习基础17
2.1 线性代数基础. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2 对称矩阵的性质. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.1 特征值与特征向量. . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.2 对称矩阵的特征值和特征向量. . . . . . . . . . . . . . . . . . . . 22
2.2.3 对称矩阵的对角化. . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.3 概率论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.3.1 概率与分布. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.3.2 最大似然估计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.4 重要性采样. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.5 信息论基础. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
2.6 KL 散度. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.7 凸函数及其性质. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.8 机器学习的基本概念. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.9 机器学习的目标函数. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.10 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
3 优化算法47
3.1 梯度下降法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.1.1 什么是梯度下降法. . . . . . . . . . . . . . . . . . . . . . . . . . 47
3.1.2 优雅的步长. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
3.2 动量算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
3.3 共轭梯度法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.3.1 精妙的约束. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
3.3.2 共轭. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
3.3.3 优化步长的确定. . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
3.3.4 Gram-Schmidt 方法. . . . . . . . . . . . . . . . . . . . . . . . . . 64
3.3.5 共轭梯度. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
3.4 自然梯度法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.4.1 基本概念. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3.4.2 Fisher 信息矩阵. . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
3.4.3 自然梯度法目标公式. . . . . . . . . . . . . . . . . . . . . . . . . 76
3.5 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
4 TensorFlow 入门78
4.1 TensorFlow 的基本使用方法. . . . . . . . . . . . . . . . . . . . . . . . . 78
4.2 TensorFlow 原理介绍. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.2.1 创建变量的scope . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
4.2.2 创建一个Variable 背后的故事. . . . . . . . . . . . . . . . . . . . 89
4.2.3 运算操作. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
4.2.4 tf.gradients . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
4.2.5 Optimizer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
4.2.6 TensorFlow 的反向传播技巧. . . . . . . . . . . . . . . . . . . . . 106
4.2.7 arg_scope 的使用. . . . . . . . . . . . . . . . . . . . . . . . . . . 109
4.3 TensorFlow 的分布式训练. . . . . . . . . . . . . . . . . . . . . . . . . . . 113
4.3.1 基于MPI 的数据并行模型. . . . . . . . . . . . . . . . . . . . . . 114
4.3.2 MPI 的实现:mpi_adam . . . . . . . . . . . . . . . . . . . . . . . . 121
4.4 基于TensorFlow 实现经典网络结构. . . . . . . . . . . . . . . . . . . . . 122
4.4.1 多层感知器. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122
4.4.2 卷积神经网络. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
4.4.3 循环神经网络. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
4.5 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
4.6 参考资料. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
5 Gym 与Baselines 130
5.1 Gym . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.1.1 Gym 的安装. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
5.1.2 Gym 的基本使用方法. . . . . . . . . . . . . . . . . . . . . . . . . 132
5.1.3 利用Gym 框架实现一个经典的棋类游戏:蛇棋. . . . . . . . . . 134
5.2 Baselines . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
5.2.1 Baselines 中的Python 3 新特性. . . . . . . . . . . . . . . . . . . . 139
5.2.2 tf_util . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141
5.2.3 对Gym 平台的扩展. . . . . . . . . . . . . . . . . . . . . . . . . . 142
5.3 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144
6 强化学习基本算法145
6.1 马尔可夫决策过程. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
6.1.1 MDP:策略与环境模型. . . . . . . . . . . . . . . . . . . . . . . . 145
6.1.2 值函数与Bellman 公式. . . . . . . . . . . . . . . . . . . . . . . . 147
6.1.3 “表格式”Agent . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
6.2 策略迭代. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
6.2.1 策略迭代法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
6.2.2 策略提升的证明. . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
6.2.3 策略迭代的效果展示. . . . . . . . . . . . . . . . . . . . . . . . . 160
6.3 价值迭代. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
6.3.1 N 轮策略迭代. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
6.3.2 从动态规划的角度谈价值迭代. . . . . . . . . . . . . . . . . . . . 165
6.3.3 价值迭代的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
6.4 泛化迭代. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
6.4.1 两个极端. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168
6.4.2 广义策略迭代法. . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
6.4.3 泛化迭代的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
6.5 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
第二部分最优价值算法
7 Q-Learning 基础173
7.1 状态转移概率:从掌握到放弃

文档截图

QQ截图20190606155934.jpg

强化学习精要 核心算法与TensorFlow实现_冯超[PDF][87.56MB]

一、推荐使用迅雷或快车等多线程下载软件下载本站资源。

二、未登录会员无法下载,登录后可获得更多便利功能,若未注册,请先注册。

三、如果服务器暂不能下载请稍后重试!总是不能下载,请点我报错 ,谢谢合作!

四、本站大部分资源是网上搜集或私下交流学习之用,任何涉及商业盈利目的均不得使用,否则产生的一切后果将由您自己承担!本站将不对任何资源负法律责任.如果您发现本站有部分资源侵害了您的权益,请速与我们联系,我们将尽快处理.

五、如有其他问题,请加网站设计交流群(点击这里查看交流群 )进行交流。

六、如需转载本站资源,请注明转载来自并附带链接

七、本站部分资源为加密压缩文件,统一解压密码为:www.aizhanzhe.com

下载地址
大家评论