6

在 Keras 的 LSTM 实现中的默认模式 (stateful = False) 中,一批中的所有样本都是独立的,并且状态不会从一个样本传播到下一个样本。据我了解,输入序列长度(L)是让 LSTM 保持状态的唯一方法。但这将状态传播限制在固定数量的时间步,即L。从理论上讲,与具有固定大小滑动输入窗口的前馈 NN 相比,这种操作模式有什么优势。这样NN的每个输入都是L个连续输入值的向量。

从理论上讲,LSTM 应该能够学习跨越甚至 1000 个时间步长的长期依赖关系。但这不要求我有L = 1000,因为没有办法捕获比输入序列长度更长的依赖关系?我知道可以通过格式化输入数据来使用有状态模式,以便每批次的i个样本是相关的。我很难理解默认 LSTM 模式相对于输入数据上具有滑动窗口的前馈 NN 有什么优势?

4

1 回答 1

0

前馈神经网络 (FFNN) 和任何递归网络 (RNN、LSTM ...) 之间的主要区别在于存在随时间的循环连接。

使用带有滑动窗口的 F​​FNN 可能会让您有所收获,但您的内部表示将仅基于时间“t”的输入。而 Recurent Net 也将利用以前看到的数据。

Stateless vs Statefull : 我不会详细介绍 SO 已经有很多关于这个主题的好帖子,但重要的是批次之间的状态重置不是在每个样本之后,所以它确实携带一些超出序列长度的信息常规的 FFNN 不会。

于 2020-12-17T14:59:32.133 回答