强化学习精要:核心算法与TensorFlow实现
丛书名 :博文视点AI系列
作 译 者:冯超
出版时间:2018-04 千 字 数:470
版 次:01-01 页 数:392
开 本:16开
装 帧:
I S B N :9787121340000
换 版:
所属分类:科技 >> 计算机 >> 计算机科学
纸质书定价:¥80.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 状态转移概率:从掌握到放弃. . . . . . . . . . . . . . . . . . . . . . . . 173
7.2 蒙特卡罗方法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
7.3 探索与利用. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178
7.4 蒙特卡罗的方差问题. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
7.5 时序差分法与SARSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183
7.6 Q-Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
7.7 Q-Learning 的收敛性分析. . . . . . . . . . . . . . . . . . . . . . . . . . . 189
7.8 从表格形式到价值模型. . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
7.9 Deep Q Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
7.10 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
7.11 参考资料. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
8 DQN 的改进算法203
8.1 Double Q-Learning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
8.2 Priority Replay Buffer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
8.3 Dueling DQN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209
8.4 解决DQN 的冷启动问题. . . . . . . . . . . . . . . . . . . . . . . . . . . 211
8.5 Distributional DQN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
8.5.1 输出价值分布. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214
8.5.2 分布的更新. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
8.6 Noisy Network . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
8.7 Rainbow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
8.7.1 Rainbow 的模型特点. . . . . . . . . . . . . . . . . . . . . . . . . 221
8.7.2 Deep Q Network 的实现. . . . . . . . . . . . . . . . . . . . . . . . 223
8.8 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
8.9 参考资料. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 227
第三部分基于策略梯度的算法
9 基于策略梯度的算法229
9.1 策略梯度法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229
9.1.1 算法推导. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
9.1.2 算法分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233
9.1.3 算法改进. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234
9.2 Actor-Critic 算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
9.2.1 降低算法的方差. . . . . . . . . . . . . . . . . . . . . . . . . . . . 236
9.2.2 A3C 算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 238
9.2.3 A2C 算法实战. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240
9.3 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
9.4 参考资料. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 243
10 使策略单调提升的优化算法244
10.1 TRPO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244
10.1.1 策略的差距. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245
10.1.2 策略提升的目标公式. . . . . . . . . . . . . . . . . . . . . . . . . 247
10.1.3 TRPO 的目标定义. . . . . . . . . . . . . . . . . . . . . . . . . . . 248
10.1.4 自然梯度法求解. . . . . . . . . . . . . . . . . . . . . . . . . . . . 251
10.1.5 TRPO 的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
10.2 GAE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256
10.2.1 GAE 的公式定义. . . . . . . . . . . . . . . . . . . . . . . . . . . 256
10.2.2 基于GAE 和TRPO 的值函数优化. . . . . . . . . . . . . . . . . . 259
10.2.3 GAE 的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260
10.3 PPO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
10.3.1 PPO 介绍. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261
10.3.2 PPO 算法实践. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 263
10.4 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
10.5 参考资料. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
11 Off-Policy 策略梯度法265
11.1 Retrace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266
11.1.1 Retrace 的基本概念. . . . . . . . . . . . . . . . . . . . . . . . . . 266
11.1.2 Retrace 的算法实现. . . . . . . . . . . . . . . . . . . . . . . . . . 267
11.2 ACER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270
11.2.1 Off-Policy Actor-Critic . . . . . . . . . . . . . . . . . . . . . . . . . 270
11.2.2 ACER 算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272
11.2.3 ACER 的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276
11.3 DPG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 279
11.3.1 连续空间的策略优化. . . . . . . . . . . . . . . . . . . . . . . . . 279
11.3.2 策略模型参数的一致性. . . . . . . . . . . . . . . . . . . . . . . . 280
11.3.3 DDPG 算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283
11.3.4 DDPG 的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 286
11.4 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
11.5 参考资料. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 289
第四部分其他强化学习算法
12 稀疏回报的求解方法291
12.1 稀疏回报的困难. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291
12.2 层次强化学习. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294
12.3 HER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 298
12.3.1 渐进式学习. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 299
12.3.2 HER 的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301
12.4 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
12.5 参考资料. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 304
13 Model-based 方法305
13.1 AlphaZero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
13.1.1 围棋游戏. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305
13.1.2 Alpha-Beta 树. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307
13.1.3 MCTS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309
13.1.4 策略价值模型. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 312
13.1.5 模型的对决. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
13.2 iLQR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 316
13.2.1 线性模型的求解法. . . . . . . . . . . . . . . . . . . . . . . . . . 317
13.2.2 非线性模型的解法. . . . . . . . . . . . . . . . . . . . . . . . . . 322
13.2.3 iLQR 的实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
13.3 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
13.4 参考资料. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 328
第五部分反向强化学习
14 反向强化学习入门330
14.1 基本概念. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
14.2 从最优策略求解回报. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332
14.2.1 求解回报的目标函数. . . . . . . . . . . . . . . . . . . . . . . . . 332
14.2.2 目标函数的约束. . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
14.3 求解线性规划. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
14.3.1 线性规划的求解过程. . . . . . . . . . . . . . . . . . . . . . . . . 335
14.3.2 实际案例. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
14.4 无限状态下的求解. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 338
14.5 从样本中学习. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 342
14.6 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
14.7 参考资料. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 344
15 反向强化学习算法2.0 345
15.1 最大熵模型. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
15.1.1 指数家族. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 346
15.1.2 最大熵模型的推导. . . . . . . . . . . . . . . . . . . . . . . . . . 349
15.1.3 最大熵模型的实现. . . . . . . . . . . . . . . . . . . . . . . . . . 354
15.2 最大熵反向强化学习. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
15.3 GAIL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 361
15.3.1 GAN 的基本概念. . . . . . . . . . . . . . . . . . . . . . . . . . . 361
15.3.2 GAN 的训练分析. . . . . . . . . . . . . . . . . . . . . . . . . . . 363
15.4 GAIL 实现. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
15.5 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 370
15.6 参考资料. . . . . . . . . . . . . . . .
深入浅出强化学习:原理入门
定价 79.00
出版社 电子工业出版社
版次 1
出版时间 2018年01月
开本 16
作者 郭宪,方勇纯 著
装帧 平装
页数 256
字数
ISBN编码 9787121329180
1 绪论 1
1.1 这是一本什么书 1
1.2 强化学习可以解决什么问题 2
1.3 强化学习如何解决问题 4
1.4 强化学习算法分类及发展趋势 5
1.5 强化学习仿真环境构建 7
1.5.1 gym安装及简单的demo示例 8
1.5.2 深入剖析gym环境构建 10
1.6 本书主要内容及安排 12
第*篇 强化学习基础 17
2 马尔科夫决策过程 18
2.1 马尔科夫决策过程理论讲解 18
2.2 MDP中的概率学基础讲解 26
2.3 基于gym的MDP实例讲解 29
2.4 习题 34
3 基于模型的动态规划方法 36
3.1 基于模型的动态规划方法理论 36
3.2 动态规划中的数学基础讲解 47
3.2.1 线性方程组的迭代解法 47
3.2.2 压缩映射证明策略评估的收敛性 49
3.3 基于gym的编程实例 52
3.4 *优控制与强化学习比较 54
3.5 习题 56
第*篇 基于值函数的强化学习方法 57
4 基于蒙特卡罗的强化学习方法 58
4.1 基于蒙特卡罗方法的理论 58
4.2 统计学基础知识 67
4.3 基于Python的编程实例 71
4.4 习题 74
5 基于时间差分的强化学习方法 75
5.1 基于时间差分强化学习算法理论讲解 75
5.2 基于Python和gym的编程实例 83
5.3 习题 87
6 基于值函数逼近的强化学习方法 88
6.1 基于值函数逼近的理论讲解 88
6.2 DQN及其变种 94
6.2.1 DQN方法 94
6.2.2 Double DQN 100
6.2.3 优先回放(Prioritized Replay) 102
6.2.4 Dueling DQN 104
6.3 函数逼近方法 105
6.3.1 基于非参数的函数逼近 105
6.3.2 基于参数的函数逼近 111
6.3.3 卷积神经网络 117
6.4 习题 123
第三篇 基于直接策略搜索的强化学习方法 125
7 基于策略梯度的强化学习方法 126
7.1 基于策略梯度的强化学习方法理论讲解 126
7.2 基于gym和TensorFlow的策略梯度算法实现 134
7.2.1 安装Tensorflow 135
7.2.2 策略梯度算法理论基础 135
7.2.3 Softmax策略及其损失函数 136
7.2.4 基于TensorFlow的策略梯度算法实现 138
7.2.5 基于策略梯度算法的小车倒立摆问题 141
7.3 习题 141
8 基于置信域策略优化的强化学习方法 142
8.1 理论基础 143
8.2 TRPO中的数学知识 153
8.2.1 信息论 153
8.2.2 优化方法 155
8.3 习题 164
9 基于确定性策略搜索的强化学习方法 165
9.1 理论基础 165
9.2 习题 170
10 基于引导策略搜索的强化学习方法 171
10.1 理论基础 171
10.2 GPS中涉及的数学基础 178
10.2.1 监督相LBFGS优化方法 178
10.2.2 ADMM算法 179
10.2.3 KL散度与变分推理 183
10.3 习题 184
第四篇 强化学习研究及前沿 185
11 逆向强化学习 186
11.1 概述 186
11.2 基于*大边际的逆向强化学习 187
11.3 基于*大熵的逆向强化学习 194
11.4 习题 201
12 组合策略梯度和值函数方法 202
13 值迭代网络 207
13.1 为什么要提出值迭代网络 207
13.2 值迭代网络 210
14 基于模型的强化学习方法:PILCO及其扩展 214
14.1 概述 214
14.2 PILCO 216
14.3 滤波PILCO和探索PILCO 226
14.3.1 滤波PILCO算法 227
14.3.2 有向探索PILCO算法 230
14.4 深度PILCO 232
后记 235
参考文献 237
推荐序一
强化学习是机器学习的一个重要分支,它试图解决决策优化的问题。所谓决策优化,是指面对特定状态(State,S),采取什么行动方案(Action,A),才能使收益*大(Reward,R)。很多问题都与决策优化有关,比如下棋、投资、课程安排、驾车,动作模仿等。
AlphaGo的核心算法,就是强化学习。AlphaGo不仅稳操胜券地战胜了当今世界所有人类高手,而且甚至不需要学习人类棋手的棋谱,完全靠自己摸索,就在短短几天内,发现并超*了一千多年来人类积累的全部围棋战略战术。
*简单的强化学习的数学模型,是马尔科夫决策过程(Markov Decision Process,MDP)。之所以说MDP是一个简单的模型,是因为它对问题做了很多限制。
1.面对的状态st,数量是有限的。
2.采取的行动方案at,数量也是有限的。
3.对应于特定状态st,当下的收益rt是明确的。
评分
评分
评分
评分
评分
评分
评分
评分
本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度,google,bing,sogou 等
© 2025 book.idnshop.cc All Rights Reserved. 静思书屋 版权所有