как загрузить сохраненную контрольную точку в Tf SLIM

Я использую TF-slim для обучения собственного набора данных. Согласно руководству, в файле finetune_inception_v1_on_flowers.sh я установил путь к контрольной точке как ./inception_resnet_v2.ckpt и получил множество новых контрольных точек в другой папке с файлами, а последние файлы - это model.ckpt-332331.data-00000-of -00001, model.ckpt-332331.index, model.ckpt-332331.meta.

теперь я хочу изменить скорость обучения, чтобы настроить последнюю контрольную точку, но я не знаю, как загрузить их в finetune_inception_v1_on_flowers.sh, потому что здесь 3 файла вместо одного.

firstly, I tried to copy the  model.ckpt-332331.data-00000-of-00001 and set the  checkpoint path as ./model.ckpt-332331.data-00000-of-00001 ,but there is the error:

NotFoundError (трассировку см. Выше): ключ InceptionResnetV2 / AuxLogits / Conv2d_1b_1x1 / weights / Adam не найден в контрольной точке [[Node: save / RestoreV2_4 = RestoreV2 [dtypes = [DT_FLOAT], _device = "/ job: localhost / replica: 0 задача: 0 / cpu: 0 "] (_ recv_save / Const_0, save / RestoreV2_4 / tensor_names, save / RestoreV2_4 / shape_and_slices)]]

во-вторых, я удалил файлы из каталога журналов, тогда ошибка:

DataLossError (трассировку см. Выше): невозможно открыть файл таблицы /media/re/7A308F7E308F405D/xsj/checkpoints/model.ckpt-332331.data-00000-of-00001: Потеря данных: нестабильно (неверное магическое число): возможно, ваш файл находится в другом формате, и вам нужно использовать другой оператор восстановления? [[Node: save / RestoreV2_5 = RestoreV2 [dtypes = [DT_FLOAT], _device = "/ job: localhost / replica: 0 / task: 0 / cpu: 0"] (_ recv_save / Const_0, save / RestoreV2_5 / tenor_names, save / RestoreV2_5 / shape_and_slices)]]

Может ли кто-нибудь помочь мне решить проблему? Большое спасибо!


person xsj    schedule 05.03.2018    source источник


Ответы (2)


Как упоминалось в https://www.tensorflow.org/guide/saved_model

Нет физического файла с именем /tmp/model.ckpt. Это префикс имен файлов, созданных для контрольной точки. Пользователи взаимодействуют только с префиксом, а не с физическими файлами контрольных точек.

Поэтому вам просто нужно указать путь к контрольной точке как ./model.ckpt-332331

person wangyu    schedule 04.01.2019

Когда вы выполните точную настройку, просто укажите каталог ($ CHECKPOINT_PATH), а не какой-либо конкретный файл, он автоматически получит путь.

person Ashiq Imran    schedule 02.07.2018