Вы можете использовать tf.keras.callbacks.ModelCheckpoint
для Keras tuner
таким же образом, как и в другой модели, для сохранения контрольных точек.
После обучения модели с помощью гиперпараметров, полученных в результате поиска в соответствии с этой моделью, вы можете определить контрольные точки модели и сохранить ее, как показано ниже:
hypermodel = tuner.hypermodel.build(best_hps)
# Retrain the model
hypermodel.fit(img_train, label_train, epochs=best_epoch, validation_split=0.2)
import os
checkpoint_path = "training_1/cp.ckpt"
checkpoint_dir = os.path.dirname(checkpoint_path)
# Create a callback that saves the model's weights
cp_callback = tf.keras.callbacks.ModelCheckpoint(filepath=checkpoint_path,
save_weights_only=True,
verbose=1)
history = hypermodel.fit(img_train, label_train, epochs=5, validation_split=0.2, callbacks=[cp_callback])
os.listdir(checkpoint_dir)
# Re-evaluate the model
loss, acc = hypermodel.evaluate(img_test, label_test, verbose=2)
print("Restored model, accuracy: {:5.2f}%".format(100 * acc))
# Loads the weights
hypermodel.load_weights(checkpoint_path)
# Re-evaluate the model
loss, acc = hypermodel.evaluate(img_test, label_test, verbose=2)
print("Restored model, accuracy: {:5.2f}%".format(100 * acc))
Пожалуйста, обратитесь по этой ссылке для получения дополнительной информации о контрольных точках сохранения и загрузки модели.