Standardization
标准化的前提假设
-
数据的权重相同
-
某些算法默认数据的 std=1 mean=0
不适合情况
-
类型不合适,类别变量
-
压缩的数据,稀疏矩阵
什么数据适合标准化?
-
SVM RBF
-
L1 L2 规则化的线性模型
标准化后损失什么信息?
-
原来的均值和标准差信息
-
含有极端异常点的删u
-
z-score 规范化
-
将数值范围缩放到0附近, 但没有改变数据分布。
-
-
-
对数据的分布的进行转换,使其符合某种分布(比如正态分布)的一种非线性特征变换
-
消除数量级对于模型的影响。
-
线性模型中,需要学习一条直线区分数据,将原始数据分布中心移动后,只是移动直线。不加正则的情况下。
什么时候需要标准化
-
主要看模型是否具有伸缩不变性。
-
有些模型在各个维度进行不均匀伸缩后,最优解与原来不等价,例如SVM。对于这样的模型,除非本来各维数据的分布范围就比较接近,否则必须进行标准化,以免模型参数被分布范围较大或较小的数据dominate。
-
有些模型在各个维度进行不均匀伸缩后,最优解与原来等价,例如logistic regression。对于这样的模型,是否标准化理论上不会改变最优解。但是,由于实际求解往往使用迭代算法,如果目标函数的形状太“扁”,迭代算法可能收敛得很慢甚至不收敛。所以对于具有伸缩不变性的模型,最好也进行数据标准化。
Standardization