主要是读了这篇文章才深入理解这两个的区别
http://www.zhaokv.com/2016/01/normalization-and-standardization.html
归一化
对原始数据进行线性转换到 [0,1] 区间,如下:最小值和最大值特别容易受异常值影响,因此鲁棒性不好,比较适合传统的小数据场景
标准化
最常用的方法是Z-score标准化,即将数据转化成均值为0,标准差为1,处理方法如下:其中
是样本的均值,
是样本的标准差,适合已有的样本量足够大的时候使用。
理论解释
归一化的依据非常简单,归一化可以消除量纲对结果的影响,使不同变量有可比性。标准化的依据相对复杂,它表示原始值和均值之间差几个标准差,是一个相对值,有去除量纲的效果,还带来了两个附加好处:均值为0,方差为1.
均值为0可以带来很多遍历,比如在去中心化的数据上做SVD分解等价于在原始数据上做PCA;机器学习中很多函数如Sigmoid、Tanh、Softmax等都以0为中心左右分布