Keras构建RNN
Tensorflow中实现的模型
目前在Tensorflow中已经实现了3种内置的RNN模型:
tf.keras.layers.SimpleRNN
:使用全连接,并将上一层的输出(而非状态)作为下一层的输入。tf.keras.layers.GRU
tf.keras.layers.LSTM
RNN层参数
单次输出/多次输出
默认情况下,RNN层只有一个输出,对应最后一个时间步,因而输出形状应该为(batch_size,units)
。
当然对应另一种结构,亦可以实现每一个时间步一个输出,这样一来输出的形状就应该为(batch_size, timesteps, units)
。只需要设置参数return_sequences=True
。
状态返回
RNN也可以返回其最终的状态,这个状态可以用来继续执行,或者用来初始化另一个RNN层,只需要设置参数return_state=True
。需要注意LSTM
会返回两个张量,而GRU
只会返回一个。
自定义化
参考
Last updated
Was this helpful?