我使用CNN编写了一个简单的图像分类器,用于将输入图像分类为标签:狗或猫。当显示除猫/狗之外的图像时,CNN会将其分类为其中一个标签(狗或猫),这是不正确的。我希望我的CNN能将所有其他随机图像(如房子、人、鸟等)标记为无效输入。如何实现这一点?
回答:
有两种方法可以实现这一点。
1. 在你的训练数据中包含第三类,包含任何随机图像,如房子、人、鸟等。这样在推理时,对于随机数据你会得到这个预测(如果你包含了所有可能的最大数量的图像)。
2. 在你的softmax分类器之后使用阈值,例如任何低于0.7的阈值(根据你的试验后可以自行调整)都被视为未知类(我经常使用这个技巧)。