一、数据标准化 / 归一化的作用
- 提升模型精度:标准化 / 归一化使不同维度的特征在数值上更具比较性,提高分类器的准确性。
- 提升收敛速度:对于线性模型,数据归一化使梯度下降过程更加平缓,更易正确的收敛到最优解。
二、标准差标准化 StandardScaler
from sklearn.preprocessing import StandardScaler
使用均值与方差,对服从正态分布的数据处理,得到符合标准正态分布的数据
- 处理方法:标准化数据减去均值,然后除以标准差,经过处理后数据符合标准正态分布,即均值为0,标准差为1;
- 转化函数:x = (x-mean) / std;
- 适用性:适用于本身服从正态分布的数据;
- Outlier 的影响:基本可用于有outlier的情况,但在计算方差和均值时outliers仍然会影响计算。
参数包括:with_mean, with_std, copy
- with_mean:布尔型,默认为 True,表示在缩放前将数据居中,当尝试在稀疏矩阵上时,这不起作用(并且会引发异常),因为将它们居中需要构建一个密集矩阵,在常见的用例中,该矩阵可能太大而无法容纳在内存中;
- with_std:布尔型,默认为True,表示将数据换算成单位方