我通过 https://www.tensorflow.org/get_started/mnist/pros 。 阅读"请注意,您可以使用feed_dict替换计算图中的任何张量 - 它不仅限于占位符,"我尝试使用feed_dict为变量赋值,如下所示:
print(accuracy.eval(feed_dict={x: mnist.test.images, y_: mnist.test.labels,
W[:, :]: np.zeros((784, 10))}))
然而,它给出了原始准确度0.9149(我预计在0.1左右)。 使用feed_dict初始化后,我可以为变量赋予常量值吗?
答案 0 :(得分:2)
在你的答案中,你已经将常数零传递给W,这是一个变量。
中的陈述请注意,您可以使用feed_dict替换计算图中的任何张量 - 它不仅限于占位符
您通过feed_dict传入图表的所有内容都是(通常是numpy)常量,因此您也可以得到肯定答案。
答案 1 :(得分:0)
在将值馈送到偶然用于工作的(非资源)变量it should not work actually时。我非常怀疑您正在使用资源变量。
您可以使用load
:
with tf.Session() as sess:
var1 = tf.get_variable('var1', initializer=5.) # var1 has value 5.
sess.run(tf.global_variables_initializer())
x = var1 ** 2 + 1.
sess.run(x) # -> 26 (=5**2 + 1)
var1.load(value=3., session=sess) # now var1 has value 3.
sess.run(x) # -> 10 (=3**2 + 1)