提交 72531951 编写于 作者: W wizardforcel

2021-01-17 20:45:00

上级 0e484ded
......@@ -31,9 +31,9 @@
那就是最大化期望的奖励总和。
这里, *H =地平线*的时间步长,因此,如果开始时间步长 *t = 0* ,则总时间步长为 *H + 1*
这里, `H`地平线的时间步长,因此,如果开始时间步长`t = 0`,则总时间步长为`H + 1`
* 随机策略类消除了策略优化问题,为我们提供了一组可以选择最佳策略的策略。 在网格世界环境中采用确定性策略的情况下,由于动作变化而导致的变化并不平滑,但是如果每个州都有动作分布,我们可以稍微改变分布,而这只会稍微改变预期的总和。 奖励。 这是使用随机策略的优势,其中![](img/143e641a-8be1-411e-a866-01e470d80447.png)给出给定状态`s`作用概率*和*。 因此,![](img/342e31bf-6e76-40e8-a298-b03277733e73.png)给出了给定状态下动作的概率分布。
* 随机策略类消除了策略优化问题,为我们提供了一组可以选择最佳策略的策略。 在网格世界环境中采用确定性策略的情况下,由于动作变化而导致的变化并不平滑,但是如果每个州都有动作分布,我们可以稍微改变分布,而这只会稍微改变预期的总和。 奖励。 这是使用随机策略的优势,其中![](img/143e641a-8be1-411e-a866-01e470d80447.png)给出给定状态`s`动作`a`的概率。 因此,![](img/342e31bf-6e76-40e8-a298-b03277733e73.png)给出了给定状态下动作的概率分布。
因此,由于随机策略,我们有一个平滑的优化问题,可以应用梯度下降来获得良好的局部最优,从而导致最优策略。
......@@ -115,7 +115,7 @@
![](img/d42506b9-9710-4ec3-93a3-50c62b3b2991.png)
在此,![](img/76bb83ab-8783-441c-b93f-9cb852adea36.png)是在状态`s`采取行动*和*的奖励。
在此,![](img/76bb83ab-8783-441c-b93f-9cb852adea36.png)是在状态`s`采取行动`a`的奖励。
到目前为止,我们知道基于策略的强化学习是一个优化问题,目标是找到使![](img/29b8bcc8-8899-4036-915c-da44b0572d00.png)最大化的![](img/ebff45ff-12c2-44e0-bda5-21cde9d251b6.png)。 同样,在这里,我们将使用基于梯度的方法进行优化。 使用基于梯度的优化的原因是要获得更高的效率,因为与无梯度方法相比,梯度指向了更高效率的方向。
......@@ -180,7 +180,7 @@ Episode T
每个`Episode T`都以以下初始化开始:
* 对于所有状态`s`,合格分数 *e(s)= 0*
* 对于所有状态`s`,合格分数`e(s) = 0`
* 对于所有状态`s`,给定`Episode T`中的状态值![](img/96757d13-12cc-4ae2-b27b-1b8383db5a88.png)等于![](img/4ba99034-9dea-402d-871b-ac5949e7b310.png)
在情节的每个时间步,即当前步`t`,我们更新要离开的状态![](img/93bfad9d-15d6-48dc-8f47-8f9aef8070ba.png)的资格,然后为所有状态更新以下内容:
......@@ -275,7 +275,7 @@ Output: final
![](img/bdee56e7-7167-4d77-a478-710505461008.png)
这产生了著名的 **actor-critic 算法**。 顾名思义,actor-critic 算法出于以下目的维护两个网络:
这产生了著名的**演员评论家算法**。 顾名思义,actor-critic 算法出于以下目的维护两个网络:
* 一个网络充当评论者,它更新状态动作函数逼近器的权重`w`参数向量
* 其他网络充当 Actor,它根据批评者给出的方向更新策略参数向量![](img/49aece0d-9f5a-4d27-8ccc-13b01329f2de.png)
......@@ -350,16 +350,16 @@ end for
在本节中,我们将创建一个策略网络,该策略网络将使用来自 pong 环境的原始像素(来自 OpenAI 健身房的 **pong-v0**)作为输入。 策略网络是一个单独的隐藏层神经网络,它全连接到输入层上 pong 的原始像素,还全连接到包含单个节点的输出层,该单个节点返回了桨上升的可能性。 我要感谢 Andrej Karpathy 提出了一种使代理使用策略梯度进行学习的解决方案。 我们将尝试实现类似的方法。
灰度大小为 80 * 80 的像素图像(我们将不使用 RGB,即 80 * 80 * 3)。 因此,我们有一个 80 * 80 的二进制网格,它告诉我们桨和球的位置,并将其作为输入输入到神经网络。 因此,神经网络将包含以下内容:
灰度大小为`80 * 80`的像素图像(我们将不使用 RGB,即`80 * 80 * 3`)。 因此,我们有一个`80 * 80`的二进制网格,它告诉我们桨和球的位置,并将其作为输入输入到神经网络。 因此,神经网络将包含以下内容:
* **输入层(X)**:将 80 * 80 压缩为 6400 * 1,即 6400 个节点
* **输入层(`X`)**:将`80 * 80`压缩为`6400 * 1`,即 6400 个节点
* **隐藏层**:200 个节点
* **输出层**:1 个节点
因此,总参数如下:
* **连接输入层和隐藏层的权重和偏置**6400 * 200(权重)+ 200(偏置)参数
* **连接隐藏层和输出层的权重和偏置**200 * 1(权重)+1(偏置)参数
* **连接输入层和隐藏层的权重和偏置**`6400 * 200`(权重)`+ 200`(偏置)参数
* **连接隐藏层和输出层的权重和偏置**`200 * 1`(权重)`+ 1`(偏置)参数
因此,总参数将约为 130 万。
......@@ -441,7 +441,7 @@ def relu(x):
return x
```
* **预处理功能**`preprocess(image)`功能将图像像素作为参数,并通过裁剪,下采样,使其成为灰度,擦除背景并将图像展平为一维向量来对其进行预处理。 我们将使用以下代码定义函数:
* **预处理函数**`preprocess(image)`功能将图像像素作为参数,并通过裁剪,下采样,使其成为灰度,擦除背景并将图像展平为一维向量来对其进行预处理。 我们将使用以下代码定义函数:
```py
#preprocessing function
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册