我在神经网络的张量流中创建了模型。 我保存了模型并将其恢复到另一个python文件中。
代码如下:
def restoreModel():
prediction = neuralNetworkModel(x)
tf_p = tensorFlow.nn.softmax(prediction)
temp = np.array([2,1,541,161124,3,3])
temp = np.vstack(temp)
with tensorFlow.Session() as sess:
new_saver = tensorFlow.train.import_meta_graph('model.ckpt.meta')
new_saver.restore(sess, tensorFlow.train.latest_checkpoint('./'))
all_vars = tensorFlow.trainable_variables()
tensorFlow.initialize_all_variables().run()
sess.run(tensorFlow.initialize_all_variables())
predict = sess.run([tf_p], feed_dict={
tensorFlow.transpose(x): temp,
y : ***
})
当" temp"在我想要预测的变量!
X是矢量形状,我转换"它匹配形状。
我不明白我需要在feed_dict
变量中写什么。
答案 0 :(得分:2)
我回答的很晚,但也许它仍然有用。 feed_dict
用于为张量流提供您希望占位符占用的值。 fetches
(run
的第一个参数)是您想要的结果列表。 feed_dict
的键和fetches
的元素必须是张量的名称(我没试过)或者你可以得到的变量
graph = tf.get_default_graph()
var = graph.get_operation_by_name('name_of_operation').outputs[0]
也许graph.get_tensor_by_name('name_of_operation:0')
也有效,我没试过。
默认情况下,占位符的名称只是“占位符”,“占位符_1”等,遵循图表定义中的创建顺序。