| 对比维度 | 标准化(Standardization) | 归一化(Normalization) |
|---|---|---|
| 处理目标 | 调整分布(均值、方差) | 调整数据范围 |
| 结果分布 | 数据符合标准正态分布(均值为 0,方差为 1) | 数据线性映射到指定范围,如 [0,1][0, 1][0,1] |
| 公式 | $$x^\prime=\frac{x-u}{\sigma}$$ | $$x^\prime = \frac{x - \min(x)}{\max(x) - \min(x)}$$ |
| 适用场景 | 适用于梯度下降、统计分析模型;数据接近正态分布时效果更佳 | 适用于数据分布无明显规律,且需要范围限制的模型 |
| 对异常值敏感性 | 对异常值相对不敏感 | 对异常值敏感 |
| 常见算法 | 逻辑回归、支持向量机、神经网络 | KNN、决策树、SVM(核函数)等 |
标准化的作用
使特征分布一致
通过标准化,所有特征的数据分布被调整为均值为 0、方差为 1。
这样不同特征的量纲差异被消除,算法不再被某些特征的极端数值主导。
提高梯度下降法的收敛速度
在优化算法(如梯度下降法)中,标准化后的数据能够避免特征值大小不均导致的震荡现象,从而加快收敛速度。
特别适用于线性回归、逻辑回归和神经网络等模型。
适用于基于数据分布的模型
- 标准化能够突出数据的统计特性,适合需要依据正态分布假设的模型,如:
- 支持向量机(SVM)
- 主成分分析(PCA)
- 线性判别分析(LDA)
- 标准化能够突出数据的统计特性,适合需要依据正态分布假设的模型,如:
便于特征重要性比较
- 通过标准化,不同量纲的特征被转换到统一的分布,可以直接比较特征的重要性或相关性。
归一化的作用
将数据压缩到特定范围
归一化将数据映射到 [0,1] 或其他范围(如[−1,1]),便于模型处理固定范围的数据。
如在深度学习中,图像像素通常被归一化到 [0,1],便于网络处理。
适用于基于距离的算法
距离度量(如欧几里得距离、余弦相似度)对数据的绝对值大小敏感,归一化可以避免某些特征的范围过大导致的距离失衡。
常用于:
- K 最近邻算法(KNN)
- K 均值聚类
- 支持向量机(核函数模式)
增强数值计算的稳定性
- 某些算法在进行矩阵运算时,特征值范围太大可能导致数值计算不稳定(如溢出问题)。归一化可以降低这种风险。
适应模型对输入范围的要求
- 某些模型对输入特征范围有固定要求。例如:
- 神经网络中激活函数(如 Sigmoid、Tanh)需要输入范围在 [0,1] 或 [−1,1] 之间。
- 支持向量机(SVM)核函数计算通常要求输入在特定范围内。
- 某些模型对输入特征范围有固定要求。例如:
| 效果维度 | 标准化后的作用 | 归一化后的作用 |
|---|---|---|
| 特征分布一致性 | 将不同特征调整为均值为 0、方差为 1 的正态分布 | 数据分布不变,但数值被压缩到指定范围 |
| 处理范围问题 | 不解决范围问题,只调整分布 | 消除数值范围的差异,统一到特定范围 |
| 适用场景 | 梯度下降、统计分析模型、正态分布假设相关模型 | 基于距离的算法、输入范围有要求的模型 |
| 敏感性 | 对异常值不敏感 | 对异常值敏感 |
| 实际应用 | PCA、SVM、回归模型、神经网络等 | KNN、K-means、神经网络的激活函数等 |