如何在TensorFlow的MNIST示例中获得预测的类标签?

时间:2015-12-03 07:42:21

标签: python machine-learning neural-network tensorflow data-science

我是神经网络的新手,并为初学者通过了MNIST示例。

我目前正尝试在Kaggle的另一个没有测试标签的数据集中使用此示例。

如果我在没有相应标签的测试数据集上运行模型,因此无法像MNIST示例那样计算精度,我希望能够看到预测。是否有可能以某种方式访问​​观察结果及其预测标签并将其打印出来?

2 个答案:

答案 0 :(得分:6)

我认为您只需要按照教程中的说明评估输出张量:

accuracy = tf.reduce_mean(tf.cast(correct_prediction, "float"))
print(sess.run(accuracy, feed_dict={x: mnist.test.images, y_: mnist.test.labels}))

要获得张量的输出,请参阅docs

  

在会话中启动图形后,可以通过将Tensor传递给Session.run()来计算Tensor的值。 t.eval()是调用tf.get_default_session()。run(t)的快捷方式。

如果您想获得预测而非准确性,则需要以相同的方式评估您的输出张量y

print(sess.run(y, feed_dict={x: mnist.test.images}))

答案 1 :(得分:1)

prediction=tf.argmax(y,1)
print prediction.eval(feed_dict={x: mnist.test.images}).

有关详细信息,请查看https://github.com/tensorflow/tensorflow/issues/97