1
我使用Keras訓練了DNN。但是,我無法保存和加載模型。保存DNN模型保存3個文件。如何加載?
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-的-00001的擴展。 因此,當我嘗試使用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)
model.save()保存到HDF5文件,那麼如果你保存爲.h5擴展名而不是.tfl,會發生什麼?另請注意,model.to_json()僅保存模型的體系結構。它不會像model.save()那樣保存其權重或訓練配置。這就是說,什麼類型的對象是模型?鑑於錯誤消息指出DNN對象沒有to_json(),這表明您的模型不是Keras Sequential或Functional模型之一。你能分享你的代碼,顯示正在實例化的模型嗎? – blackHoleDetector
感謝您的回覆。即使我將.h5作爲擴展名(保存3個文件),錯誤/問題也是一樣的。 是的,它是一個DNN對象。我編輯了這個問題,添加了顯示正在實例化模型的代碼 – rajkiran
我是一個新手,我期待使用tflearn與Keras一起構建模型。 如果這個假設是錯誤的,我可以請求你發佈如何使用Keras構建相同的模型? – rajkiran