使用categorical_crossentropy进行预测得出的异常结果

时间:2019-05-17 12:41:55

标签: python tensorflow keras

前言:我是机器学习的新手,所以它可能是一个简单的解决方案。

预期:首先,我使用binary_crossentropy在两个类别(好和坏)上训练了CNN模型,验证精度为97%,将新图像提交到预测并获得了预期的结果(将这两个新图像正确分类的概率为在90年代是正确的。

<script src=<MathJax link> />
    <span>Some Equation</span>
</html>

问题:现在,我尝试切换到categorical_crossentropy以使用三个类别(b1 b2 b3),该模型的训练精度为96%。我提交了3幅新图像进行预测,其中2幅图像应该匹配,其中1幅超出左侧字段,并且不匹配任何内容。假设所有三个图像都以1.概率匹配。

1 #print(model.predict_classes(img))
0.965675 #print(model.predict_proba(img))

问题:为什么左场外的图像与经过训练的模型达到96%的类别相匹配?为什么所有概率都在类别“ 1”中。 (100%)?

附录:

[1] #print(model.predict_classes(img))
[[0. 1. 0.]] #print(model.predict_proba(img))

[2]
[[0. 0. 1.]]

[1]
[[0. 1. 0.]]

0 个答案:

没有答案