1.定義文件的保存路徑
ckpt_dir="./ckpt_dir"
??? ifnotos.path.exists(ckpt_dir):
??? os.makedirs(ckpt_dir)
2.定義一個全局變量
global_step=tf.Variable(0,name='global_step',trainable=False)
這個全局變量是保存文件和提取文件的標識橙困,比如我現(xiàn)在要load什么時候保存的變量
3.定義saver方法
saver=tf.train.Saver()
注意任何變量定義在saver前面的都會被保存纷宇,在其后面定義的都不會被保存
4.保存變量
注意看前面定義的變量global_step,第一步給這個變量更新值(epoch)像捶,然后再保存桩砰。所以這個變量是以后load哪個文件的依據(jù)
global_step.assign(i).eval()#set and update(eval) global_step with index, i
saver.save(sess, ckpt_dir+"/model.ckpt",global_step=global_step)
5.load變量
ckpt=tf.train.get_checkpoint_state(ckpt_dir)
if ckpt and ckpt.model_checkpoint_path:
??? print(ckpt.model_checkpoint_path)
??? saver.restore(sess, ckpt.model_checkpoint_path)#restore all variables