神经网络高置信度预测不准确

时间:2017-12-28 10:15:49

标签: tensorflow machine-learning neural-network deep-learning

我在分类任务上有一个训练有素的神经网络,它正在学习,虽然它的准确性不高。我试图弄清楚哪些测试示例没有信心,这样我就可以更深入地了解正在发生的事情。

为了做到这一点,我决定在Tensorflow中使用标准的softmax概率。为此,我调用了tf.nn.softmax(logits),并使用了此处提供的概率。我注意到很多次概率是99%,但预测仍然是错误的。因此,即使我只考虑预测概率高于99%的例子,我的准确度也很差,只比我原来的准确度高2-3%。

有没有人对网络为何对错误的预测充满信心?我仍然是新学习的新手,所以我正在寻找一些帮助我的想法。

另外,正确使用softmax概率来确定神经网络预测的置信度吗?如果没有,有更好的方法吗?

谢谢!

编辑:从下面的答案来看,似乎我的网络表现不佳。是否还有另一种方法来确定网络所做的预测可能是错误的,除了看到信心(因为信心似乎并不好)?

1 个答案:

答案 0 :(得分:0)

想象一下,您的样本被垂直线分割,但您的NN分类器学会了一条水平线,在这种情况下,您的分类器给出的任何预测始终只能获得50%的准确度。然而,NN将为远离水平线的样本分配更高的置信度。

简而言之,当您的模型分类较差时,较高的置信度对准确性几乎没有贡献。

建议:检查数据中所需的信息是否在数据中,然后首先提高整体准确度。