首页 > 解决方案 > 我可以从 CNN 的分类标签中得到 [0 0] 吗?

问题描述

根据我对 keras 标签的理解,一种热编码不允许值为 [0 0]?这个假设正确吗?

我们正在尝试对 2 个类别进行分类,并且我们希望能够在输入垃圾图像时检测到垃圾。但是,它总是检测到 [0 1] 或 [1 0]。是否可以在不引入将处理垃圾的类的情况下将 [0 0] 作为标签?

所以基本上,如果不是 2 个类,CNN 可以预测它是别的东西吗?

标签: pythonkerasconv-neural-network

解决方案


那应该是不可能的。您的“垃圾”将是第三类,需要 [1 0 0]、[0 1 0] 和 [0 0 1] 的标签。

很简单,您描述的模型将返回两个类别之一,以您的最后一层中具有更高评级的为准。无论输入值是 0.501 和 0.499,还是带有很大“不确定”部分的 0.011 和 0.010,都会发生这种情况。如果您没有将“不确定”明确编码到模型中,则分类中不会考虑该部分决策。


推荐阅读