代码拉取完成,页面将自动刷新
边做边学深度强化学习:PyTorch程序设计实践
作者:[日] 小川雄太郎
ISBN:9787111650140
作者的GitHub:https://github.com/YutaroOgawa/Deep-Reinforcement-Learning-Book.git
第一章主要内容是强化学习概述:
强化学习
)第二章主要使用走迷宫任务介绍一些基本的强化学习方法。
softmax
函数演示了策略梯度法
求得策略并可视化路径softmax
函数如下:
$$
P(\theta_i) = \frac{exp(\beta\theta_i)}{\sum_{j=1}^{N_a}exp(\beta\theta_j)}
$$策略梯度法所
用更新公式如下:
$$
new~\theta_{s_i,a_j} = old~\theta_{s_i,a_j} + \eta\cdot\Delta\theta_{s,a_j}
$$
$$
\Delta\theta_{s,a_j}={N(s_i,a_j)-P(s_i,a_j)N(s_i,a)}/T
$$价值迭代算法
贝尔曼方程
如下:
$$
Q(s_t,a_t) = R_{t+1}+\gamma Q(S_{t+1},a_{t+1})
$$策略依赖型(ON)
特征策略关闭型(OFF)
主要使用复杂一些的倒立摆任务
详细内容见笔记
书中使用的一些包版本较低:gym==0.9.7,pyglet==1.2.4
经测试(2020年8月24日),最新版gym==0.17.2,以及较高版本pyglet==1.5.0可用。
原书中可视化的代码已做修改。
简要介绍了使用 PyTorch
实现深度学习
简述了神经网络和深度学习的历史
深度学习的计算方法
使用 PyTorch
实现 MNIST
手写数字分类任务
书中为了完整展示深度学习的过程,使用了 scikit-learn
,但库版本较低
# 使用了新版本,所以
from sklearn.datasets import fetch_mldata
# 改为了
from sklearn.datasets import fetch_openml
实际上,该部分展示的是监督学习。
介绍 DQN,Q学习与深度学习的结合,使用深度学习的神经网络替代 Q 表格(本章是 2013 版的 DQN)
深度强化学习的改进版
目标 Q 网络
以训练 主 Q 网络
:
$$
Q_m(s_t, a_t)=Q_m(s_t,a_t) + \eta*(R_{t+1}+\gamma\max_a{Q_t(s_{t+1}, a)}-Q_m(s_t,a_t))
$$此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。