为什么要对数值类型特征做归一化?

简介: 为什么要对数值类型特征做归一化?

给出一个场景

通过住户的居住面积和楼层来分析他们的居住舒适度,楼层的特征会在1-20(层)数值范围内,居住面积的特征会在30-200(平方米)数值范围内,那么根据这两种特征分析出来的数据居住面积会成为决定性更大的特征,这显然是不准确的,此时就需要我们进行特征归一化,使得各个特征处于同一个数值量级,然后再进行分析。


常用的特征归一化方法

1.最大最小归一化(Min-Max Scaling)

最大最小归一化对原始数据进行线性变换,使结果映射到[0,1]范围内,实现对原始数据的等比缩放。

image.png

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

零均值归一化会将原始数据映射到均值为0、标准差为1的分布上。

image.png

其中均值是μ ,标准差是σ 。


为什么要进行特征归一化?

借助随机梯度下降的例子来说明一下归一化的重要性。假设现在我们有两个特征x1、x2,x1的范围是[0,10],x2的范围是[0,4],在他们的学习速率相同的情况下x1的更新速度要大于x2,此时需要较多的迭代才能找到最优解;而当他们在同一数值范围内的时候,他们的更新速度就会变得更为一致,此时就更容易快速的通过梯度下降找到最优解。


用一张图片来说明一下(左边是归一化之前,右边是归一化之后):

image.png

实际应用中哪里需要归一化

可以看到上文中我用到了梯度下降来距离,可以看出归一化对梯度下降的影响是很大的,所以在实际应用中通过梯度下降求解的算法通常都是需要进行归一化的,常见的有线性回归、逻辑回归、支持向量机、神经网络等模型。


相关文章
|
9月前
|
存储 人工智能 算法
聚类的k值确定之轮廓系数
聚类的k值确定之轮廓系数
516 0
|
2月前
【视频】什么是非线性模型与R语言多项式回归、局部平滑样条、 广义相加GAM分析工资数据|数据分享(上)
【视频】什么是非线性模型与R语言多项式回归、局部平滑样条、 广义相加GAM分析工资数据|数据分享
|
2月前
|
数据可视化
R平方/相关性取决于预测变量的方差
R平方/相关性取决于预测变量的方差
|
2月前
|
数据可视化
R语言极值推断:广义帕累托分布GPD使用极大似然估计、轮廓似然估计、Delta法
R语言极值推断:广义帕累托分布GPD使用极大似然估计、轮廓似然估计、Delta法
|
2月前
|
数据可视化
R语言lasso惩罚稀疏加法(相加)模型SPAM拟合非线性数据和可视化
R语言lasso惩罚稀疏加法(相加)模型SPAM拟合非线性数据和可视化
|
2月前
【视频】什么是非线性模型与R语言多项式回归、局部平滑样条、 广义相加GAM分析工资数据|数据分享(下)
【视频】什么是非线性模型与R语言多项式回归、局部平滑样条、 广义相加GAM分析工资数据|数据分享
(二)随机变量的数字特征:探索概率分布的关键指标
(二)随机变量的数字特征:探索概率分布的关键指标
离散型随机变量和连续型随机变量及其常见分布(下)
离散型随机变量和连续型随机变量及其常见分布
|
机器学习/深度学习
离散型随机变量和连续型随机变量及其常见分布(上)
离散型随机变量和连续型随机变量及其常见分布