Tensorflow:.ckpt文件与.ckpt.meta和.ckpt.index以及.pb文件之间是什么关系

Tensorflow:.ckpt文件与.ckpt.meta和.ckpt.index以及.pb文件之间是什么关系,第1张

Tensorflow:.ckpt文件与.ckpt.meta和.ckpt.index以及.pb文件之间是什么关系
  • .ckpt文件是的旧版本输出

    saver.save(sess)
    ,与您的输出等效
    .ckpt-data
    (请参见下文)

  • “ checkpoint”文件仅在此处告诉一些TF函数,这是最新的checkpoint文件。

  • .ckpt-meta
    包含元图,即您的计算图的结构,没有变量的值(基本上可以在张量板/图中看到)。

  • .ckpt-data
    包含所有变量的值,没有结构。要在python中还原模型,通常会使用meta和data文件(但也可以使用该
    .pb
    文件):

    saver = tf.train.import_meta_graph(path_to_ckpt_meta)

    saver.restore(sess, path_to_ckpt_data)

  • 我不完全知道

    .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文件。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5631081.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存