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

对数值类型的特征做归一化可以将所以的特征都统一到一个大致相等的数值区间内。

比如x1的范围是[0,10],x2的范围是[0,100]。 两者的量纲是不等的,可想而知相比于x1,x2需要更多的迭代步数才能收敛到最佳值,从而使最后的结果更青睐于x2特征。
而当归一化后,x1,x2的量纲相等,不仅能减少迭代步数,还能使两种特征对最后的结果影响相同。

最常用的方法有2种

(1)线性函数归一化:

对原始数据进行线性变换,使结果映射到【0,1】的范围,实现对原始数据的等比缩放。

Xnorm=\frac{X-Xmin}{Xmax-Xmin}

X为输入数据,其他分别是最大值  最小值   输出结果,结果就是把所有X 的值等比线性换算到[0,1]区间 

(2)零均值归一化:

·把数据映射到均值为0,标准差为1的分布上。具体来说,假设原始特征的均值为u,标准差为\delta,那么归一化公式

                              z=\frac{x-u}{\delta }

标准差:所有数减去平均值,它的平方和除以数的个数(或个数减一),再把所得值开根号,就是1/2次方,得到的数就是这组数的标准差。

在实际应用中,通过梯度下降法求解的模型通常需要归一化的,包括线性回归,逻辑回归,支持向量机,神经网络等模型。

但是对于决策树模型则并不适用,决策树在进行节点分裂时主要依据数据集关于特征X的信息增益比,而信息增益比跟特征是否经过归一化是无关的,因为归一化并不能改变样本在特征X上的信息增益。

猜你喜欢

转载自blog.csdn.net/qq_29678299/article/details/88659616
今日推荐