当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python cuml.experimental.preprocessing.RobustScaler用法及代码示例


用法:

class cuml.experimental.preprocessing.RobustScaler(*args, **kwargs)

使用对异常值具有鲁棒性的统计数据来缩放特征。

此 Scaler 移除中位数并根据分位数范围(默认为 IQR:四分位数范围)缩放数据。 IQR 是第 1 个四分位数(第 25 个分位数)和第 3 个四分位数(第 75 个分位数)之间的范围。

通过计算训练集中样本的相关统计数据,居中和缩放在每个特征上独立发生。然后使用transform 方法存储中位数和四分位数范围以用于以后的数据。

数据集的标准化是许多机器学习估计器的共同要求。通常这是通过去除均值并缩放到单位方差来完成的。但是,异常值通常会对样本均值/方差产生负面影响。在这种情况下,中位数和四分位距通常会给出更好的结果。

参数

with_centering布尔值,默认 = True

如果为 True,则在缩放之前将数据居中。这将导致transform 在稀疏矩阵上尝试时引发异常,因为将它们居中需要构建一个密集矩阵,在常见的用例中,该矩阵可能太大而无法放入内存。

with_scaling布尔值,默认 = True

如果为 True,则将数据缩放到四分位数范围。

quantile_range元组 (q_min, q_max), 0.0 < q_min < q_max < 100.0

默认值:(25.0, 75.0) = (1st quantile, 3rd quantile) = IQR 用于计算 scale_ 的分位数范围。

copy布尔值,可选,默认 = True

是否会触发强制复制。如果 copy=False,则可能会通过转换触发复制。

例子

>>> from cuml.preprocessing import RobustScaler
>>> X = [[ 1., -2.,  2.],
...      [ -2.,  1.,  3.],
...      [ 4.,  1., -2.]]
>>> transformer = RobustScaler().fit(X)
>>> transformer
RobustScaler()
>>> transformer.transform(X)
array([[ 0. , -2. ,  0. ],
       [-1. ,  0. ,  0.4],
       [ 1. ,  0. , -1.6]])

属性

center_浮点数数组

训练集中每个特征的中值。

scale_浮点数数组

训练集中每个特征的(缩放的)四分位数范围。

相关用法


注:本文由纯净天空筛选整理自rapids.ai大神的英文原创作品 cuml.experimental.preprocessing.RobustScaler。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。