我正在尝试训练一个分类器(比如说对一个对象X进行分类,或者不对X进行分类)。但我没有太多真实的对象X的图像,我想分类。所以我用一些照片编辑工具自己制作了一些合成图像,但问题是,在输入合成数据之后,我的分类器无法识别真实的对象。因为我有2-3张真实物体的图像,所以我不能给它提供更多的真实数据。对于如何用合成数据来识别真实数据,有什么解决办法吗?
发布于 2020-11-23 07:08:59
正如Paul正确指出的那样,有几种数据增强技术可用。例如,您可以看到下面的https://www.kaggle.com/cdeotte/25-million-images-0-99757-mnist,其中从42K原始图像生成了2500万幅图像。
我想补充的另一种方法是,如果你想要分类的真实图像可以分解成更小的特征。比如说,你想把一个人骑自行车的照片分类,他的手臂上有一个袋子。你可能没有太多的照片,但你有数百万的自行车,男人和袋子的形象。你可以训练这些,并重复使用一些较低的层,因为-是在你的模型。
发布于 2019-07-01 00:13:58
神经网络需要大量的数据进行训练。这是他们最大的缺点之一,而且很难克服。
使用人工数据不是一种解决方案。我们并不真正理解网络正在学习什么,我们也无法判断它是否学到了任何与合成图像有关的东西。
你能做的就是使用某种数据增强。旋转、缩放、多次转换图像,并创建更大的数据集。
因为它是一个如此小的数据集,而且如果无法获得更多的数据,那么您应该考虑其他方法来帮助分类。或者手动设计一些特性来帮助分类器,或者使用更传统的方法进行分类。
https://datascience.stackexchange.com/questions/54799
复制相似问题