本文介绍了从张量流模型检查点中提取权重值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在 tensorflow 中训练一个模型,我正在为我的模型做检查点.我在Checkpoints目录下,我有四个文件,

I am training a model in tensorflow and I am doing checkpoints for my model. I the Checkpoints directory, I have four files namely,

  • 检查点
  • model.cpkt-0.data-00000-of-00001
  • model.cpkt-0.index
  • model.cpkt-0.meta

现在我想提取图中每一层的权重值,我该怎么做?

Now I want to extract the weights values for each layer in my graph, how can I do that?

我试过了:

import tensorflow as tf
sess = tf.InteractiveSession()

saver = tf.train.import_meta_graph('model.cpkt-0.meta')
w = saver.restore(sess, 'model.cpkt-0.data-00000-of-00001')

但我收到以下错误:

Unable to open table file ./model.cpkt-0.data-00000-of-00001: Data loss: not an sstable (bad magic number): perhaps your file is in a different file format and you need to use a different restore operator?

推荐答案

你恢复的方式不对

saver.restore(sess, 'model.cpkt-0')
# get the graph
g = tf.get_default_graph()
w1 = g.get_tensor_by_name('some_variable_name as per your definition in the model')

这篇关于从张量流模型检查点中提取权重值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

07-12 01:56