代码之家  ›  专栏  ›  技术社区  ›  Santosh Kashyap

图像分层抽样

  •  0
  • Santosh Kashyap  · 技术社区  · 6 年前

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

    1 回复  |  直到 6 年前
        1
  •  1
  •   Prashant Gupta    6 年前

    您有不平衡的数据,所以要处理这个问题,您只需使用一个名为 Imbalanced learn 该库最初主要用于实现SMOTE,但后来也实现了欠采样和过采样技术。 它还与scikit learn兼容。

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

    第二种选择: 您可以简单地为每个类选择相同数量的图像,并形成培训数据。由于缺乏适当的测试数据,这可能不会提高您的准确性,但您的模型肯定会变得更加健壮和通用。