gpt4 book ai didi

python - 从 TensorFlow 对象中检索数据 - 来自 correct_prediction 的 bool 值列表

转载 作者:太空宇宙 更新时间:2023-11-03 11:25:53 26 4
gpt4 key购买 nike

我正在阅读 MNIST 初学者教程 (http://www.tensorflow.org/tutorials/mnist/beginners/index.html) 并尝试从 correct_prediction 张量对象中获取准确预测值的 bool 列表。我发现这令人困惑。

根据教程 correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(y_,1))支持给我们一个 bool 值列表:

That gives us a list of booleans. To determine what fraction are correct, we cast to floating point numbers and then take the mean. For example, [True, False, True, True] would become [1,0,1,1] which would become 0.75.

但是,正在尝试 correct_prediction[0]给我们<tensorflow.python.framework.ops.Tensor at 0x111a404d0> . type(correct_prediction)给我们tensorflow.python.framework.ops.Tensor这不是列表。打电话dir()查看方法,然后查看 correct_prediction.__getitem__(0)给我们<tensorflow.python.framework.ops.Tensor at 0x111386f50> .

如何访问预测的 bool 值列表以及 y、W 和 b 的值?是否应该以某种方式从 tf.Session 访问它们?

非常感谢!

最佳答案

张量变量实际上描述了为了获得您感兴趣的值而必须执行的计算。

换句话说,用 correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(y_,1)) 定义的张量不包含 bool 值列表,它包含在 tensorflow 图中计算它的说明。为了获得实际值,您需要告诉 tensorflow 在图形中计算它。

首先,您需要一个 tf.Session 变量。获取它以在交互式 shell 中进行测试的一种简单方法是 sess = tf.InteractiveSession(),然后是变量初始化:sess.run(tf.initialize_all_variables()) .

然后,您可以调用 sess.run(tensor_variable) 来计算给定张量(或张量列表)的值。如果你的张量在他们的计算中包含占位符(他们通常这样做),你还必须提供一个提要字典。本教程中对此进行了举例说明。

除了 session.run(),您还可以从张量调用 .eval() 方法。这还需要存在默认 session 。

关于python - 从 TensorFlow 对象中检索数据 - 来自 correct_prediction 的 bool 值列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34079813/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com