浅谈“归一化”处理

  • 目录

    What

    什么是归一化

    Why

    为什么数值类型的特性要进行归一化处理

    How

    归一化处理的过程

    概念及成因:

  • 归一化(Normalization)也称为数据规范化。因为不同评价指标通常具有不同的“量纲”,数值之间的差别往往很大,如果不进行处理,则很可能会影响到数据分析的结果;为了消除指标之间的量纲和取值范围差异的影响,需要进行规范化处理,将数据按照相应比例进行缩放,使之落入一个特定的区域(映射于指定区域),从而利于进行综合分析。(比如,小白的月薪为3K-5K,大牛的月薪为30K-50K,对于这一类属性值的差异较大,我们可以先将其属性值映射到[-1,1]或[0,1]内,再进一步分析!

    常见的数据规范化方法

    (1)最小-最大规范化

  •  

    最小-最大规范化也称为离差标准化,是对原始数据的线性变换,将属性值映射到【0,1】之间。

    (2)零-均值规范化

     

  •  

    零-均值规范化也称标准差标准化,经过处理的数据的均值为0,标准差为1。

    (3)小数定标规范化
  • 通过移动属性值的小数位数,将属性值映射到【-1,1】之间,移动的小数位数取决于属性值绝对值的最大值。

扩展:树模型是否需要做归一化等预处理操作?

1、标准化z-score

公式:(x - mean) / std

作用:将特征转化为均值为0,方差为1的数据。

2、最小最大规范化

公式:(x - min) / (max - min)

作用:将数据转化为[0, 1]区间。

3、概率模型

树模型不需要做归一化处理,因为此类模型不关心变量的值,只关心变量分布和变量之间的条件概率。比如:决策树、随机森林,但Adaboost、Gbdt、Xgboost、SVM、Linear Regression、kNN、kMeans之类的最优化问题是需要做归一化处理的。

4、归一化

基于参数或者距离的模型都需要进行归一化处理,通过L1-norm或L2-norm将数值映射到[0, 1]区间。归一化化就是要把你需要处理的数据经过处理后限制在你需要的一定范围内。 

(1)归一化后加快了梯度下降求最优解的速度,在梯度下降进行求解时能较快的收敛。如果不做归一化,梯度下降过程容易出现锯齿状,很难收敛甚至不能收敛。

(2)把有量纲表达式变为无量纲表达式, 有可能提高精度。一些分类器需要计算样本之间的距离(如欧氏距离),例如kNN,k-Means。如果一个特征值域范围非常大,那么距离计算就主要取决于这个特征,从而与实际情况背道而驰。

5、标准化(Standardization)和归一化(Normalization)的区别

(1)标准化是依据特征矩阵的列处理数据,通过求其z-score的方法,将样本的特征值转换到同一量纲;

(2)归一化是依据特征矩阵的行处理数据,其目的在于样本向量做点乘运算,有统一的标准。

  • 0
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值