2017-02-23 8 views
0

Я использовал диспетчер tensorflow (https://www.tensorflow.org/programmers_guide/supervisor) для загрузки модели из сохраненных контрольно-пропускных пунктов для обучения и работы в сети. Но я заметил, что файлы контрольных точек обновляются даже при запуске/оценке модели (временные метки файлов graph.pbtxt, model.ckpt.data обновляются и создаются новые events.out).Контролер Tensorflow для тренировочных и оценочных операций?

Это заставляет меня задаться вопросом, использует ли диспетчер для запуска/оценки модели сбрасывает/изменяет состояние обучения? Целесообразно ли использовать супервизор для чего-либо, кроме обучения?

Поезд -

sv = tf.train.Supervisor(logdir=mylogdir) 
with sv.managed_session() as sess: 
    if not sv.should_stop(): 
     train_step.run(feed_dict={x: xtrain, y_: ytrain, keep_prob: 0.5}, session= sess) 

Run/Оценить только. Мы не хотим, чтобы ниже, чтобы изменить состояние обученной модели

sv = tf.train.Supervisor(logdir=mylogdir)  
with sv.managed_session() as sess: 
    for yconv in sess.run(y_conv, feed_dict={x: xtest, keep_prob: 1.0}): 
     #use yconv to predict, evaluate etc. 

ответ

1

Ваша модель, как правило, сохраняется на «model.ckpt-NUM» а имена файлов. Пока оценка не обновляет этот файл (и он не должен), тогда вы в безопасности.

Если вы беспокоитесь о перезаписывании протоколов/резюме. Вы должны быть осторожны при выборе имен резюме.

E.g. для оценки, выберите краткое имя 'eval/' +metric_name, а для обучения 'train/' +metric_name, например, см. here и here.

EDIT: Вы также можете выбрать другой каталог («logdir») для хранения результатов оценки, как в АФИ показано here

+0

Спасибо. Код оценки изменяет временную метку файла model.ckpt. Почему это? – Achilles

+0

Посмотреть последнее редактирование, не помогает ли это? – yuval

+0

Спасибо, да. Я беспокоюсь о данных обучения (я предполагаю, что они хранятся в файлах модели *). Оценка - 'yconv in sess.run (y_conv, feed_dict = {x: xtest, keep_prob: 1.0}):' - кажется, обновляет эти файлы модели * (по крайней мере, их временные метки), мне интересно, почему и если изменения влияют на обучение данные, хранящиеся в файлах. В идеале, он должен просто обращаться к ним в режиме readonly. Спасибо за предложение об использовании другого каталога, я мог бы попробовать это и с некоторым промежуточным процессом, который копирует обученную модель для оценки (но я надеюсь, что она работает без нее). – Achilles

Смежные вопросы