我想问一下在python和张量流中保存和加载文件的语法是不同的还是相同的? 我怎样才能重新加载这样的结果 np.save("结果/&#34 + FLAGS.result_file,W)
答案 0 :(得分:1)
如果要加载numpy文件,可以使用np.load()
将结果恢复为numpy数组。
x = np.load("Result/"+FLAGS.result_file)
如果要保存张量流图,则需要在创建张量后创建保护对象。
x = tf.Variable(..., name="x_saved")
init_op = tf.global_variables_initializer()
...
saver = tf.train.Saver()
然后使用saver对象将图形保存到文件。
with tf.Session() as sess:
sess.run(init_op)
# Do some work with the model.
..
# Save the variables to disk.
save_path = saver.save(sess, "Result/"+FLAGS.result_file)
如果要加载模型,则需要创建相同大小的张量,并创建一个保护对象。如果您从文件加载所有张量,则无需调用初始值设定项。
saver = tf.train.Saver()
并使用该保护程序恢复会话。
with tf.Session() as sess:
# Restore variables from disk.
saver.restore(sess, "Result/"+FLAGS.result_file)
这将使用您之前保存的值加载张量。如果只想保存和加载特定张量,可以使用这些张量的名称初始化保护对象。
x_loaded = tf.Variable(..., name="x")
saver = tf.train.Saver({"x_loaded": x})
请记住,如果您加载了一些张量而不是整个图形,则需要初始化任何其他张量。