Python: как выбрать последний созданный файл (загрузка контрольных точек Keras в GCS) - PullRequest
0 голосов
/ 04 мая 2018

Я использую обратный вызов 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-ю итерацию и не проходит мимо нее.

1 Ответ

0 голосов
/ 04 мая 2018

checkpoints = sorted(glob.glob(model_path_glob), key=os.path.getmtime) отсортирует по последнему изменению времени. Я еще попробую на облачной ВМ

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...