我使用了https://codelabs.developers.google.com/codelabs/tensorflow-for-poets/#7中的“Tensorflow For Poets”示例。它的工作原理应该如此,但是当它被赋予完全不同的图像时(使用狗的照片,当它被训练为花朵时),它给出了一个超过80%确定性的值的预测,尽管它是完全错了。
我的问题是:它如何检查对特定图像进行训练的确定程度?
这是输出:
roses 0.8071102
tulips 0.20286822
daisy 2.0703827e-05
sunflowers 7.838418e-07
dandelion 3.357079e-08
答案 0 :(得分:1)
CNN通常是自信的错误。您在训练期间得出的过滤器必须在玫瑰和狗图像中找到相似之处。如果CNN认为狗是玫瑰,那么它认为狗是玫瑰。就那么简单。没有一个明显的测试来检查它是多么确定它是80%确定的。它只能告诉你80%的确定你的狗是玫瑰。
模型需要在更多图像上进行训练才能获得更好的效果。如果你在两个物体(即狗和玫瑰)之间反复出现/持续混淆,那么用狗的图像训练模型作为反面例子(没有任何特征的图像或通过创建自己的类)是一个好主意。通过这种方式,模型可以了解是什么让玫瑰与狗有所区别。