3

我想建模以下内容:

y(t)=F(x(t-1),x(t-2),...x(tk))

或者让我们说一个函数,它的当前输出取决于最后 k 个输入。

1-我知道一种方法是拥有一个经典的神经网络,其中每个y(t)的 k 个输入为{x(t-1),x(t-2),...x(tk)}并对其进行训练。那么使用 RNN 解决这个问题有什么好处呢?

2-假设使用 RNN,我应该只使用 x(t)(或 x(t-1))并假设隐藏层可以通过 in 找到 y(t) 与过去 k 个输入的关系它的记忆(隐藏层)?

3-考虑到我们想根据最后 k 个输入来估计输出,使用像 Deep RNN 或 LSTM 这样的深度网络对此类问题有什么优越的好处?

4

1 回答 1

4
  1. 我不建议您使用经典的香草 RNN。从理论上讲,它能够将来自先前输入的信息存储在其内存中,但实际上它需要大量的节点。
  2. 假设与现代架构(例如 LSTM 或 GRU)一样长的经典 vanilla 实现 - 这取决于您是要使用一种定向模型还是双向模型。如果您想预测下一步 - 通常一个定向架构会更好。如果您想更好地分析给定的序列 - 我建议您应用双向序列。
  3. LSTMs 和 GRUs 使用额外的内存单元,帮助您在内存中保持输入之间的长时间依赖关系。它们被认为是目前最好的架构。深度 RNN——通常是具有循环拓扑的深度网络——它们以与前馈神经网络相同的方式利用其深度。
于 2016-05-05T08:02:39.243 回答