首页 > 解决方案 > 最好在拆分为训练和验证集之前或拆分之后将 MinMaxScaler 应用于您的数据集

问题描述

我真的很困惑何时应该将 MinMaxScaler 或一般缩放应用于我的数据集,无论是在拆分为 train_test_split 之前还是拆分为训练和验证拆分之后,然后在 X_train 上进行拟合和转换,在 X_test 上进行转换。真的很困惑应用这个的一般经验法则是什么......

标签: pythonvalidation

解决方案


没有经验法则,但通常,您肯定希望在拆分数据集之前进行扩展。

我会告诉你为什么。从逻辑上讲,在预测您是否有一个数据集并将其拆分为三个子集而不确保该子集或多或少处于同一分布中时,这会令人困惑(对于模型)。现在,如果您确定这三个子集具有相同的分布并且不失衡(这很难证明),那么我认为拆分前后没有问题。我永远不会推荐它。

因此,合乎逻辑的选择是先缩放,然后再进行拆分。另一种方法是使用 StandardScaler 而不是 MinMaxScaler。我发现它不太敏感,根据我的经验,在大多数情况下,它是比 minmax 更好的选择。


推荐阅读