我用TFRecord输入管道训练了一个网络.换句话说,没有占位符.简单的例子是:
input, truth = _get_next_batch() # TFRecord. `input` is not a tf.placeholder
net = Model(input)
net.set_loss(truth)
optimizer = tf...(net.loss)
Run Code Online (Sandbox Code Playgroud)
比方说,我获得了三个文件,ckpt-20000.meta
,ckpt-20000.data-0000-of-0001
,ckpt-20000.index
.我明白了,以后可以使用该.meta
文件导入元图并访问张量,例如:
new_saver = tf.train.import_meta_graph('ckpt-20000.meta')
new_saver.restore(sess, 'ckpt-20000')
logits = tf.get_collection("logits")[0]
Run Code Online (Sandbox Code Playgroud)
但是,元图在管道中从一开始就没有占位符.有没有办法可以使用元图和输入的查询推断?
有关信息,在查询应用程序(或脚本)中,我曾经使用占位符和恢复的模型权重定义模型(参见下文).我想知道我是否可以在没有重新定义的情况下使用元图,因为它会更加简单.
input = tf.placeholder(...)
net = Model(input)
tf.restore(sess, 'ckpt-2000')
lgt = sess.run(net.logits, feed_dict = {input:img})
Run Code Online (Sandbox Code Playgroud) tensorflow ×1