Tensorflow MNIST - 特定测试图像的准确性

Tensorflow MNIST - accuracy of particular test image

这是我用于预测特定 mnist 图像的代码,我怎样才能获得预测完成的准确性?

_pre 是对数

    _x  = loaded_graph.get_tensor_by_name('x:0')
    _y  = loaded_graph.get_tensor_by_name('y:0')
    _pre  = loaded_graph.get_tensor_by_name('prediction:0')
    p = tf.argmax(_pre, 1)
    i = imageprepare('./image.png')
    print(p.eval(feed_dict={_x: [i]}))

我假设 "accuracy" 表示 "the probability that was assigned to the selected label"。从您的代码中不清楚 _pre 是如何创建的。如果它由概率向量组成(即 softmax 已经应用),那么您可以获得如下精度:

acc=tf.reduce_max(_pre, 1)
print(acc.eval(feed_dict={_x: [i]}))

原因是p是最大概率的位置,而准确度(在本例中为acc)是最大概率本身。

如果 _pre 由 logits 向量组成(也就是说,如果在 _pre 上应用 softmax 将给出概率向量),

那么这将完成工作:

acc=tf.reduce_max(tf.nn.softmax(_pre), 1)
print(acc.eval(feed_dict={_x: [i]}))