Я столкнулся с проблемой восстановления веса модели тензорного потока.
Итак, во время обучения модели я сохранял контрольную точку модели после каждых 500 итераций,
if j%500==0:
with open('iterres.txt','a') as f:
f.write(str({'epoch': i, 'test_accuracy': evaluate_(model,batch_size=100),'iteration':j}) + '\n')
os.system('mkdir ' + str(i)+'epoch'+str(j))
saver.save(sess, '/home/g_cloud/exe_paul/'+str(i)+'epoch'+str(j)+'/'+str(i))
Теперь у меня была папка контрольных точек со всеми весами и метаданными:
Я загрузил веса и создал новую папку с именем «new_backup», где есть все веса и метаданные:
Когда я пытаюсь загрузить эти файлы из этой папки:
import tensorflow as tf
labels_dict={
1: 'Yes',
0: 'No'
}
with tf.Session() as sess:
saver = tf.train.import_meta_graph('../new_backup/1.meta')
restore = saver.restore(sess,tf.train.latest_checkpoint('../new_backup/'))
graph=tf.get_default_graph()
query= graph.get_tensor_by_name("input:0")
result=graph.get_tensor_by_name("netout:0")
Затем я получаю эту ошибку:
NotFoundError: /home/g_cloud/exe_paul/1epoch1000; No such file or directory
Это была моя облачная учетная запись, а 1epoch1000 — старая папка, в которой сохранялся весь вес во время тренировки. Моя проблема в том, что если я иду в облако и использую тот же скрипт для восстановления модели, когда есть папка 1epoch1000, тогда скрипт работает, но в противном случае он выдает эту ошибку.
Как я могу изменить мета на путь перенаправления или как я могу восстановить модель в любом месте?