了解LSTM拓扑


9

和其他许多人一样,我发现这里这里的资源对于理解LSTM单元非常有用。我确信我了解值是如何流动和更新的,并且我也有足够的信心添加上述“窥孔连接”等。

在我的示例中,每个时间步长都有一个输入向量length i和一个输出向量length in o,其中o < i

这两页都没有真正涵盖的是如何安排和培训这些内容。

我有两个问题:

  1. 在我的训练数据中,我有很多输入/输出向量对,它们对应许多很多时间单位。假设我用所有数据训练LSTM。然后可以通过它运行任意长度的输入集吗?我的意思是,如果我有整个2015年和2016年的培训数据,那么我可以通过网络运行2017年的数据吗?还是从2017年到2020年?
  2. 根据我所读的内容,感觉每个时间单位都有一个LSTM单元,因此,如果我有很多时间单位,那么我会有许多链接的LSTM单元。由于链的长度取决于我要通过网络运行的数据的长度,并且大概是任意的,所以我看不到如何训练它,除非我只训练一个LSTM单元,然后将其复制为一个数字次。因此,似乎我将训练一个LSTM单元,然后n将它们链接在一起以获得给定长度的输入矢量列表n?即使单个LSTM单元包含许多元素和功能,也感觉不足以在这么小的事物中捕获这么多的信息吗?

谢谢。我还有其他(相对较快)可以消耗的资源可以帮助我理解实施细节吗?上面的2个链接给出了正在发生的事情的高级概述,但未能捕获这些更详细的信息。

Answers:


1

假设我用所有数据训练LSTM。然后可以通过它运行任意长度的输入集吗?

抽象,是的。但是,某些软件实现对于变量是否需要为固定大小还是可变大小具有硬性规定,因此就编程而言,您必须检查自己是否正确实现了事情。

如此看来,我将训练一个LSTM单元,然后将它们中的n个链接在一起,以获得长度为n的给定输入向量列表?

XŤXŤ+1个

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.