为了应对不同特征尺度差异的问题,我们通常在模型训练前进行归一化(Normalization)或标准化(Standardization)处理。这样可以提升模型的收敛速度与性能,特别是在距离敏感型算法中如 KNN、SVM、梯度下降优化等。
方法一:Min-Max Normalization(最大最小归一化)
将特征值压缩到 $[0, 1]$ 区间内,计算公式为:
$$
x’ = \frac{x - x_{\min}}{x_{\max} - x_{\min}}
$$
- $x$:原始特征值
- $x_{\min}$:该特征的最小值
- $x_{\max}$:该特征的最大值
- $x’$:缩放后的值
特点:
- 保留了原始数据的分布形状(不会改变相对距离)
- 对异常值非常敏感(可能把大部分值压缩得太小)
方法二:Z-score Normalization(标准差标准化)
也称为零均值归一化,使特征具有均值为 0、标准差为 1 的分布:
$$
x’ = \frac{x - \mu}{\sigma}
$$
- $\mu$:该特征的均值
- $\sigma$:该特征的标准差
特点:
- 适用于数据符合高斯分布的情况
- 不受异常值影响(比 min-max 稳健)
补充说明
方法 | 是否受异常值影响 | 常用于 |
---|---|---|
Min-Max 归一化 | 敏感 | 图像像素、神经网络输入层 |
Z-score 标准化 | 稳健 | 线性回归、SVM、KNN、PCA |