对于线性模型来说,对特征做数据归一化是为了使不同的特征处于同样的量级范围内,不至于出现某些特征所占比重过大,从而主导预测结果。

另外,归一化可以提升收敛速度
对于梯度下降优化的算法,如果我们的数据没有做归一化,会导致特征空间的不规则性,求最优解过程中,很可能会导致Z字形路线,需要迭代多次才能收敛。
在这里插入图片描述
归一化之后,在梯度下降进行求解时能较快的收敛。
在这里插入图片描述

归一化方法:
1)x=(x−min)/(max−min)
这种方法适用于数值比较集中的情况。这种方法有个缺陷,如果max和min不稳定,很容易使得归一化结果不稳定,使得后续使用效果也不稳定。实际使用中可以用经验常量值来替代max和min。
2)x=(x-μ)/σ
特征属性减去均值,除以方差。

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

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐