优化未知标签的图像识别结果

人工智能 神经网络 卷积神经网络 图像识别
2021-10-23 12:37:53

我正在训练一个网络来对动物园动物进行图像分类。

我是一名软件工程师,而不是 ML 专家,所以我一直在重新训练 Google 的 Inception 模型,最新的模型是使用 Google AutoML Vision 进行训练的。

该网络表现得非常好,但我不希望任何标签的动物图像出现问题。基本上我希望这些动物的图像被归类为未知数或获得低分。

我确实有一些我不想要标签的动物图像,我尝试将它们全部放入一个“无”标签中,以及我收集的没有任何动物的动物栖息地的图像。但这并没有真正产生任何好的结果。该网络为标记的动物执行,但最终也将这些标签中的一个分配给其他动物。通常也有很高的分数。

我有 14 个标签和 10.000 张图像。我还应该提到,与实际标签相比,“无”标签最终会包含很多图像。这些图像不包括在 10.000 中。

有什么技巧可以用这个来达到更好的效果吗?我应该为“无”类别中的图像创建多个标签吗?

1个回答

欢迎来到 AI.SE @Stromgren!

一个可能的解释是“无”组中的动物彼此之间没有太多共同点。

这意味着网络很难从图像中了解哪些特征与该标签相关联(实际上,没有任何特征!)。因此,网络可能会为任何关于无标签的估计分配非常低的置信度。您应该能够检查是否是这种情况(即检查它是否标签“无”有信心)。

我不完全确定 Inception 网络如何对其标签进行编码。一个常见的方案是为每个类使用一个输出神经元。因此,图像的正确标签始终是“1-hot”向量,其中一个元素设置为 1,其他元素全部设置为零。

如果正在使用该表示,您可以通过用一个全为零的向量标记它来合并“无”数据:没有一个输出神经元应该为它激活。这将准确地产生你想要的训练信号。