0
我修改tensorflow convnet tutorial 训练只有两个类。由TensorFlow困惑nn.in_top_k输出
然后我评价使用cifar10_eval.py
我试图理解的tf.nn.in_top_k
L128 top_k_op = tf.nn.in_top_k输出(logits,标签,1)
其上打印出来的模型如:
in_top_k输出::: [array([ True, False, True, False, True, True, True, True, True, True], dtype=bool)]
而真标签(两个类,10个图像)是::: [0 1 1 1 1 1 1 1 1 0]
和logits是:::
[[ 1.45472026 -1.46666598]
[-1.0181191 1.03441548]
[-1.02658665 1.04306769]
[-1.19205511 1.21065331]
[-1.22167087 1.24064851]
[-0.89583808 0.91119087]
[-0.17517655 0.18206072]
[-0.09379113 0.09957675]
[-1.05578279 1.07254183]
[ 0.73048806 -0.73411369] ]
问题:为什么在第二和第四输出nn.in_top_k()
是False
代替True
?
问题寻求帮助调试(“为什么不是这样代码工作?“)必须包含所需的行为,特定的问题或错误以及在问题本身中重现问题所需的最短代码。没有明确问题陈述的问题对其他读者无益。请参阅:[如何创建最小,完整和可验证示例](http://stackoverflow.com/help/mcve)。 – Marcs