Keras中的递归神经层

Mic*_*ael 5 neural-network keras

我正在通过Keras学习神经网络,并希望在循环神经网络上探索我的顺序数据集。我正在阅读文档,并试图理解LSTM示例

我的问题是:

  1. 是什么timesteps所必需的两个层?
  2. 如何准备一个顺序数据集Dense作为这些循环图层的输入?
  3. 什么是Embedding层呢?

Mar*_*jko 1

  1. 对于 Keras 来说,时间步是一个非常令人烦恼的事情。由于您提供的作为 LSTM 输入的数据必须是 numpy 数组,因此需要(至少对于 Keras 版本 <= 0.3.3)具有指定的数据形状 - 即使具有“时间”维度。您只能将具有指定长度的序列作为输入 - 如果您的输入长度不同 - 您应该使用人工数据来“填充”您的序列或使用“有状态”模式(请仔细阅读 Keras文档以了解这种方法的含义)。这两种解决方案可能都令人不快 - 但这是您付出的代价,因为 Keras 是如此简单:) 我希望在 1.0.0 版本中他们会对此做一些事情。

  2. 在 LSTM 层之后应用 norecurrent 层有两种方法:

    • 您可以将参数 return_sequences 设置为 False - 那么只有每个序列的最后一个激活才会传递到“静态”层。
    • 您可以使用“时间分布”层之一 - 以便在处理数据时获得更大的灵活性。
  3. https://stats.stackexchange.com/questions/182775/what-is-an-embedding-layer-in-a-neural-network :)