当使用不平衡的数据集(例如欺诈检测)执行分类(例如,逻辑回归)时,最好在对少数类进行过采样之前对特征进行缩放/zscore/标准化,还是在缩放特征之前平衡类?
其次,这些步骤的顺序是否会影响最终解释特征的方式(当使用所有数据,缩放+平衡,训练最终模型时)?
下面是一个例子:
先缩放:
- 将数据拆分为训练/测试折叠
- 使用所有训练(不平衡)数据计算均值/标准;使用这些计算缩放训练数据
- 对训练数据中的少数类进行过采样(例如,使用 SMOTE)
- 将逻辑回归模型拟合到训练数据
- 使用均值/标准计算来缩放测试数据
- 用不平衡的测试数据预测类别;评估acc/召回/精度/auc
先过采样
- 将数据拆分为训练/测试折叠
- 对训练数据中的少数类进行过采样(例如,使用 SMOTE)
- 使用平衡的训练数据计算平均值/标准;使用这些计算缩放训练数据
- 将逻辑回归模型拟合到训练数据
- 使用均值/标准计算来缩放测试数据
- 用不平衡的测试数据预测类别;评估acc/召回/精度/auc