Tensorflow"尝试使用未初始化的值......"恢复时出错

时间:2017-09-06 15:55:48

标签: python tensorflow initialization

我制作了RNN模型。 训练结束后,我将其保存在tf.Session()中。

#main.py
...(training)
saver = tf.train.Saver()
save_path = saver.save(sess, "Save data/RNN-model.ckpt")

并且在' run.py'我尝试恢复保存的数据。

#run.py
...
with tf.Session() as sess:
    saver = tf.train.Saver()
    ckpt = tf.train.get_checkpoint_state('Save data/')
    if ckpt and tf.train.checkpoint_exists(ckpt.model_checkpoint_path):
        saver.restore(sess, ckpt.model_checkpoint_path)
    ...(training or testing again)

运行时,错误消息提升。

FailedPreconditionError : Attempting to use uninitialized value accuracy/total

但是,当我删除' run.py'中accuracy的相关代码时正如错误消息所说的那样,我觉得它似乎运作良好。

我错过了什么吗? 任何评论或答案都会对我有帮助。

感谢。

1 个答案:

答案 0 :(得分:1)

accuracy操作包含一些不属于图形的局部变量,因此应手动初始化。 在sess.run(tf.local_variables_initializer())之后添加restore将初始化局部变量。