我看过很多关于保存训练好的神经网络的问题,包括 Tensorflow: how to save/restore a model?和 https://cv-tricks.com/tensorflow-tutorial/save-restore-tensorflow-models-quick-complete-tutorial/但是他们都没有在不明确保存特定变量的情况下保存模型,就像我的情况一样。这是我的情况:
# 在 session “sesh”中
节电器 = tf.train.Saver()
saver.save(sesh,os.getcwd(),latest_filename= 'RNN_plasma.ckpt')
现在,我退出 session 并想要恢复我刚刚保存的模型。我怎样才能做到这一点?尝试时:
import tensorflow as tf
with tf.Session() as session1:
#First let's load meta graph and restore weights
saver = tf.train.import_meta_graph('RNN_plasma.ckpt')#error-line
saver.restore(session1,tf.train.latest_checkpoint('./'))
,tf.train.import_meta_graph() 调用返回:
raise IOError("Cannot parse file %s: %s." % (filename, str(e)))
IOError: Cannot parse file RNN_plasma.ckpt: 1:1 : Message type "tensorflow.MetaGraphDef" has no field named "model_checkpoint_path"..
任何人都可以就这里发生的事情以及如何解决它给出任何见解吗?
(我的 TensorFlow 版本没有附带 tf.python.saved_model.simple_save()。(我有 git_version 1.5.0))
最佳答案
保存:
saver = tf.train.Saver()
saver.save(sess,"/tmp/network")
恢复:
sess = tf.Session()
saver = tf.train.import_meta_graph('/tmp/network.meta')
saver.restore(sess,tf.train.latest_checkpoint('/tmp'))
graph = tf.get_default_graph()
关于python - 在不显式保存 session 变量的情况下恢复 TensorFlow 模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51834353/