Normalizer 和 MinMaxScaler 之间的区别
Difference between Normalizer and MinMaxScaler
我试图了解在我的数据中应用 Normalizer 或应用 MinMaxScaler 或同时应用两者的效果。我已经阅读了 SKlearn 中的文档,并看到了一些使用示例。我知道 MinMaxScaler 很重要(对缩放功能很重要),但是 Normalizer 呢?
我一直不清楚在我的数据中使用 Normalizer 的实际结果。
MinMaxScaler 按列应用,Normalizer 按行应用。这意味着什么?我应该使用 Normalizer 还是只使用 MinMaxScale 还是应该同时使用两者?
正如你所说,
MinMaxScaler is applied column-wise, Normalizer is applied row-wise.
不要混淆 Normalizer 与 MinMaxScaler。来自 Sklearn 的 Normalizer class 将样本单独归一化为单位范数。它不是基于列的,而是一种 row-based 规范化技术。换句话说,范围将由行或列决定。
所以,请记住我们缩放特征而不是记录,因为我们希望特征具有相同的尺度,所以要训练的模型不会根据它们的范围对不同的特征赋予不同的权重。如果我们缩放记录,这会给每个记录自己的比例,这不是我们需要的。
因此,如果特征由行表示,那么您应该使用 Normalizer。但在大多数情况下,特征由列表示,因此您应该根据情况使用 Sklearn 中的一种缩放器:
MinMaxScaler 通过将每个特征缩放到给定范围来转换特征。它单独缩放和平移每个特征,使其在训练集的给定范围内,例如在零和一之间。
转换由下式给出:
X_std = (X - X.min(axis=0)) / (X.max(axis=0) - X.min(axis=0))
X_scaled = X_std * (max - min) + min
其中最小值、最大值 = feature_range。
此转换通常用作零均值、单位方差缩放的替代方法。
StandardScaler 通过去除均值和缩放到单位方差来标准化特征。样本 x 的标准分数计算如下:
z = (x - u) / s
。如果数据分布正常就用这个。
RobustScaler 对异常值具有鲁棒性。它删除中位数并根据 IQR(四分位数间距)缩放数据。 IQR 是第 25 个分位数和第 75 个分位数之间的范围。
我试图了解在我的数据中应用 Normalizer 或应用 MinMaxScaler 或同时应用两者的效果。我已经阅读了 SKlearn 中的文档,并看到了一些使用示例。我知道 MinMaxScaler 很重要(对缩放功能很重要),但是 Normalizer 呢?
我一直不清楚在我的数据中使用 Normalizer 的实际结果。
MinMaxScaler 按列应用,Normalizer 按行应用。这意味着什么?我应该使用 Normalizer 还是只使用 MinMaxScale 还是应该同时使用两者?
正如你所说,
MinMaxScaler is applied column-wise, Normalizer is applied row-wise.
不要混淆 Normalizer 与 MinMaxScaler。来自 Sklearn 的 Normalizer class 将样本单独归一化为单位范数。它不是基于列的,而是一种 row-based 规范化技术。换句话说,范围将由行或列决定。
所以,请记住我们缩放特征而不是记录,因为我们希望特征具有相同的尺度,所以要训练的模型不会根据它们的范围对不同的特征赋予不同的权重。如果我们缩放记录,这会给每个记录自己的比例,这不是我们需要的。
因此,如果特征由行表示,那么您应该使用 Normalizer。但在大多数情况下,特征由列表示,因此您应该根据情况使用 Sklearn 中的一种缩放器:
MinMaxScaler 通过将每个特征缩放到给定范围来转换特征。它单独缩放和平移每个特征,使其在训练集的给定范围内,例如在零和一之间。 转换由下式给出:
X_std = (X - X.min(axis=0)) / (X.max(axis=0) - X.min(axis=0)) X_scaled = X_std * (max - min) + min
其中最小值、最大值 = feature_range。
此转换通常用作零均值、单位方差缩放的替代方法。
StandardScaler 通过去除均值和缩放到单位方差来标准化特征。样本 x 的标准分数计算如下:
z = (x - u) / s
。如果数据分布正常就用这个。RobustScaler 对异常值具有鲁棒性。它删除中位数并根据 IQR(四分位数间距)缩放数据。 IQR 是第 25 个分位数和第 75 个分位数之间的范围。