保存 DNN 模型保存 3 个文件。如何加载?
Saving DNN model saves 3 files. How to load?
我使用 Keras 训练了一个 DNN。但是,我无法保存和加载模型。
from keras.models import load_model
model.save('/home/ubuntu/pynb/savedmodel.tfl')
#model.load('/home/ubuntu/pynb/savedmodel.tfl')
但我发现我找到了 3 个扩展名为 .meta、.index 和 .data.00000-of-00001 的文件,而不是 savedmodel.tfl 文件。
所以,当我尝试使用 model.load 加载时,它说找不到文件。
我还尝试了 SO
上建议的其他替代方案
model_json = model.to_json()
但是我得到一个错误
AttributeError: 'DNN' 对象没有属性 '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)
您使用的模型是 Tensorflow 模型。您的模型必须是 Keras 模型才能利用 Keras 保存功能。
一旦您将模型转换为 Keras 模型(如果您选择),this video 将检查 Keras 提供的不同保存和加载机制。
此外,请注意,model.to_json()
仅保存模型的架构。它不会像 model.save()
那样保存其权重或训练配置。
我使用 Keras 训练了一个 DNN。但是,我无法保存和加载模型。
from keras.models import load_model
model.save('/home/ubuntu/pynb/savedmodel.tfl')
#model.load('/home/ubuntu/pynb/savedmodel.tfl')
但我发现我找到了 3 个扩展名为 .meta、.index 和 .data.00000-of-00001 的文件,而不是 savedmodel.tfl 文件。 所以,当我尝试使用 model.load 加载时,它说找不到文件。
我还尝试了 SO
上建议的其他替代方案model_json = model.to_json()
但是我得到一个错误 AttributeError: 'DNN' 对象没有属性 '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)
您使用的模型是 Tensorflow 模型。您的模型必须是 Keras 模型才能利用 Keras 保存功能。
一旦您将模型转换为 Keras 模型(如果您选择),this video 将检查 Keras 提供的不同保存和加载机制。
此外,请注意,model.to_json()
仅保存模型的架构。它不会像 model.save()
那样保存其权重或训练配置。