【机器学习300问】12、为什么要进行特征归一化?

当线性回归模型的特征量变多之后,会出现不同的特征量,然而对于那些同是数值型的特征量为什么要做归一化处理呢?

一、为了消除数据特征之间的量纲影响

使得不同指标之间具有可比性。例如,分析一个人的身高和体重对健康的影响,如果使用米(m)和于克(kg)作为单位,那么身高特征会在 1.6m ~ 1.8m的数值范围内,体重特征会在50~ 100kg 的范围内,分析出来的结果显然会倾向于数值差别比较大的体重特征。想要得到更为准确的结果,就需要进行特征归一化(Normalization)处理,使各指标处于同一个数值量级,以便进行分析。

二、为了让模型训练更迅速

归一化后的特征在数值上更接近,这可以使得模型训练过程中的梯度下降步长更加稳定,同时避免了某些特征因数值过大而在梯度下降过程中占据主导地位。
特征归一化对梯度下降有影响

三、为了使特征间的权重更公平

在一些算法中,比如逻辑回归,如果不进行归一化,那么特征的重要性可能会被特征的尺度所影响。即那些取值范围较大的特征可能会被模型认为是更重要的特征,从而导致在计算距离时,尺度较大的特征将会导致距离主要由它来决定,这可能会掩盖掉其他特征的信息,降低模型的预测精度。

四、归一化最常用的两种方法

对数值型特征做归一化处理可以将所有特征都统一到一个大致相同的区间内。

(1)线性函数归一化(Min-Max Scaling)

这是最常见的归一化形式,也被称为离差标准化,是把原始数据线性变换到 0, 1 区间。实现对数据的等比缩放。归一化公式如下

其中的X是原始数据,Xmax是其中的最大值,Xmin是其中的最小值。

(2)零均值归一化(Z-Score Normalization)

它会将原始数据规范化为标准正态分布(均值为0,标准差为1),适合于原始数据的分布不满足正太分布的情况。其归一化公式如下

其中的是均值,是标准差。经过Z-Score Normalization,数据会被映射到一个均值为0,标准差为1的分布上。

(3)两种归一化的对比

这两种归一化方法在不同的场景下有不同的优势:

  • Min-Max Scaling 更适合于特征的最大值和最小值有明确意义且已知的情况下,或者是输入数据的上下界很重要时。
  • Z-Score Normalization 对于那些期望符合正态分布的模型或算法更有利,同时它不会改变数据的分布形状,而是将其调整到标准正态分布的形式,这有助于消除由于特征度量单位不同造成的偏差,并突出数据的内在结构。
相关推荐
一点一木4 分钟前
第 23 届 ChinaJoy 刚结束,我把 965 个展台做成了 3D 云展馆
前端·人工智能
月光船幽幽6 分钟前
呼吸孔设计重塑系统稳定性
python·科技·算法
茨球是只猫10 分钟前
A 股 AI 量化全链路系统技术拆解:分层架构、双引擎验证与低换手实盘闭环
人工智能·机器学习·架构·量化交易
拿铁铁11 分钟前
2026实操场景下平板坡口机噪音问题注意事项梳理汇总
python·电脑
饼干哥哥13 分钟前
Codex 必改的8 个基础配置
前端·人工智能·后端
ifenxi爱分析16 分钟前
GEO市场规模有多大?2026—2030年中国GEO市场规模预测
大数据·人工智能
码云之上20 分钟前
Context Engineering:让 Agent 在当前步骤看到正确的事实
前端·人工智能·前端工程化
夜雪一千24 分钟前
Python从HTML提取纯文本、去空格、比对内容是否变化:方案+合理性分析
开发语言·python·html
百度Geek说26 分钟前
面向 Coding Agent 的多仓库 Git Worktree
人工智能
张小泡泡27 分钟前
AUTO_EVAL:面向大语言模型的多层次自动化评测框架
论文阅读·人工智能·语言模型·自然语言处理·自动化·微调