我一直在使用Tensorflow中的DNNClassifier
模型,我已经得到了模型来训练,评估和输出结果。
以下是我用来输出预测的代码:
predictions = classifier.predict(input_fn=predict_input_fn)
i = 0
for j, p in enumerate(predictions):
print("Prediction %s: %s" % (j + 1, p["probabilities"]))
i = i + 1
if i > 100:
break
i
用于限制测试结果,因为输出的结果大约有16,000个,我不需要为了I&#的目的而看到所有这些结果39;我现在正试图做。
我得到的输出如下:
Prediction 1: [ 5.11678644e-02 9.48832154e-01 3.84762299e-37]
Prediction 2: [ 0.0352843 0.96471566 0. ]
Prediction 3: [ 1.04001068e-04 9.99895930e-01 0.00000000e+00]
Prediction 4: [ 0.0323724 0.96762753 0. ]
我知道这些是某种形式的概率,但我找不到每种方法的文件。每行有三个,但只有两个类别,所以我猜其中一个是确定性的衡量标准?
我意识到这不是一个严格的编程问题,而是更多关于输出和文档。然而,在询问之前,我确实查看了其他StackExchange站点和TensorFlow文档本身,试图找到一个更好的地方询问/答案。 AI Stack Exchange网站仍处于测试阶段,似乎与TensorFlow相关的活动很少(这是可以理解的,因为许多TensorFlow问题都是编程问题),而且在谈到TF问题之前,我在StackOverflow上取得了一定的成功。
答案 0 :(得分:3)
看起来您在三个类别(标签)之间进行分类。因此,您在预测中看到的是您对每个可能类别(标签)的网络加权猜测。例如,在您的第一次预测中,网络结果可以解释为:数据属于第一类(标签)的概率约为5%,数据属于第二类(标签)的概率为~95%,和〜0%的机会属于第三类(标签)。