Cha*_*kra 3 python data-science
MinMaxScaler和标准缩放器之间有什么区别.
MMS= MinMaxScaler(feature_range = (0, 1)) (用于Program1)
sc = StandardScaler() (在另一个程序中,他们使用标准缩放器而不是minMaxScaler)
Bla*_*ven 54
MinMaxScaler(feature_range = (0, 1))将在 [0,1] 范围内按比例转换列中的每个值。将此用作转换特征的第一个缩放器选择,因为它将保留数据集的形状(无失真)。
StandardScaler()将把列中的每个值变换到均值 0 和标准差 1 左右的范围内,即每个值将通过减去均值并除以标准差来归一化。如果您知道数据分布是正常的,请使用 StandardScaler。
如果有异常值,请使用RobustScaler()。或者,您可以删除异常值并使用上述 2 个定标器中的任何一个(选择取决于数据是否呈正态分布)
附加说明:如果在 train_test_split 之前使用 scaler,则会发生数据泄漏。在 train_test_split 后使用缩放器
StandardScaler删除均值并将数据缩放到单位差异.然而,异常值在计算经验均值和标准偏差时会产生影响,这会缩小特征值的范围,如下图左图所示.特别要注意的是,因为每个特征上的异常值具有不同的大小,所以每个特征上的变换数据的扩展是非常不同的:大多数数据位于转换的中值收入特征的[-2,4]范围内,同时相同对于转换后的家庭数量,数据被挤压在较小的[-0.2,0.2]范围内.因此,StandardScaler无法在存在异常值的情况下保证平衡的特征尺度.
MinMaxScaler重新调整数据集,使所有要素值都在[0,1]范围内,如右下图所示.然而,对于转换后的家庭数量,这种缩放压缩了窄范围[0,0.005]内的所有内点.
小智 5
当数值输入变量缩放到标准范围时,许多机器学习算法的性能会更好。缩放数据意味着它有助于在特定范围内规范化数据。
当使用 MinMaxScaler 时,它也被称为归一化,它转换 (0 到 1) 之间范围内的所有值,公式为 x = [(value - min)/(Max- Min)]
StandardScaler 属于标准化,其值范围在 (-3 到 +3) 之间,公式为 z = [(x - x.mean)/Std_deviation]