特征工程--无量纲化

为什么要进行无量纲化,一般的,利用较小的单位表示属性将导致该属性具有较大值域,因此趋向于使这样的属性具有较大的影响或较高的权重,为避免对度量单位选择的依赖性,数据应该规范化,或者标准化。
规范化数据试图赋予所有的属性相等的权重。对于涉及到神经网络的分类算法或者基于距离度量的分类如近邻分类或者聚类特别有用。如果使用神经网络规范化将有助于学习速度。对于基于距离度量的算法规范化可以防止聚集有较大初始值域的属性与较小初始值域相比权重过大。
规范化方法有最小-最大规范化z分数规范化按小数定标规范化

1.最小-最大规范化

属性为A具有n个观测值 v 1 , v 2 . . . . . v n v_1,v_2.....v_n v1,v2.....vn
v i ′ = v i − m i n A m a x A − m i n A ( n e w _ m a x A − n e w _ m i n A ) + n e w _ m i n A v_i^{'}=\frac{v_i-min_A}{max_A-min_A}(new\_max_A-new\_min_A)+new\_min_A vi=maxAminAviminA(new_maxAnew_minA)+new_minA
其中 v i ′ v_i^{'} vi是规范化后结果,小括号是你要打算规范化到的新区间最大值与最小值。
例如假设数据集中最大为10,最小为2,打算将5规范化到[0,1]则
5 − 2 10 − 2 ∗ ( 1 − 0 ) + 0 = 0.375 \frac{5-2}{10-2}*(1-0)+0=0.375 10252(10)+0=0.375
最小-最大化规范化保持原始数据值之间的联系。但容易受到噪声的影响,鲁棒性较差,例如一个特征的取值范围应在0-10之间,但有个噪声为20,则会造成规范化的错误。由于现在的大数据中的数据是不断流动的变化的,这就会造成有过多的噪声或者最大值,最小值的变化,所以这种方法适合小型数据。

2.z分数(z-zero)规范化

公式
v i ′ = v i − 均 值 σ A v_i^{'}=\frac{v_i- 均值 }{\sigma_A} vi=σAvi
其中均值为特征的均值,分母为标准差,该公式揭示了数据与数据均值之间差了几个标准差,此方法会将数据的均值规范化为0,标准差为1,该方法适用于数据量较大的今天,当某个属性最大值,最小值不知道或者离群点左右了最小-最大化时,该方法是有用的。
z-分数规范化还可以用绝对偏差来代替,从而使得更有鲁棒性,属性A的均值绝对偏差为, s A = ∣ v 1 − 均 值 ∣ + ∣ v 2 − 均 值 ∣ + . . . + ∣ v n − 均 值 ∣ s A s_A=\frac{|v_1-均值|+|v_2-均值|+...+|v_n-均值|}{s_A} sA=sAv1+v2+...+vn
这样使用均值绝对差后公式变为
v i ′ = v i − 均 值 s A v_i^{'}=\frac{v_i- 均值 }{s_A} vi=sAvi对于离群点,绝对偏差比标准差更具有鲁棒性,因为标准差为平方相加扩大了离群点的误差,而绝对偏差降低了离群点影响。

3.小数定标规范化

假设数据是由10到99,有两位,因此利用100除每个值,如10-100=0.1。

参考:
1.https://blog.csdn.net/onthewaygogoing/article/details/79871559
2.https://www.cnblogs.com/zhaokui/p/5112287.html
3.《数据挖掘概念与技术》第三版

你可能感兴趣的:(数据挖掘)