Fra*_*Fan 23 python tensorflow
我曾经saver=tf.train.Saver()保存过我训练过的模型,我得到了三种名为的文件:
并且文件名为:
与.ckpt文件的连接是什么?
我看到有人用.ckpt文件保存模型,我不知道怎么做.如何将模型保存为.pb文件?
gde*_*lab 35
.ckpt文件是旧版本的输出saver.save(sess),相当于你的.ckpt-data(见下文)
"checkpoint"文件仅用于告知某些TF函数,这是最新的检查点文件.
.ckpt-meta 包含元图,即计算图的结构,没有变量的值(基本上你可以在tensorboard/graph中看到).
.ckpt-data包含所有变量的值,没有结构.要在python中恢复模型,您通常会使用元数据和数据文件(但您也可以使用该.pb文件):
saver = tf.train.import_meta_graph(path_to_ckpt_meta)
saver.restore(sess, path_to_ckpt_data)
Run Code Online (Sandbox Code Playgroud)我不知道究竟是什么意思.ckpt-index,我想这是内部需要某种索引才能正确映射前两个文件.无论如何,它通常不是必需的,你可以只用.ckpt-meta和恢复一个模型.ckpt-data.
该.pb文件可以保存整个图形(元+数据).要在c ++中加载和使用(但不训练)图形,您通常会使用它来创建freeze_graph,它会.pb从元数据和数据创建文件.要小心,(至少在之前的TF版本和某些人中)提供的py函数freeze_graph不能正常工作,所以你必须使用脚本版本.Tensorflow也提供了一种tf.train.Saver.to_proto()方法,但我不知道它究竟做了什么.
这里有很多关于如何保存和恢复图表的问题.例如,请看这里的答案,但要注意两个引用的教程虽然真的很有用,但远非完美,很多人似乎仍然很难用c ++导入模型.
编辑:看起来你现在也可以在c ++中使用.ckpt文件,所以我猜你不一定需要.pb文件了.
| 归档时间: |
|
| 查看次数: |
24825 次 |
| 最近记录: |