如何规范张量流中的预测值

时间:2017-02-18 05:52:32

标签: python tensorflow

可在此处找到包含相关.csv文件的简单前馈DNN https://github.com/jhsmith12345/tensorflow/blob/normalize_prediction/tf_from_csv.py

这段代码

classification = prediction.eval(feed_dict={x: [[9,3]]})
print (classification)

正在输出

[[ -12.2412138  -17.24327469 ]]

我期待一个符合标签的预测,这些标签是1或0.类似

[[ 0   1 ]]

我相信我的预测值没有被softmax标准化,但不知道如何继续。任何帮助表示赞赏!另外,我非常乐意在这里发布完整代码,但并不想让帖子变得杂乱无章。谢谢!

1 个答案:

答案 0 :(得分:0)

让我在你的代码中清楚

prediction = neural_network_model(x)
prediction.eval(feed_dict={x: [[9,3]]})
# output is [[ -12.2412138  -17.24327469 ]]

你混淆了为什么范围不是0~1,对吧? 因为softmax不适用于预测 你使用tf.nn.softmax_cross_entropy_with_logits
据我所知,此函数在计算交叉熵之前将softmax应用于prediction 但它不会改变prediction

的值

我想你可以 做softmax然后计算交叉熵,最后直接打印prediction(这意味着不能使用tf.nn.softmax_cross_entropy_with_logits

或者,不做任何改变,但在打印prediction

之前执行softmax