归一化 (Normalization)、标准化 (Standardization)和中心化/零均值化 (Zero-centered)

目录

  • 1 概念
    • 1.1 归一化
    • 1.2 标准化
    • 1.3 中心化
    • 1.4 区别
  • 2 为什么要归一化/标准化?
    • 3 常见的方法
      • 3.1 Min-Max Normalization(归一化方法)
      • 3.2 Z-score standardization(标准化方法)
  • 4 两种方法的使用场景

1 概念

1.1 归一化

1)把数据变成(0,1)或者(1,1)之间的小数。主要是为了数据处理方便提出来的,把数据映射到0~1范围之内处理,更加便捷快速。2)把有量纲表达式变成无量纲表达式,便于不同单位或量级的指标能够进行比较和加权。归一化是一种简化计算的方式,即将有量纲的表达式,经过变换,化为无量纲的表达式,成为纯量。

1.2 标准化

在机器学习中,我们可能要处理不同种类的资料,例如,音讯和图片上的像素值,这些资料可能是高维度的,资料标准化后会使每个特征中的数值平均变为0(将每个特征的值都减掉原始资料中该特征的平均)、标准差变为1,这个方法被广泛的使用在许多机器学习算法中(例如:支持向量机、逻辑回归和类神经网络)。

1.3 中心化

平均值为0,对标准差无要求
x’ = x - μ

1.4 区别

归一化和标准化的区别:
  归一化是将样本的特征值转换到同一量纲下把数据映射到[0,1]或者[-1, 1]区间内,仅由变量的极值决定,因区间放缩法是归一化的一种。
  标准化是依照特征矩阵的列处理数据,其通过求z-score的方法,转换为标准正态分布,和整体样本分布相关,每个样本点都能对标准化产生影响。它们的相同点在于都能取消由于量纲不同引起的误差;都是一种线性变换,都是对向量X按照比例压缩再进行平移。
  标准化和中心化的区别
  标准化是原始分数减去平均数然后除以标准差,中心化是原始分数减去平均数。 所以一般流程为先中心化再标准化。
  无量纲:我的理解就是通过某种方法能去掉实际过程中的单位,从而简化计算。

2 为什么要归一化/标准化?

如前文所说,归一化/标准化实质是一种线性变换,线性变换有很多良好的性质,这些性质决定了对数据改变后不会造成“失效”,反而能提高数据的表现,这些性质是归一化/标准化的前提。比如有一个很重要的性质:线性变换不会改变原始数据的数值排序。
1)归一化后加快了梯度下降求最优解的速度
2)归一化有可能提高精度
https://zhuanlan.zhihu.com/p/27627299
https://zhuanlan.zhihu.com/p/30358160

3 常见的方法

3.1 Min-Max Normalization(归一化方法)

在这里插入图片描述
其中max为当前样本数据中, 该属性的最大值, min为最小值.
本质:将数据映射到(0,1)或者(-1,1)
这种方法处理速度快, 但是, 当有新的数据加入时, max和min发生变化, 需要重新归一化。
如果想要将数据映射到(-1,1),则将公式换成:(X-Mean)/(Max-Min)

3.2 Z-score standardization(标准化方法)

这种方法给予原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。经过处理的数据符合标准正态分布,即均值为0,标准差为1,转化函数为:
在这里插入图片描述
其中, μ为样品的均值, σ为样品的标准差。
本质:把有量纲表达式变成无量纲表达式。

4 两种方法的使用场景

1)在分类、聚类算法中,需要使用距离来度量相似性的时候、或者使用PCA技术进行降维的时候,第二种方法(Z-score standardization)表现更好。

因为:第一种方法(线性变换后),其协方差产生了倍数值的缩放,因此这种方式无法消除量纲对方差、协方差的影响,对PCA分析影响巨大;同时,由于量纲的存在,使用不同的量纲、距离的计算结果会不同。

(2)在不涉及距离度量、协方差计算、数据不符合正太分布的时候,可以使用第一种方法或其他归一化方法。比如图像处理中,将RGB图像转换为灰度图像后将其值限定在(0 ,255)的范围。

因为:第二种归一化方式中,新的数据由于对方差进行了归一化,这时候每个维度的量纲其实已经等价了,每个维度都服从均值为0、方差1的正态分布,在计算距离的时候,每个维度都是去量纲化的,避免了不同量纲的选取对距离计算产生的巨大影响。

参考:
https://zhuanlan.zhihu.com/p/27627299
https://zhuanlan.zhihu.com/p/30358160
https://blog.csdn.net/program_developer/article/details/78637711

你可能感兴趣的:(机器学习,机器学习)