对图像进行分层抽样

时间:2018-05-01 02:44:54

标签: image-processing machine-learning data-science sampling

我有一个数据科学问题,它已经在20个不同的类别中标记了大约70,000个图像。一些类别具有许多图像,而另一些类别具有较少图像。这反过来导致数据集不平衡和结果不佳(目前准确率为68%)。经过一些研究,我发现我需要对图像进行采样(图像挖掘?),而不是选择所有图像。一种这样的方法可以是分层抽样。问题是如何选择图像来优化模型的训练?我可以在70k图像上使用的任何命令行工具或开源代码吗?

1 个答案:

答案 0 :(得分:1)

你有不平衡的数据所以要处理它,你可以简单地使用一个名为Imbalanced learn的库 该库最初专注于实现SMOTE,但后来也在采样和过采样技术下实现。 它也与scikit-learn兼容。

使用这种方法,将导致数据重新采样,使每个类具有几乎相等的实例。

第二个选项: 您可以为每个班级选择相同数量的图像并形成训练数据。由于缺乏适当的测试数据,这可能无法提高您的准确性,但您的模型肯定会变得更加强大和通用。