过采样可能的改进

数据挖掘 Python 分类 阶级失衡
2022-03-04 18:58:18

我目前正在解决一个不平衡数据集的分类问题(大约占少数类的 17%)。我使用从 sklearn(分层随机拆分)中的分层 k 折拆分来拆分数据,之后我使用 ADASYN 对训练数据进行过采样,并将过采样的训练数据(过采样后大约 250k+ 个实例)拟合到梯度提升分类器。过采样对性能有很大的影响,召回率从 7% 提高到 75%。这可能吗?如果没有,有什么想法可能会出错吗?

我对此的主要问题是这种改进是否可行?

1个回答

对不平衡数据集的评估应该使用多个单一指标来完成,因为您需要评估多数类和少数类的性能。

在提到的情况下,仅使用召回率(真阳性率)评估性能。可能是该模型现在专注于过采样的少数类(特别是如果它是新的多数类)并且在原始多数类上的性能较弱,我假设精度或假阴性率降低了。

几个评估指标正在考虑对类不平衡不敏感的两个类的性能 - F1 分数、几何平均值和最常见的 ROC/PR AUC