标准化(Z-Score)公式为:
z = (x - u) / s
其中,u为训练集数据的平均值,如果with_mean参数为False则为0;s为训练集数据的方差,如果with_std参数为False则为1。均值和方差结果使用transform对象存储,可直接用在后续的数据例如测试集中。

数据集的标准化是许多机器学习估计器的共同要求:如果单个特征或多或少不像标准正态分布数据(例如,均值和单位方差均为0的高斯分布),那么这些估计器可能表现不好。

算法的目标函数中使用的许多元素(如支持向量机的RBF核或线性模型的L1和L2正则化器)假设所有特征都以0为中心,并且具有相同顺序的方差。如果一个特征的方差比其他特征的方差大几个数量级,它可能会支配目标函数,使估计器无法按照预期正确地从其他特征中学习。

例子:
在这里插入图片描述
方法:

  • fit(X[, y, sample_weight]) 计算均值和方差存储成StandardScaler()后续使用
  • fit_transform(X[, y]) Fit to data, then transform it.

官网API说明:
https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.StandardScaler.html#sklearn.preprocessing.StandardScaler

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐