sar*_*ika 4 machine-learning resampling train-test-split
我正在做一个数据不平衡的项目。我想使用随机欠采样来平衡数据。我很困惑是否应该在测试列车分割后进行欠采样,或者我应该先进行欠采样,然后再进行列车测试分割?
我的方法:
我的做法正确吗?如果我错了,请纠正我。
小智 6
让我们来看看你的方法:
我使用训练测试分割来获取:X_train、y_train 用于训练,X_test 和 y_test 用于测试。我将 X_train 和 y_train 组合成一个数据集并进行欠采样。
这是正确的。任何重采样技术都应仅应用于训练集。这将确保测试集反映现实。在此类测试集上获得的模型性能将是对模型泛化能力的良好估计。如果对整个数据集执行重采样,您的模型的性能将过于乐观。
欠采样后,我进行了基于F1的交叉验证和模型选择
如果没有代码,很难理解到底做了什么,但似乎您已经对已经重新采样的训练数据进行了交叉验证。这是错误的,在交叉验证期间应该在每个测试折叠上进行欠采样。让我们考虑一下 3 倍 CV 应该如何完成:
因此,您应该做的是: 1. 将训练数据和测试数据分开。2. 对您的列车组执行 CV。仅在测试折叠上应用欠采样。3. 在 CV 的帮助下选择模型后,对训练集进行欠采样并训练分类器。4. 估计未受影响的测试集上的性能。
| 归档时间: |
|
| 查看次数: |
3786 次 |
| 最近记录: |