tf.train.Saver :用于保存和恢复变量
checkpoint文件:是专门格式的二进制文件,将变量name 映射到 tensor value。
Saver 只是创建一个对象,还没有保存。
tf.train.Saver.__init__(
var_list=None, # 指定了将要保存和恢复的变量,可以传dict 或者list
reshape=False, # 如果为True,允许从保存文件中恢复一个不同shape 的变量
shared=False, # 如果为True,通知每个设备上共享的checkpoint.
max_to_keep=5, # 表示最大保留几个checkpiont文件
keep_checkpoint_every_n_hour=10000.0,
name=None,
restore_sequentially=False,
saver_def=None,
builder=None)
tf.train.Saver.save函数:用来保存变量
tf.train.Saver.save(
sess, # 保存变量的Session
save_path, # checkpoint 文件的路径。
global_step=None, # 如果提供了global step number,将会追加到 save_path 后面去创建checkpoint 的文件名。
latest_filename=None,
meta_graph_suffix='meta',
write_meta_graph=True)
tf.train.Saver.restore(sess, save_path):恢复之前保存的变量
这个方法运行构造器为恢复变量所添加的操作。它需要启动图的Session。恢复的变量不需要经过初始化,恢复作为初始化的一种方法。
save_path 参数是之前调用save() 的返回值,或调用 latest_checkpoint() 的返回值。
参数:
sess: 用于恢复参数的Session
save_path: 参数之前保存的路径