Tensorflow:从测试样本中获取预测值

时间:2018-01-16 11:38:34

标签: tensorflow perceptron

我试图在训练MLP后获得预测值,并且我执行以下操作

sess.run(tf.argmax(labels_test, 1), feed_dict={X: data_test, dropout_keep_prob: 1.})

不幸的是,上面一行会产生与此行相同的结果

sess.run(tf.argmax(labels_test, 1))

我的代码出了问题。我在这里错过了什么?

2 个答案:

答案 0 :(得分:0)

labels_test存在疑问:它看起来像您的测试数据的标签,您的模型预测标签。如果是这种情况,则它不是data_test的函数,并且没有理由它应该是任何不同的结果。简而言之,可能的问题是您实际上并未在模型上调用sess.run(),而只是在测试数据的某些固定标签上调用。

那就是说,我猜是因为没有足够的细节来实际检查和解决问题。如果需要更全面的答案,请提供minimal working example

答案 1 :(得分:0)

我刚刚找到了解决方案。一种方法

accuracy1, prediction1 = sess.run([accuracy, pred], feed_dict={X: data_test, y: labels_test, dropout_keep_prob: 1.})

或者只是为了获得预测值

predicted_values = sess.run(pred, feed_dict={X: data_test, y: labels_test, dropout_keep_prob: 1.})