再使用 tf.train.Saver()
保存参数通常会生成以下文件
那么这些文件具体是什么呢?
.ckpt文件:是旧版本的输出saver.save(sess),相当于你的.ckpt-data
“checkpoint”:文件仅用于告知某些TF函数,这是最新的检查点文件。
.ckpt-meta:包含元图,即计算图的结构,没有变量的值(基本上你可以在tensorboard / graph中看到)。
.ckpt-data:包含所有变量的值,没有结构。
.ckpt-index:可能是内部需要的某种索引来正确映射前两个文件,它通常不是必需的
你可以只用 .ckpt-meta 和恢复一个模型 .ckpt-data
要在python中恢复模型,您通常会使用元数据和数据文件(但您也可以使用该.pb文件):
saver = tf.train.import_meta_graph(path_to_ckpt_meta) saver.restore(sess, path_to_ckpt_data)
该.pb文件可以保存您的整个图表(元+数据)
要在c ++中加载和使用(但不训练)图形,您通常会使用它来创建freeze_graph,它会.pb从元数据和数据创建文件。
要小心,(至少在以前的TF版本和某些人中)py提供的功能freeze_graph不能正常工作,所以你必须使用脚本版本。