Класс CheckpointManager
Класс CheckpointManager применяется для управления
контрольными точками во время обучения модели. Он
следит за тем, чтобы сохранялись только последние
N снимков, автоматически удаляет устаревшие
файлы и предоставляет доступ к последней контрольной
точке. Первым параметром передается объект
tf.train.Checkpoint, который описывает
сохраняемые переменные. Вторым параметром указывается
директория для сохранения. Третьим параметром задается
максимальное количество хранимых контрольных точек.
Синтаксис
tf.train.CheckpointManager(checkpoint, directory, max_to_keep)
Пример
Давайте создадим контрольную точку для простой модели и настроим менеджер для хранения последних снимков:
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(2, input_shape=(3,))
])
checkpoint = tf.train.Checkpoint(model=model)
manager = tf.train.CheckpointManager(
checkpoint, directory='./ckpt', max_to_keep=3
)
path = manager.save()
print(path)
Результат выполнения кода:
"./ckpt/ckpt-1"
Пример
Давайте сохраним несколько контрольных точек и посмотрим список доступных снимков:
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(2, input_shape=(3,))
])
checkpoint = tf.train.Checkpoint(model=model)
manager = tf.train.CheckpointManager(
checkpoint, directory='./ckpt', max_to_keep=3
)
manager.save()
manager.save()
manager.save()
print(manager.checkpoints)
Результат выполнения кода:
['./ckpt/ckpt-1', './ckpt/ckpt-2', './ckpt/ckpt-3']
Пример
Давайте получим путь к последней сохраненной
контрольной точке с помощью атрибута
latest_checkpoint:
import tensorflow as tf
model = tf.keras.Sequential([
tf.keras.layers.Dense(2, input_shape=(3,))
])
checkpoint = tf.train.Checkpoint(model=model)
manager = tf.train.CheckpointManager(
checkpoint, directory='./ckpt', max_to_keep=3
)
manager.save()
manager.save()
print(manager.latest_checkpoint)
Результат выполнения кода:
"./ckpt/ckpt-2"
Смотрите также
-
класс
CheckpointManager,
который управляет сохранением контрольных точек -
метод
save,
который сохраняет новую контрольную точку -
метод
restore_or_initialize,
который восстанавливает или инициализирует модель -
атрибут
latest_checkpoint,
который хранит путь к последней контрольной точке