Normalization(归一化)

就是把所有特征的数值都拉到同一个尺度,别让某一列的大数字把模型带跑偏了

亦作、亦称:归一化 · min-max scaling · 最小最大缩放 · feature scaling · 特征缩放 · data normalization

归一化将原始特征值映射到统一尺度,是机器学习数据预处理的核心步骤之一。它能加速模型收敛、提升数值稳定性,并让不同特征在训练中获得公平权重。

概述

归一化(Normalization)是将特征值缩放到统一数值范围的数据预处理技术。

  • 目标:消除不同特征因量纲差异对模型的影响,使各特征在训练中平等竞争
  • 适用场景:KNN、SVM、逻辑回归、神经网络等对特征尺度敏感的算法
  • 广义含义:包含 min-max scaling、Z-score 标准化,以及深度学习中的 Batch Norm / Layer Norm 等
  • 核心效果:改善损失曲面形状,使梯度下降收敛更快、更稳定

工作原理

归一化通过数学变换将原始数值映射到目标范围。

  • min-max scaling:公式 X' = (X - X_min) / (X_max - X_min),结果落在 [0, 1]
  • Z-score 标准化:公式 X' = (X - μ) / σ,结果均值为 0、标准差为 1
  • L2 归一化:将样本向量缩放至单位范数,常用于文本、图像嵌入的相似度计算
  • 关键原则:必须用训练集统计量(min、max、μ、σ)对验证集/测试集做相同变换,严禁数据泄漏

主要类型与变体

不同场景下有多种归一化方法可选。

  • min-max scaling:保留原始分布形状,对异常值敏感;适合图像像素值(0255 → 01)
  • Z-score 标准化(Standardization):对异常值鲁棒性更强,适合线性模型和 SVM
  • Robust Scaling:使用中位数和四分位距,对离群点更稳健
  • Batch Normalization(BN):在深度网络每一层对 mini-batch 激活值归一化,提出于 2015 年
  • Layer Normalization(LN):对单个样本的特征维度归一化,适合 RNN 和 Transformer

应用场景

归一化在机器学习各子领域均有广泛应用。

  • 表格数据预处理:KNN、SVM、线性回归等算法在归一化后性能显著提升
  • 图像处理:像素值从 [0, 255] 归一化到 [0, 1] 或 [-1, 1],加速 CNN 训练
  • NLP / Transformer:Layer Norm 是 BERT、GPT 等模型的标配组件
  • 推荐系统:用户行为计数等数值特征经归一化后用于特征交叉
  • 强化学习:对状态观测归一化,防止奖励信号和梯度被异常值主导

归一化与标准化的区别

「归一化」和「标准化」在中文语境常被混用,需注意区分。

  • 归一化(min-max):输出范围固定为 [0, 1],受极端值影响大;适合已知上下界的特征
  • 标准化(Z-score):输出无固定范围,对离群点更鲁棒;适合正态分布特征
  • 深度学习中的「归一化层」:Batch Norm / Layer Norm 既不是 min-max 也不是 Z-score,而是对激活值做自适应归一化并引入可学习参数 γ 和 β
  • 选择依据:数据分布特点、是否有异常值、算法对范围的要求

局限与误区

归一化使用不当会引入错误,需特别注意以下问题。

  • 数据泄漏:用全量数据(包含测试集)计算统计量,会造成测试集信息污染,结果虚高
  • 对异常值敏感:min-max scaling 遇到极端值会将正常值压缩到很小范围,建议先做异常值处理
  • 树模型不需要:决策树、随机森林、XGBoost 基于分裂点而非距离,归一化对其无帮助
  • 顺序错误:应在训练集上 fit,再 transform 训练集和测试集;切勿在整个数据集上 fit
  • 混淆归一化与正则化:Normalization(归一化)是数据处理;Regularization(正则化)是防止过拟合的模型约束,两者完全不同

发展脉络

归一化技术随深度学习的演进而不断扩展。

  • 1990s 以前:min-max scaling 和 Z-score 标准化已广泛用于统计学和早期机器学习
  • 2015 年:Ioffe & Szegedy 提出 Batch Normalization,解决深层网络内部协变量偏移(Internal Covariate Shift),成为深度学习训练标配
  • 2016 年:Ba et al. 提出 Layer Normalization,解决 BN 在小批量和 RNN 中的局限
  • 2018 年:Group Normalization(何恺明等)提出,适合计算机视觉中 batch size 受限的场景
  • 2019 年至今:Transformer 架构中 Pre-LN(前置层归一化)取代 Post-LN 成为主流,进一步稳定大模型训练

常见误解

日常交流中容易听到的简化说法,未必准确,但能帮助理解误解从何而来。

  • 「就是把所有特征的数值都拉到同一个尺度,别让某一列的大数字把模型带跑偏了」
  • 「min-max 归一化就是把最小值变成 0、最大值变成 1,其他按比例缩放」
  • 「Batch Norm 是归一化的升级版,专门用在神经网络里,让每一层的输入都保持稳定分布」

相关术语

和本术语关联紧密的其他词条,便于串联理解。

延伸阅读

从知识库精选 3 篇文章,帮助深入理解该术语。

  1. 1

    正则化:BatchNorm, LayerNorm, Dropout

    从 Dropout 到 LayerNorm,掌握防止过拟合的核心技术

  2. 2

    反向传播:神经网络如何学习

    深入理解反向传播算法的数学原理、计算图实现和训练中的关键问题

  3. 3

    图神经网络 GNN:GCN, GAT, GraphSAGE

    从图卷积到注意力图网络,掌握非欧数据的深度学习方法

外部参考

维基百科:查看「Normalization」词条

本页内容为本站原创撰写;维基百科链接仅作延伸参考。