机器学习:使用卷积神经网络将图像分类为 3 类(狗或猫或两者都不是)
machine learning: Image classification into 3 classes (Dog or Cat or Neither) using Convolutional NN
如果能帮我考虑一下,我将不胜感激。我有一个分类器,可以准确地将图像成功分类为狗或猫。我有一个很好的数据集来训练分类器。目前没问题。
我有大约 20,000 张狗和 20,000 张猫的图像。
但是,当我尝试呈现其他图像(例如没有狗或猫的汽车、建筑物或老虎)时,我希望分类器的输出为 "Niether"。现在很明显,分类器试图将所有东西分类为狗或猫,这是不正确的。
问题 1:
我怎样才能做到这一点?我是否需要一组 3 组不包含狗或猫的图像,并在这些附加图像上训练分类器以将其他所有图像识别为 "Neither"?
大致上,我需要多少非 Dog/Cat 类别的图像才能获得良好的准确性?由于非 dog/cat 图像域如此庞大,大约 50,000 张图像可以吗?还是我需要更多图片?
问题 2:
我可以使用 Imagenet 训练的 VGG16 Keras 模型作为初始层并在顶部添加 DOG/CAT/Neither 分类器作为全连接层,而不是使用我自己的图像数据训练我自己的分类器吗?
See this example to load a pre-traied imagenet model
非常感谢您的帮助。
问题二
我将首先采用 "killer" 启发式。是的,使用现有的训练模型。只需将所有狗 classifications 合并到您的 class 1 中,将猫合并到 class 2 中,将其他所有内容合并到 class 0 中。这几乎可以解决您的所有问题.
问题 1
问题是您的初始模型已经过训练,世界上的一切(全部 40,000 张图像)要么是狗要么是猫。是的,你必须训练第三组,除非你的训练方法是一种自我限制的算法,例如单class SVM(运行一次在每个class化)。即便如此,我希望您在排除山猫或狼时会遇到一些麻烦。
考虑到输入的高维度 space,你需要大量 "neither" class 的示例是非常正确的:数量不是很多图片的数量,但它们的位置仅来自猫或狗 "over the boundary"。我会对一个项目感兴趣,以确定如何用最少的额外输入来做到这一点。
简而言之,不要简单地从世界的 ImageNet 类型中抓取 50K 图像;选择那些能为您的模型提供最佳辨别力的对象:其他猫科动物和犬科动物示例,您在类似环境中发现的其他对象(末尾 table、野外啮齿动物等)。
如果能帮我考虑一下,我将不胜感激。我有一个分类器,可以准确地将图像成功分类为狗或猫。我有一个很好的数据集来训练分类器。目前没问题。
我有大约 20,000 张狗和 20,000 张猫的图像。
但是,当我尝试呈现其他图像(例如没有狗或猫的汽车、建筑物或老虎)时,我希望分类器的输出为 "Niether"。现在很明显,分类器试图将所有东西分类为狗或猫,这是不正确的。
问题 1:
我怎样才能做到这一点?我是否需要一组 3 组不包含狗或猫的图像,并在这些附加图像上训练分类器以将其他所有图像识别为 "Neither"?
大致上,我需要多少非 Dog/Cat 类别的图像才能获得良好的准确性?由于非 dog/cat 图像域如此庞大,大约 50,000 张图像可以吗?还是我需要更多图片?
问题 2:
我可以使用 Imagenet 训练的 VGG16 Keras 模型作为初始层并在顶部添加 DOG/CAT/Neither 分类器作为全连接层,而不是使用我自己的图像数据训练我自己的分类器吗?
See this example to load a pre-traied imagenet model
非常感谢您的帮助。
问题二
我将首先采用 "killer" 启发式。是的,使用现有的训练模型。只需将所有狗 classifications 合并到您的 class 1 中,将猫合并到 class 2 中,将其他所有内容合并到 class 0 中。这几乎可以解决您的所有问题.
问题 1
问题是您的初始模型已经过训练,世界上的一切(全部 40,000 张图像)要么是狗要么是猫。是的,你必须训练第三组,除非你的训练方法是一种自我限制的算法,例如单class SVM(运行一次在每个class化)。即便如此,我希望您在排除山猫或狼时会遇到一些麻烦。
考虑到输入的高维度 space,你需要大量 "neither" class 的示例是非常正确的:数量不是很多图片的数量,但它们的位置仅来自猫或狗 "over the boundary"。我会对一个项目感兴趣,以确定如何用最少的额外输入来做到这一点。
简而言之,不要简单地从世界的 ImageNet 类型中抓取 50K 图像;选择那些能为您的模型提供最佳辨别力的对象:其他猫科动物和犬科动物示例,您在类似环境中发现的其他对象(末尾 table、野外啮齿动物等)。