我在 IBM Bluemix 上使用 Visual Recognition 服务。
我创建了一些分类器,特别是其中两个具有此目的:
- 首先:一个“通用”分类器,它必须返回关于识别图像中特定对象的置信度分数。我已经用 50 个物体的正面例子和 50 个与物体相似的物体的负面例子(它的细节、它的组件、类似它的图像等)训练了它。
- 第二:如果第一个分类的分数很高,则识别之前识别的对象的特定类型的更具体的分类器。这个新的分类器已经被训练为第一个:50 个 A 类对象的正例,50 个 B 类对象的负例。第二个分类应该比第一个更具体,因为图像更详细并且它们之间都相似。
结果是这两个分类器工作得很好,并且在大多数情况下,一组特定图像的预期结果都与事实相符,这应该意味着两者都经过了很好的训练。
但是有一点我不明白。
在这两个分类器中,如果我尝试对正训练集中使用的图像进行分类,我的期望是置信度分数应该接近 90-100%。相反,我总是得到一个介于 0.50 和 0.55 之间的分数。当我尝试使用与正训练集(缩放、反射、剪切等)非常相似的图像时,也会发生同样的事情:置信度永远不会超过 0.55 左右。
我尝试创建一个包含 100 个正图像和 100 个负图像的类似分类器,但最终结果从未改变。
问题是:为什么置信度分数这么低?为什么正面训练集中使用的图像没有接近 90-100%?