[机器学习笔记] 数据标准化方法

数据标准化方法

数据标准化

在数据分析之前,我们通常需要先将数据标准化(Normalization)利用标准化后的数据进行数据分析。数据标准化也就是统计数据的指数化。数据标准化处理主要包括数据同趋化处理和无量纲化处理两个方面。

目前数据标准化方法有多种,归结起来可以分为直线型方法(如极值法、标准差法)、折线型方法(如三折线法)、曲线型方法(如半正态性分布)。不同的标准化方法,对系统的评价结果会产生不同的影响,然而不幸的是,在数据标准化方法的选择上,还没有通用的法则可以遵循。


为什么要做数据标准化?

所谓多指标综合评价方法,就是把描述评价对象不同方面的多个指标的信息综合起来,并得到一个综合指标,由此对评价对象做一个整体上的评判,并进行横向或纵向比较。

而在多指标评价体系中,由于各评价指标的性质不同,通常具有不同的量纲和数量级。当各指标间的水平相差很大时,如果直接用原始指标值进行分析,就会突出数值较高的指标在综合分析中的作用,相对削弱数值水平较低指标的作用。因此,为了保证结果的可靠性,需要对原始指标数据进行标准化处理。


数据标准化方法

数据同趋化处理主要解决不同性质数据问题,对不同性质指标直接加总不能正确反映不同作用力的综合结果,须先考虑改变逆指标数据性质,使所有指标对测评方案的作用力同趋化,再加总才能得出正确结果。

数据无量纲化处理主要解决数据的可比性。

数据标准化的方法有很多种,常用的有“最小—最大标准化”(Min-max Normalization)、“Z-score标准化”和“按小数定标标准化”等。经过上述标准化处理,原始数据均转换为无量纲化指标测评值,即各指标值都处于同一个数量级别上,可以进行综合测评分析。

1、min-max标准化(Min-max Normalization)

也叫离差标准化,是对原始数据的线性变换,使结果落到[0,1]区间,转换函数如下:

 

离差标准化

  • 其中max为样本数据的最大值,min为样本数据的最小值。
  • 这种方法有一个缺陷就是当有新数据加入时,可能导致max和min的变化,需要重新定义。

2、log函数转换

通过以10为底的log函数转换的方法同样可以实现归一下,具体方法看了下网上很多介绍都是x=log10(x),其实是有问题的,这个结果并非一定落到[0,1]区间上,应该还要除以log10(max)*,max为样本数据最大值,并且所有的数据都要大于等于1。

3、atan函数转换

用反正切函数也可以实现数据的归一化,使用这个方法需要注意的是如果想映射的区间为[0,1],则数据都应该大于等于0,小于0的数据将被映射到[-1,0]区间上。

4、z-score 标准化(zero-meannormalization)

而并非所有数据标准化的结果都映射到[0,1]区间上,其中最常见的标准化方法就是Z标准化;也是SPSS中最为常用的标准化方法,也叫标准差标准化

z-score 标准化

  • 这种方法基于原始数据的均值(mean)和标准差(standard deviation)进行数据的标准化。将A的原始值x使用z-score标准化到x’。
  • z-score标准化方法适用于属性A的最大值和最小值未知的情况,或有超出取值范围的离群数据的情况。
  • spss默认的标准化方法就是z-score标准化。
  • 用Excel进行z-score标准化的方法:在Excel中没有现成的函数,需要自己分步计算,其实标准化的公式很简单。

步骤如下:
1.求出各变量(指标)的算术平均值(数学期望)xi和标准差si ;
2.进行标准化处理:
zij=(xij-xi)/si
其中:zij为标准化后的变量值;xij为实际变量值。
3.将逆指标前的正负号对调。
标准化后的变量值围绕0上下波动,大于0说明高于平均水平,小于0说明低于平均水平。

5、归一化方法

 


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章