时间:20180827-20180902
tf.train.Saver().save -- --保存模型
saver.save(sess,'ckpt/mnist.ckpt',global_step=step)
第一个参数是sess,第二个参数设定保存的路径和名字,第三个参数将训练的次数作为后缀加入到模型名字中,当前是第几步
实际上每调用一次保存操作会创建后3个数据文件并创建一个检查点(checkpoint)文件,简单理解就是权重等参数被保存到 .ckpt.data 文件中,以字典的形式;图和元数据被保存到 .ckpt.meta 文件中,可以被 tf.train.import_meta_graph 加载到当前默认的图。
- saver 的操作必须在 sess 建立后进行。
- model.ckpt 必须存在给定文件夹中,'tmp/model.ckpt' 这里至少要有一层文件夹,否则无法保存。
- 恢复模型时同保存时一样,是 ‘tmp/model.ckpt’,和那3个文件名都不一样。
tf.train.Saver().restore -- --载入模型 重载模型的参数 用来继续训练或用于测试数据
saver.restore(sess, FLAGS.train_dir)
sess 表示当前会话
FLAGS.train_dir 表示模型存储的位置,不需要提供模型的名字,它会去查看checkpoint文件,看看最新的是谁,叫做什么
tf.reset_default_graph函数用于清除默认图形堆栈并重置全局默认图形。 注意:默认图形是当前线程的一个属性。该tf.reset_default_graph函数只适用于当前线程。当一个tf.Session或者tf.InteractiveSession激活时调用这个函数会导致未定义的行为。