【问题标题】:Saving model in tensorflow在张量流中保存模型
【发布时间】:2016-08-14 04:19:20
【问题描述】:

Tensorflow 允许我们使用方法 tf.train.write_graph 保存/加载模型的结构,以便我们可以在将来恢复它以继续我们的训练课程。但是,我想知道这是否有必要,因为我可以创建一个模块,例如 GraphDefinition.py,并使用这个模块重新创建模型。 那么,哪种方法是保存模型结构的更好方法,或者是否有任何经验法则建议我在保存模型时应该使用哪种方法?

【问题讨论】:

  • 您能提供一些代码示例吗?或者进一步的信息?我不明白为什么为了节省 TensorFlow 模型的权重而创建模块很重要。您始终可以保存整个图表(我猜看大小有一些开销)或指定应该保存哪些权重。但是,尽管使用了内存,但差别不大。

标签: python python-2.7 tensorflow


【解决方案1】:

首先,您必须了解,张量流图中没有当前权重(直到您在其中手动保存它们),如果您从 graph.pb 加载模型结构,您将从一开始就开始训练。但是如果你想继续训练或使用你训练过的模型,你必须保存检查点(使用 tf Saver)和其中的变量值,而不仅仅是结构。 看看这个胎面:Tensorflow: How to restore a previously saved model (python)

【讨论】:

  • 是的。我知道我必须使用 tf.Saver 来减轻重量。我无法得到的是是否有必要将模型结构保存到 graph.pb 并从该文件重新加载图表,还是我应该自己重新创建图表?
  • 重要操作的名称应该相同(不是 python\c++ 名称,而是 tf,即:a = tf.Variable(value, name='define-tf-name-here'))以及图形和检查点文件中的变量以正确加载值,但如何得到这个 - 完全取决于你。保存和恢复您的图形定义文件或使用代码重新创建它都可以。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-10-26
  • 1970-01-01
  • 2018-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多