带有Keras的CuDNNLSTM(input_shape =(None,A))将如何工作?

时间:2018-08-26 11:24:29

标签: python tensorflow keras

我练习编写一些代码来理解Keras的char-RNN。

我想在测试时使用训练模型。 因此,我想在测试中使用“ model.load_model(path_to_trained_model)”。

但是,模型的input_dims训练时间和测试时间有所不同。(详细说明如下)

输入形状(在训练中)=(批量大小,TIME_STEPS,VOCABULARY_SIZE) 而, input_shapes(正在测试)=(1,1,VOCABULARY_SIZE)

我希望这段代码能取得良好的效果。(请参见下文!)

model = Sequential()
for i in range(LAYER_COUNT):
model.add(
    CuDNNLSTM(
        HIDDEN_LAYERS_DIM, 
        return_sequences=True if (i!=(LAYER_COUNT-1)) else False,
        input_shape=(None, VOCABULARY_SIZE),
    )
)
model.add(Dropout(DROPOUT))

但是,我对自己的代码没有信心。 所以,我有一个问题。

  • 是否可以在测试中正确使用“ model.load_model”?
  • 如果我不能使用“ model.load_model”,该怎么办? 重建模型,并使用“ model.load_weights”?

任何评论都会对我有帮助,如果有人知道我应该在哪里阅读该文档,请告诉我。

最好的问候。

0 个答案:

没有答案