我需要保存并恢复图表以保持上一个检查点的训练,但不知何故不起作用。
我使用saver = tf.train.Saver()
来保存模型。和
with tf.Session(config=tf.ConfigProto(log_device_placement=True)) as sess:
# Initializing saver
sess.run(tf.global_variables_initializer())
save_path = saver.save(sess,model_path+"/%s.ckpt"%model_name)
if flag == "initial_train":
training_loop(num_epochs)
flag = None
else:
new_saver = tf.train.import_meta_graph(model_path+"/%s.ckpt.meta"%model_name)
new_saver.restore(sess, save_path)
print("Model loaded")
training_loop(num_epochs)
我真的不知道为什么它没有导入权重
答案 0 :(得分:1)
在以后的运行中你是
sess.run(tf.global_variables_initializer()
saver.save(sess,model_path+"/%s.ckpt"%model_name)
)因此,您只需加载初始化并保存在第3行和第4行的内容。
另外,我不知道你如何传递信息,但是training_loop没有得到saver
的引用,你没有在训练循环后保存模型,所以看来你实际上并没有保存你的模特儿。