Keras:SimpleRNN - 如何在每个时间步进入新输入(而不是使用输出)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Keras:SimpleRNN - 如何在每个时间步进入新输入(而不是使用输出)相关的知识,希望对你有一定的参考价值。

在SimpleRNN(https://keras.io/layers/recurrent/#simplernncell)的文档中,它被描述为“完全连接的RNN,其中输出将被反馈到输入”。

有没有一种直接的方法来使用这个层(或另一种内置方法),以便我可以输入新的输入(而不是使用前一时间步的输出)?

例如,我有一千个数字的序列

[1 2 3 4 5, ..., 999, 1000]

我希望在超过1000个时间步进入RNN。

在数学上,这相当于拥有系统:

enter image description here

而不是:

enter image description here

答案

可以使用input_shape参数控制时间步数。

model = Sequential()
model.add(SimpleRNN(300, input_shape=(1,1)))

(1,1)=> timestep = 1,input_feature_size = 1

以上是关于Keras:SimpleRNN - 如何在每个时间步进入新输入(而不是使用输出)的主要内容,如果未能解决你的问题,请参考以下文章

当数据是单变量时,如何设置 keras.layers.SimpleRNN 的“input_shape”?

当 input_shape 指定为 3-d 时,Keras SimpleRNN 上的错误

可以使用帮助为 Keras SimpleRNN 正确格式化数据

将 shap 与 SimpleRNN 顺序模型一起使用时出错

Tensorflow.keras:RNN 对 Mnist 进行分类

keras中双向LSTM流程的验证