Python Tensorflow线性分类器获取单个预测值

Python Tensorflow线性分类器获取单个预测值,python,tensorflow,Python,Tensorflow,我正在尝试使用以下代码编写使用Tensorflow的线性分类器 m = LinearClassifier(model_dir = model_dir, feature_columns = wide_columns) m.fit (input_fn=training, steps=FLAGS.train_steps) results = h.evaluate(input_fn=test, steps=1) for key in sorted(results): print ("%s: %s

我正在尝试使用以下代码编写使用Tensorflow的线性分类器

m = LinearClassifier(model_dir = model_dir, feature_columns = wide_columns)
m.fit (input_fn=training, steps=FLAGS.train_steps)
results = h.evaluate(input_fn=test, steps=1)
for key in sorted(results):
    print ("%s: %s", key, results[key])
然而,我对每个测试特性的预测数组(即0和1的数组)感兴趣。 我想根据这些预测计算出更多的值(而不是准确度和精密度)

以下是我得到的输出:

accuracy: 0.931035
accuracy/baseline_label_mean: 0.931035
accuracy/threshold_0.500000_mean: 0.931035
auc: 0.5
global_step: 202
labels/actual_label_mean: 0.931035
labels/prediction_mean: 1.0
loss: 1.11758e+11
precision/positive_threshold_0.500000_mean: 0.931035
recall/positive_threshold_0.500000_mean: 1.0
以下是我预期的结果: (前五个数字是训练特征,1和0是分类器的标签)


如何从Tensorflow API中获得这样的输出?

经过研究,我找到了一个解决方案。我希望它能帮助某人:

predictions = m.predict(input_fn = lambda:input_fn(df_test), as_iterable = False)
for p in predictions:
    print(str(p), "\n")

经过研究,我找到了一个解决办法。我希望它能帮助某人:

predictions = m.predict(input_fn = lambda:input_fn(df_test), as_iterable = False)
for p in predictions:
    print(str(p), "\n")

最后,您希望为要预测的每一行功能添加一个键。检查此项:如果您仍然希望通过模型传递特征而不进行“某种”处理(尽管在您的情况下,需要处理的正是特征),我认为您可以应用与密钥相同的想法。尽管我仍然认为添加一个键(或对条目行进行散列),然后将结果与相应的键连接起来以获得功能更容易。最终,您想要的是为要预测的每一行功能添加一个键。检查此项:如果您仍然希望通过模型传递特征而不进行“某种”处理(尽管在您的情况下,需要处理的正是特征),我认为您可以应用与密钥相同的想法。尽管我仍然认为添加一个键(或散列条目行)然后将结果与相应的键连接起来以获得特性更容易。