2

我最近遇到了 openAI 5。我很好奇他们的模型是如何构建和理解的。我在维基百科中读到它“包含一个带有 1024 单元 LSTM 的单层”。然后我发现这个包含架构方案的pdf。

我的问题

从这一切我不明白一些事情:

  1. 拥有 1024 个单元的 LSTM 层意味着什么?这是否意味着我们有 1024 个时间步长和单个 LSTM 单元,或者这是否意味着我们有 1024 个单元。你能给我看一些可视化的图表吗?我特别难以在一层中可视化 1024 个单元格。(我尝试查看几个 SO 问题,例如12openAI 5 博客,但它们并没有太大帮助)。

  2. 你如何在这样的模型上进行强化学习?我习惯了 RL 与 Q-Tables 一起使用,并且它们在训练期间被更新。这是否仅仅意味着他们的损失函数就是奖励?

  3. 为什么这么大的模型没有梯度消失之类的问题?在pdf中没有看到任何类型的规范化。

  4. 在 pdf 中,您可以看到一个蓝色矩形,似乎它是一个单元,并且其中有N一个。这是什么意思?如果我弄错了,请纠正我,粉红色的框用于选择最佳移动/项目(?)


总的来说,所有这些都可以概括为“openAI 5 模型是如何工作的?

4

1 回答 1

1
  1. 这意味着隐藏状态的大小是 1024 个单元,这实质上是您的 LSTM 在每个时间步中都有 1024 个单元。我们事先不知道我们将有多少个时间步长。

  2. LSTM 的状态(隐藏状态)表示代理观察到的当前状态。它使用接收到的输入在每个时间步更新。这种隐藏状态可用于预测 Q 函数(如在深度 Q 学习中)。您没有明确的 表(state, action) -> q_value,而是有一个 1024 大小的向量,它表示状态并馈送到另一个密集层,该层将为所有可能的操作输出 q_values。

  3. LSTM 是有助于阻止梯度消失的机制,因为长程记忆还允许梯度更容易回流。

  4. 如果您指的是蓝色和粉红色的大框,那么粉红色的看起来就像是输入值,它们通过网络输入并汇集在每个拾取或修改器上。每个单元的蓝色空间似乎都是一样的。拾取、修改、单位等术语在他们正在玩的游戏的上下文中应该是有意义的。

这是 LSTM 的图像 - 每一步的黄色节点是 n: LSTM 可视化

向量 h 是 LSTM 的隐藏状态,它被传递到下一个时间步并用作该时间步的输出。

于 2020-11-02T12:01:32.103 回答