###実現したいこと
プログラム実行中に、色々な場所からsaver.restore()を呼びたいです。
しかし、saver.restore()を2回目呼ぶ時に下記エラーメッセージが出て失敗してしまいます。
###エラーメッセージ
NotFoundError (see above for traceback): Key Variable_1 not found in checkpoint [[Node: save_1/RestoreV2_1 = RestoreV2[dtypes=[DT_FLOAT], _device="/job:localhost/replica:0/task:0/cpu:0"](_arg_save_1/Const_0_0, save_1/RestoreV2_1/tensor_names, save_1/RestoreV2_1/shape_and_slices)]]
###該当のソースコード
※事前にmgr.save_model()によりモデルを保存してあります。
その状態で下記プログラムを実行するとエラーが出ます。
Python
1import tensorflow as tf 2 3class Mgr: 4 def save_model(self): 5 x = tf.Variable(2.) 6 saver = tf.train.Saver() 7 8 with tf.Session() as sess: 9 sess.run(tf.global_variables_initializer()) 10 saver.save(sess, 'models/model.ckpt') 11 12 def restore_model(self): 13 x = tf.Variable(0.) 14 saver = tf.train.Saver() 15 16 with tf.Session() as sess: 17 saver.restore(sess, 'models/model.ckpt') 18 19mgr = Mgr() 20mgr.restore_model() 21mgr.restore_model() # この行が無ければエラーは出ない
あなたの回答
tips
プレビュー