我使用 Keras 训练了一个 DNN。但是,我无法保存和加载模型。
from keras.models import load_model
model.save('/home/ubuntu/pynb/savedmodel.tfl')
#model.load('/home/ubuntu/pynb/savedmodel.tfl')
但我发现不是 savedmodel.tfl 文件,而是 3 个扩展名为 .meta、.index 和 .data.00000-of-00001 的文件。因此,当我尝试使用 model.load 加载时,它说找不到该文件。
我还尝试了 SO 上建议的其他替代方案
model_json = model.to_json()
但我得到一个错误 AttributeError: 'DNN' object has no attribute 'to_json'
我正在使用 Keras 2.0.4 版。
请建议如何正确保存以及如何从 3 个文件中加载?
编辑:(我正在添加与构建模型相关的代码)
net = tflearn.input_data([None, size_of_each_vector])
net = tflearn.embedding(net, input_dim=vocab_size, output_dim=128)
net = tflearn.lstm(net, 128, dropout=0.6) # Set the dropout to 0.6
net = tflearn.fully_connected(net, no_of_unique_y_labels, activation='softmax') # relu or softmax
net = tflearn.regression(net,
optimizer='adam',
learning_rate=1e-4,
loss='categorical_crossentropy')
model = tflearn.DNN(net, tensorboard_verbose=0)
model.fit(X_train_padded_seqs, y_train,
validation_set=(X_test_padded_seqs, y_test),
n_epoch=n_epoch,
show_metric=True,
batch_size=100)