了解估算器评估和输出比较

时间:2017-10-12 23:05:49

标签: tensorflow

感谢您帮助tensorflow社区!

我有一个关于理解和可视化估算器评估函数输出的问题。

我有一个DNNClassifier并且已经对数据进行了训练,可以预测10个输出范围。

训练和运行后

accuracy = classifier.evaluate(input_fn = test_input_fn)['accuracy']

我认为我的准确率为33.8%。谁知道这有多好。 (可能不好)

如何查看每个比较的输出?

当test_data运行时,我想看看估计是什么,以及实际值是多少。基本上是y和y'的并排。

类似于:[0 0 0 0 0 0 0 0 1] vs [0 0 0 0 0 0 0 0 1 0]'false'

而不仅仅是看到汇总的整体准确性。

谢谢!

1 个答案:

答案 0 :(得分:7)

因此,如果有人阅读上述问题,并了解我尝试做的事情(查看预测的输出),我有一个解决方案。

解决方案是使用.predict()方法。

这是一个很好的例子: https://www.tensorflow.org/get_started/estimator#classify_new_samples

我的代码最终看起来像:

predict_input_fn = tf.estimator.inputs.numpy_input_fn(
    x = {"x": np.array(predict_set.data)}, 
    num_epochs = 1, 
    shuffle = False)

predictions = list(classifier.predict(input_fn=predict_input_fn))

print("\n Predictions:")
print(len(predictions))

for p in predictions:
    print(int(p['classes'][0]))

在列中输出预测,我可以将其复制/粘贴到某个电子表格程序中以检查我的数据。