数据预处理之标准化方法

        评价是现代社会各领域的一项经常性的工作,是科学做出管理决策的重要依据。随着人们研究领域的不断扩大,所面临的评价对象日趋复杂,如果仅依据单一指标对事物进行评价往往不尽合理,必须全面地从整体的角度考虑问题,多指标综合评价方法应运而生。所谓多指标综合评价方法,就是把描述评价对象不同方面的多个指标的信息综合起来,并得到一个综合指标,由此对评价对象做一个整体上的评判,并进行横向或纵向比较。

        而在多指标评价体系中,由于各评价指标的性质不同,通常具有不同的量纲和数量级。当各指标间的水平相差很大时,如果直接用原始指标值进行分析,就会突出数值较高的指标在综合分析中的作用,相对削弱数值水平较低指标的作用。因此,为了统一比较的标准,保证结果的可靠性,我们在分析数据之前,需要对原始变量进行一定的处理,即本篇将向大家介绍的数据的标准化处理,将原始数据转化为无量纲、无数量级差异的标准化数值,消除不同指标之间因属性不同而带来的影响,从而使结果更具有可比性。数据标准化处理主要包括指标一致化处理和无量纲化处理两种类型


1 指标一致化

        指标一致化处理,主要解决的是数据之间不同性质的问题。例如我们在评价多个不同指标的作用时,某一类指标,数值越大越好,我们称之为正指标,例如诊断符合率、病床平均周转次数等指标;

        另有一类指标,数值越小越好,我们称之为逆指标,例如平均住院日、围产期婴儿死亡率等指标。

        在这种情况下,如果同时评价这两类指标的综合作用,由于他们的作用方向不同,将不同性质的指标作用直接相加,并不能正确反映不同作用方向产生的综合结果,此时我们就需要对逆指标进行一致化处理,改变逆指标的性质和作用方向,使所有指标作用方向一致化,从而得出适宜的结果。

        针对逆指标一致化处理的方法主要有两种:

  • 倒数一致化,即对原始数据取倒数, X ′ = 1 / x ( x > 0 ) X' = 1 / x(x>0) X=1/xx>0
  • 减法一致化,即利用该指标允许范围内的一个上界值(M),依次减去每一个原始数据, X ′ = M − x X' = M - x X=Mx

        温馨提示: 倒数一致化常常会改变原始数据的分散程度,这种改变会夸大或缩小原始数据的实际差异,对于进行综合评价是不利的。而减法一致化则不改变数据的分散程度,因此结果较倒数一致化而言会更加稳定。


2 无量纲化处理

        数据无量纲化处理,主要解决数据之间可比性的问题,这也是我们对数据进行标准化处理的最主要的一个目的。

        在实际的应用中,由于不同变量自身的量纲不同,数量级存在较大差异,在进行综合评价时,不同变量所占的作用比重也会有所不同。例如,某个变量的数值在1-10之间,而另一个变量的数值范围在100-1000之间,此时若进行综合评价,从数值的角度,很有可能数值变化范围大的变量,它的绝对作用就会较大,所占的比重较大。

        因此,为了消除量纲、变量自身变异和数值大小的影响,比较不同变量之间的相对作用,就需要对数据进行无量纲化处理,将其转化为无量纲的纯数值来进行评价和比较。

2.1 中心化

        中心化这种量纲处理方式可能在数据预处理中使用较多,此种处理方式会让数据呈现出一种特征,即数据的平均值一定为0。针对数据进行了压缩大小处理,同时还让数据具有特殊特征(平均值为0)。其计算公式为: x − μ x-\mu xμ

2.2 归一化

        主要是为了数据处理方便提出来的,把数据映射到0~1范围之内处理,转换函数如下:

y i = x i ∑ 1 n x i 2 y_i=\frac{x_i}{\sum_1^n{x_i^2}} yi=1nxi2xi
        则新序列 y 1 , y 2 , … , y n ∈ [ 0 , 1 ] y_1,y_2,…,y_n\in[0,1] y1,y2,,yn[0,1]且无量纲,并且显然有 ∑ i n y i = 1 \sum_{i}^{n}y_i=1 inyi=1

        归一化方法在确定权重时经常用到。针对实际情况,也可能有其他一些量化方法,或者要综合使用多种方法,总之最后的结果都是无量纲化。

2.3 标准化

        数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间。在某些比较和评价的指标处理中经常会用到,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权。其中最典型的就是数据的标准化处理,即将数据统一映射到 [ 0 , 1 ] [0,1] [0,1] [ − 1 , 1 ] [-1, 1] [1,1]区间上,常见的数据标准化的方法有:min-max标准化(Min-max normalization),log函数转换,atan函数转换,z-score标准化(zero-mena normalization,此方法最为常用),模糊量化法。本文只介绍min-max法(规范化方法),z-score法(正规化方法),比例法(归一化方法)。

2.3.1 min-max标准化

        Min-Max normalization也称离差标准化法,是消除变量量纲和变异范围影响最简单的方法。对原始数据的线性变换,使结果落到[0,1]区间,转换函数如下:
y i = x i − m i n { x j } m a x { x j } − m i n { x j } y_i=\frac{x_i-min\{x_j\}}{max\{x_j\}-min\{x_j\}} yi=max{xj}min{xj}ximin{xj}

        其中 m a x x j max{x_j} maxxj为样本数据的最大值, m i n x j min{x_j} minxj为样本数据的最小值。这种方法有一个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。

        经过离差标准化方法处理后,无论原始数据是正值还是负值,该变量各个观察值的数值变化范围都满足0≤X’≤1,并且正指标、逆指标均可转化为正向指标,作用方向一致。但是如果有新数据加入,就可能会导致最大值(Xmax)和最小值(Xmin)发生变化,就需要进行重新定义,并重新计算离差(R)。

2.3.2 z-score 标准化

        当我们遇到某个指标的最大值和最小值未知的情况时,或者有超出取值范围的离群数值的时候,就不再适宜计算极差了,此时我们可以采用另一种数据标准化最常用的方法,即Z-score标准化,也叫标准差标准化法。 经过处理的数据符合标准正态分布,即均值为0,标准差为1,其转化函数为:
y i = x i − μ σ y_i=\frac{x_i-\mu}{\sigma} yi=σxiμ
        其中 μ \mu μ为所有样本数据的均值, μ = ∑ i = 1 n x i n \mu=\frac{\sum_{i=1}^{n}x_i}{n} μ=ni=1nxi, σ \sigma σ为所有样本数据的标准差, σ = ( 1 n − 1 ∑ i = 1 n ( x i − m u ) 2 ) \sigma=\sqrt(\frac{1}{n-1}\sum_{i=1}{n}(x_i-mu)^2) σ=( n11i=1n(ximu)2)

        温馨提示:经过Z-score标准化后,各变量将有约一半观察值的数值小于0,另一半观察值的数值大于0,变量的平均数为0,标准差为1。经标准化的数据都是没有单位的纯数量。它是当前用得最多的数据标准化方法。如果特征非常稀疏,并且有大量的0(现实应用中很多特征都具有这个特点),Z-score标准化的过程几乎就是一个除0的过程,结果不可预料。

2.3.3 log函数转换

        通过以10为底的log函数转换的方法同样可以实现归一化,先对变量的观察值做变换, x = log ⁡ 10 ( x ) x=\log_{10}(x) x=log10(x),然后除以 log ⁡ 10 ( m a x ) \log_{10}(max) log10(max)max为样本数据最大值,并且所有的数据都要大于等于1,这个结果就会落到[0,1]区间上。其转化函数为:
X ′ = log ⁡ 10 X log ⁡ 10 m a x X'=\frac{\log_{10}X}{\log_{10}max} X=log10maxlog10X

2.3.4 atan函数转换

        用反正切函数也可以实现数据的归一化,使用这个方法需要注意的是如果想映射的区间为[0,1],则数据都应该大于等于0,小于0的数据将被映射到[-1,0]区间上。其转化函数为:
X ′ = a r c t a n ( X ) ∗ 2 π X'=\frac{arctan(X)*2}{\pi} X=πarctan(X)2


小结

1. 哪些算法需要归一化

  • 涉及或隐含距离计算的算法,比如K-means、KNN、PCA、SVM等,一般需要进行归一化
  • 梯度下降算法,梯度下降的收敛速度取决于:参数的初始位置到local minima的距离,以及学习率η的大小,其实还是距离的计算。
  • 采用sigmoid等有饱和区的激活函数,如果输入分布范围很广,参数初始化时没有适配好,很容易直接陷入饱和区,导致梯度消失,所以才会出现各种BN,LN等算法。

2. 哪些算法不需要归一化

        与距离计算无关的基于树的模型,比如决策树、随机森林等,树中节点的选择只关注当前特征在哪里切分对分类更好,即只在意特征内部的相对大小,而与特征间的相对大小无关。其实归一化的作用就是由绝对变为了相对,所以可以说归一化对于树型模型不那么重要,是一个可选项或者说可以作为一个超参数在训练时进行选择。


参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

长路漫漫2021

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值