Tensorflow中的Eval变量

时间:2017-09-18 12:38:50

标签: tensorflow eval

this post开始,我知道Tensor.eval()tf.get_default_session().run(t)相等,但当我评估张量时,我遇到了错误。如果省略标记为1的行,则下面的代码会发出错误,为什么?然后我尝试调用W.initializer的{​​{1}}方法来替换eval(),但run()没有W.initializer方法和eval()(作为操作)有一个,为什么?

tf.constant

1 个答案:

答案 0 :(得分:2)

1。如果行

,下面的代码会发出错误

sess.run(W.initializer)

省略

答案:正如错误所说

FailedPreconditionError: Attempting to use uninitialized value

您正在尝试评估未初始化的变量。因此,您需要初始化。有比打电话更好的方法 sess.run(W.initializer)无论如何。

2. 然后我尝试调用W.initializer's eval()方法来替换run(),但W.initializer没有eval()方法而{{1} (作为一个操作)有一个,为什么?

答案:tf.constant是操作,张量但不是初始化器的函数。 eval()没有initializer函数。

是正确的

你应该做什么?

您应该使用eval()初始化变量。

tf.global_variables_initializer()