标准化、归一化、去中心化辨析
标准化(Standardization)、归一化(Normalization)和去中心化(Centering)是数据预处理中常用的三种不同的缩放技术,它们都旨在调整数据的尺度,以便于进行后续的分析和机器学习任务。虽然这些术语有时被交替使用,但它们在数学上有着不同的含义和应用场景。
标准化(Standardization)
标准化是将数据转换为具有特定均值和标准差的过程。通常,标准化会使得数据的均值变为0,标准差变为1。这是通过以下公式完成的(Z-score规范化):
\[ z = \frac{(x - \mu)}{\sigma} \]
其中,$ x $ 是原始数据点,$ $ 是数据集的均值,$ $ 是数据集的标准差,$ z $ 是标准化后的值。
标准化的主要目的是消除不同量纲和尺度的影响,使得数据在进行计算和比较时更加公平。它在许多机器学习算法中非常有用,尤其是那些基于距离的算法,如K-近邻(KNN)和主成分分析(PCA)。
归一化(Normalization)
归一化通常指的是将数据缩放到一个固定的范围,最常见的是[0, 1]。归一化的公式如下:
\[ x_{\text{norm}} = \frac{x - \text{min}(x)}{\text{max}(x) - \text{min}(x)} \]
其中,$ x $
是原始数据点,min(x)
和max(x)
分别是数据集中的最小值和最大值,$
x_{} $ 是归一化后的值。
归一化对于需要数据在固定范围内进行计算的算法非常有用,如梯度下降和神经网络。它也常用于数据可视化,使得不同的数据点可以在同一尺度下比较。
去中心化(Centering)
中心化是将数据的均值变为0的过程,但不改变数据的标准差。这可以通过以下公式完成:
\[ x_{\text{centered}} = x - \mu \]
其中,\(\ x\) 是原始数据点 ,$ $ 是数据集的均值,$ x_{} $ 是去中心化后的值。
去中心化有助于突出数据中的异常值和波动,因为它保留了原始数据的方差。它在某些统计分析和时间序列分析中非常有用,尤其是在计算偏差或平均偏差时。
总结
- 标准化:调整数据的均值和标准差,使其具有均值为0和标准差为1的特性。
- 归一化:将数据缩放到一个固定范围,通常是[0, 1]。
- 去中心化:仅将数据的均值调整为0,不改变其标准差。
在实际应用中,选择哪种方法取决于数据的特性和后续分析的需求。有时,这些方法可以组合使用,以达到最佳的预处理效果。例如,可以先进行去中心化,然后进行标准化或归一化。
参考文献
http://t.csdnimg.cn/uvG6k
http://t.csdnimg.cn/80z2S