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

机器学习中需要归一化的算法有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的方法,将样本的特征值转换到同一量纲下。
标准化在于提高迭代速度,降低不同维度之间影响权重不一致的问题。
归一化,依据特征矩阵的行处理数据,目的在于样本向量点乘运算或其他核函数计算相似性时,拥有统一的标准,也就是说转化为单位向量。

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

标准化和归一化什么区别? https://www.zhihu.com/question/20467170

机器学习数据归一化的的方法有哪些?适合于什么样的数据?  https://www.zhihu.com/question/26546711#answer-20247135

归一化和标准化大全  https://www.jianshu.com/p/c1e112f3f57f

感觉很多回答中,标准化、归一化都是混乱的。。。

你可能感兴趣的:(深度学习,标准化,归一化)