TensorFlow变量未正确还原

时间:2018-06-21 12:30:44

标签: python tensorflow

我是tensorflow的新手,正在尝试学习保存和恢复我的模型。

我这样保存它:

with tf.Session() as sess:
    sess.run(tf.initialize_all_variables())

    for epoch in range(hm_epochs):
         #Training Model...

    accuracy = tf.reduce_mean(tf.cast(correct, 'float'))
    print(sess.run('b1:0'))
    saver = tf.train.Saver()
    save_path = saver.save(sess, r"C:\...\Desktop\model.ckpt")

并像这样恢复此模型:

sess = tf.Session()
new_saver = tf.train.import_meta_graph(r'C:\...\Desktop\model.ckpt.meta')
new_saver.restore(sess,tf.train.latest_checkpoint("C:/.../Desktop"))
print(sess.run('b1:0'))

但是每个程序中b1中的值都不同。有人可以告诉我我在做什么错吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

因此,我能够“解决”该问题。并没有真正解决它,但我刚刚意识到该模型实际上可以按照预期的方式工作。权重值发生变化的事实与在张量上使用Session.run()有关。

我仍然无法解释为什么权重值会发生变化。但是,随着模型的工作,我想实际上并没有要解决的问题。