我正在针对分类问题训练机器学习模型。我的数据集是10000个具有37个分类类别的观测值。但是数据是不平衡的,我有一些班级有100个观测值,而另一些班级有3000和4000个观测值。
在研究如何对该类型的数据进行一些特征工程以提高算法的性能之后。我找到2个解决方案:
上采样意味着获得有关少数群体的更多数据
下采样意味着删除有关多数类的数据
根据第一种解决方案:
我有很多班子有一些观察,所以这将需要更多的数据和更长的时间。所以对我来说很难!
并通过应用第二个:
我认为所有类都会有一些发现,并且数据将非常小,因此算法难以一概而论。
那么,有没有我可以尝试解决此问题的解决方案?
最佳答案
您可以在损失函数中更改权重,以使较小的类在优化时具有更大的重要性。例如,在keras中,可以使用weighted_cross_entropy_with_logits。
关于machine-learning - 不平衡数据的特征工程,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59583232/