在预处理数据集时,Standard Scaler 和 Min Max Scaler 在机器学习中的主要区别是什么?

What is the main Difference between Standard Scaler and MinMax Scaler in machine learning while preprocrssing the dataset?

我在预处理数据集时总是感到困惑,是否使用最小最大缩放器或标准缩放器,所以基本上我的问题是何时使用标准缩放器以及在什么情况下我可以使用 MinMax 缩放器 ?

MinMaxScaler say (feature_range = (0, 1)) 将在 [0,1] 范围内按比例转换列中的每个值。将其用作转换特征的第一个缩放器选择,因为它将保留数据集的形状(无失真)。

StandardScaler() 会将列中的每个值转换为均值 0 和标准差 1 左右的范围,即每个值将通过减去均值并除以标准差来归一化。如果您知道数据分布是正常的,请使用 StandardScaler。

如果有异常值,使用RobustScaler()。或者,您可以删除异常值并使用上述 2 个缩放器中的任何一个(选择取决于数据是否呈正态分布)

补充说明:如果在train_test_split之前使用scaler,会发生数据泄露。在 train_test_split

之后使用定标器