Machine learning 如何解释用非常好到完美的结果替换过采样?

Machine learning 如何解释用非常好到完美的结果替换过采样?,machine-learning,resampling,precision-recall,Machine Learning,Resampling,Precision Recall,我有非常不平衡的数据(100:1),其中1部分是我感兴趣的(少数)类。我听说过过过采样(以及其他技术)是一种“处理”不平衡数据的方法。因此,我所做的是通过重新采样,以一定的比例(比如说,2:1)替换,对少数族裔进行过采样 然后我将这个新形成的(重新形成的)样本分成训练集和测试集,性能从精确度、召回率、F1的0.7、0.4、0.5大幅提高到0.97、0.97、0.97 我是不是做错了什么,因为它看起来太好了以至于不可能是真的?我是否应该保留测试集的原始分布,而只对训练集中的少数类进行过采样?如果我

我有非常不平衡的数据(100:1),其中1部分是我感兴趣的(少数)类。我听说过过过采样(以及其他技术)是一种“处理”不平衡数据的方法。因此,我所做的是通过重新采样,以一定的比例(比如说,2:1)替换,对少数族裔进行过采样

然后我将这个新形成的(重新形成的)样本分成训练集和测试集,性能从精确度、召回率、F1的0.7、0.4、0.5大幅提高到0.97、0.97、0.97


我是不是做错了什么,因为它看起来太好了以至于不可能是真的?我是否应该保留测试集的原始分布,而只对训练集中的少数类进行过采样?

如果我了解您构建测试集的方式,那么测试集中几乎所有“有趣”的点都很可能也在训练集中。您的模型可能过拟合,并且学习在不必泛化的情况下精确地反求训练数据,并且您无法检测到它,因为您没有使用来自训练集之外的数据来验证模型。在应用过采样之前,将数据分为训练和测试应该可以防止这种情况。

如果我了解构建集合的方式,那么测试集中几乎所有“有趣”的点都很可能在训练集中。您的模型可能过拟合,并且学习在不必泛化的情况下精确地反求训练数据,并且您无法检测到它,因为您没有使用来自训练集之外的数据来验证模型。在应用过采样之前,将数据分离为训练和测试应该可以防止这种情况