Я использую обратный вызов Keras и CheckPoint () для создания списка контрольных точек в следующем формате:
- app
--script.py
--checkpoint.01-{model-loss}.h5
--checkpoint.02-{model-loss}.h5
--checkpoint.03-{model-loss}.h5
--checkpoint.02-{model-loss}.h5
...
--checkpoint.10-{model-loss}.h5
..
--checkpoint.99-{model-loss}.h5
--checkpoint.100-{model-loss}.h5
..
Я определяю контрольные точки как:
model_path_glob = 'checkpoint.*'
checkpoints = glob.glob(model_path_glob) # gives me a list but in weird order
Вышеуказанное выполняется в цикле, поэтому checkpoints
постоянно обновляется.
Я вижу, что len(checkpoints)
корректно меняется с каждой итерацией, поэтому все они есть, но в странном порядке.
Однако, похоже, что я загружаю тот же файл на сервер, используя checkpoint[-1]
, например, первые 15 итераций будут загружать контрольную точку 1,2,3, .. но тогда он всегда будет выбирать 16-ю итерацию.
На моей локальной машине он выбирает 99-ю итерацию и не проходит мимо нее.