.predict返回二进制结果而不是百分比

时间:2018-06-08 14:45:16

标签: machine-learning keras computer-vision classification

您好我编译了我的模型如下

model.compile(optimizer='rmsprop', loss='categorical_crossentropy', metrics=['accuracy'])

我正在运行

print(model.predict(test_tensor))

返回[[0. 0. 0. 0. 0. 0. 0. 1. 0. 0. 0.]]

最后一层是softmax激活,所以不应该这样做。

编辑:我也尝试过predict_proba并且没有工作

1 个答案:

答案 0 :(得分:0)

从理论上讲,你是对的,它会无限接近1,但请记住我们使用固定位的浮点数来表示它们。因此,在值达到某个epsilon为1之后,它会变圆。对于其他条目也会发生这种情况。因此,您可以获得100%自信的预测。

为什么你的模型会预测到这一点?可能是这个班级过多,所以它变得非常自信。你训练了很长时间,所以重量饱和,特别是如果你没有正规化的话。