问题描述
我想建模以下内容:
或者说一个函数,其当前输出取决于最后k个输入.
or lets say a function that its current output is depended on the last k inputs.
1-我知道一种方法是拥有一个经典的神经网络,其中k个输入为 {x(t-1),x(t-2),... x(tk)} 为每个 y(t)进行训练.那么使用RNN解决该问题的好处是什么?
1- I know one way is to have a classic Neural Network with k inputs as {x(t-1),x(t-2),...x(t-k)} for each y(t) and train it. Then what's the benefit of using a RNN to solve that problem?
2-假设使用RNN,我应该只使用x(t)(或x(t-1)),并假设隐藏层可以通过以下方法找到y(t)与过去k个输入的关系在其内存中(隐藏层)?
2- Assuming using RNN, should i use only the x(t) (or x(t-1)) and assume the hidden layer(s) can find the relation of y(t) to the past k inputs through having the in its memory (hidden layer)?
3-使用类似Deep RNN或LSTM的深网对此类问题有任何优越的收益,考虑到我们想基于最后k个输入来估计输出?
3- using deep nets like Deep RNN or LSTM has any superior benefit for such problem considering we want to estimate the output based on the last k inputs?
推荐答案
- 我不建议您使用经典的香草RNN.从理论上讲,它具有将以前输入的信息存储在其内存中的能力,但实际上,它需要数量庞大的节点.
- 假设经典的香草实现与现代架构(例如LSTM或GRU)一样长-取决于您要使用一种定向还是双向模型.如果您要预测下一步-通常,一种定向架构会更好.如果您想更好地分析给定的序列-我建议您应用双向序列.
- LSTM和GRU使用了额外的存储单元,这有助于您保持内存中输入之间的长时间依赖性.它们被认为是目前最好的架构.深度RNN-通常是具有递归拓扑的深度网络-它们以与前馈神经网络相同的方式利用其深度.
这篇关于如何组织递归神经网络?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!