Jak mohu použít tf.keras.zpětná volání.ModelCheckpoint v Keras Tuner?

0

Otázka

Takže chci použít tf.keras.zpětná volání.ModelCheckpoint v Keras Tuner, ale to, jak si zvolit cestu, kam chcete uložit kontrolní body, nebude vám umožní uložit jej jako soubor s určitým názvem, název přiřazený k soudu a provedení kontroly, pouze spojené do epochy.

To je, pokud jsem jednoduše řečeno tento callback v Keras Tuner, v okamžiku, kdy kontrolní body uložit stane, na konci, já nebudu vědět, jak spojit body uložené na soud a soud popravu, jen aby epochy.

1

Nejlepší odpověď

0

Můžete použít tf.keras.callbacks.ModelCheckpoint pro Keras tuner stejným způsobem, jak je používán v jiných model uložit kontrolní body.

Po tréninku model s hyperparameters získaných z vyhledávání jak na tomto modelu, můžete definovat model kontrolní body a uložit je jako níže:

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))

Viz tento odkaz pro více inofrmation na uložit a načíst model kontrolní body.

2021-12-06 16:04:19

V jiných jazycích

Tato stránka je v jiných jazycích

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................