还原已保存的模型时尝试使用未初始化的值

时间:2017-10-24 16:48:20

标签: python machine-learning tensorflow

我正在尝试恢复已保存的模型并进行测试。 但是,我遇到了Attempting to use uninitialized value的问题。我以前读过一些帖子。看来我不能做全局初始化。但错误似乎很有趣。

我的代码是:

new_saver = tf.train.import_meta_graph("trained_model_epoch-1.meta")
sess=tf.Session()
new_saver.restore(sess, './trained_model_epoch-1')
print('Test')
run_test_model(sess,y_out,...... split='Test', N=Ntest)

2 个答案:

答案 0 :(得分:0)

您是否尝试过使用tf.train.Saver()

building_graph_method()
saver = tf.train.Saver()
sess = tf.Session()
saver.restore(sess, save_path)

当然,您需要使用保护程序保存模型

saver.save(sess, save_path)

答案 1 :(得分:0)

我相信你是直接访问你的张量/操作(如果它们是在同一个脚本中定义的),而不是从恢复的图形中提取它们:

sess = tf.Session()
new_saver.restore(sess, './trained_model_epoch-1')
graph = sess.graph
w1 = graph.get_tensor_by_name("w1:0")  # this tensor is initialized
w2 = graph.get_tensor_by_name("w2:0")  # this tensor is initialized too