【转载】哪些机器学习算法需要归一化

Part 1:

机器学习中需要归一化的算法有SVM,逻辑回归,神经网络,KNN,线性回归,而树形结构的不需要归一化,因为它们不关心变量的值,而是关心变量分布和变量之间的条件概率,如决策树,随机森林,对于树形结构,它的数值缩放不影响分裂点的位置,对树模型的结构不造成影响。树模型的构造是通过寻找最优分裂点构成的,而且树模型不能进行梯度下降,因为树模型是阶跃的,阶跃是不可导的,并且求导没意义,也不需要归一化。
2、对于那些需要归一化的模型,主要是因为特征值相差很大时,运用梯度下降,损失等高线是椭圆形,需要进行多次迭代才能达到最优点,如果进行归一化了,那么等高线就是圆形的,促使SGD往原点迭代,从而导致需要迭代次数较少。

3、归一化的方法。
线性函数归一化,对原始数据进行线性变换,使结构映射到0,1范围内,归一化的公式是,Xnorm=X-Xmin/(Xmax-Xmin)
0均值归一化,原始数据映射到均值为0,标准差为1的分布上,假设 均值为u,标准差为r,归一化的公式就是(x-u)/r
对数函数转换:
y=log10(x)
反余切函数转换
y=arctan(x)*2/pi

4、归一化的目的:
1、加快梯度下降求解最优解的速度
2、归一化有可能提高精度
5、标准化和归一化的区别
标准化是依照特征矩阵的列处理数据,其通过求z-score的方法,将样本的特征值转换到同一量纲下。
标准化在于提高迭代速度,降低不同维度之间影响权重不一致的问题。
归一化,依据特征矩阵的行处理数据,目的在于样本向量点乘运算或其他核函数计算相似性时,拥有统一的标准,也就是说转化为单位向量。

Part1原文链接:https://blog.csdn.net/u014535528/article/details/82977653


Part 2:

哪些机器学习算法不需要做归一化?

概率模型(树形模型)不需要归一化,因为它们不关心变量的值,而是关心变量的分布和变量之间的条件概率,如决策树、RF。而像Adaboost、SVM、LR、Knn、KMeans之类的最优化问题就需要归一化。

Part2原文链接:https://blog.csdn.net/JonyHwang/article/details/80983468

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值