是否可以重新命名tensorflow中给定模型的变量范围?在TensorFlow中重命名已保存模型的变量范围
例如,我创建了一个逻辑回归模型MNIST数字,根据教程:
with tf.variable_scope('my-first-scope'):
NUM_IMAGE_PIXELS = 784
NUM_CLASS_BINS = 10
x = tf.placeholder(tf.float32, shape=[None, NUM_IMAGE_PIXELS])
y_ = tf.placeholder(tf.float32, shape=[None, NUM_CLASS_BINS])
W = tf.Variable(tf.zeros([NUM_IMAGE_PIXELS,NUM_CLASS_BINS]))
b = tf.Variable(tf.zeros([NUM_CLASS_BINS]))
y = tf.nn.softmax(tf.matmul(x,W) + b)
cross_entropy = tf.reduce_mean(-tf.reduce_sum(y_ * tf.log(y), reduction_indices=[1]))
saver = tf.train.Saver([W, b])
... # some training happens
saver.save(sess, 'my-model')
现在我要重新加载保存的模型在'my-first-scope'
变量范围,然后再保存一切新文件并在'my-second-scope'
的新变量范围内。
这要求您已经使用先前的作用域名称构造了图形和所有内容,因为要恢复您需要定义该图形的检查点。 如果您只有检查点文件,您可以替换其中的范围名称吗? – npit