机器学习算法在什么情况下需要归一化?

转载:http://www.cnblogs.com/LBSer/p/4440590.html

机器学习模型被互联网行业广泛应用,一般做机器学习应用的时候大部分时间是花费在特征处理上,其中很关键的一步就是对特征数据进行归一化,为什么要归一化呢?维基百科给出的解释:1)归一化后加快了梯度下降求最优解的速度;2)归一化有可能提高精度。下面我简单扩展解释下这两点。

1 归一化为什么能提高梯度下降法求解最优解的速度?
斯坦福机器学习视频做了很好的解释:https://class.coursera.org/ml-003/lecture/21

如下图所示,蓝色的圈圈图代表的是两个特征的等高线。其中左图两个特征X1和X2的区间相差非常大,X1区间是[0,2000],X2区间是[1,5],其所形成的等高线非常尖。当使用梯度下降法寻求最优解时,很有可能走“之字型”路线(垂直等高线走),从而导致需要迭代很多次才能收敛;

而右图对两个原始特征进行了归一化,其对应的等高线显得很圆,在梯度下降进行求解时能较快的收敛。

因此如果机器学习模型使用梯度下降法求最优解时,归一化往往非常有必要,否则很难收敛甚至不能收敛。

这里写图片描述

2 归一化有可能提高精度
一些分类器需要计算样本之间的距离(如欧氏距离),例如KNN。如果一个特征值域范围非常大,那么距离计算就主要取决于这个特征,从而与实际情况相悖(比如这时实际情况是值域范围小的特征更重要)。

3 归一化的类型
1)线性归一化

这里写图片描述
这种归一化方法比较适用在数值比较集中的情况。这种方法有个缺陷,如果max和min不稳定,很容易使得归一化结果不稳定,使得后续使用效果也不稳定。实际使用中可以用经验常量值来替代max和min。

2)标准差标准化(standardScale)
  经过处理的数据符合标准正态分布,即均值为0,标准差为1,其转化函数为:

这里写图片描述

  其中μ为所有样本数据的均值,σ为所有样本数据的标准差。

3)非线性归一化
经常用在数据分化比较大的场景,有些数值很大,有些很小。通过一些数学函数,将原始值进行映射。该方法包括 log、指数,正切等。需要根据数据分布的情况,决定非线性函数的曲线,比如log(V, 2)还是log(V, 10)等。

此外:需要弄清楚哪些算法模型在训练之前需要进行归一化,例如SVM需要归一化,而DT不需要归一化等,这也是提升算法应用能力的必备能力之一。

  • 4
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
机器学习需要进行归一化情况取决于具体的算法。一般来说,对于一些算法如SVM、逻辑回归、神经网络、KNN和线性回归等,需要进行归一化处理。这是因为在这些算法中,特征值的尺度差异很大时,可能会对模型的性能产生不良影响。归一化可以将特征值映射到一个统一的范围内,以确保不同特征之间的权重是平衡的,避免某些特征对模型的影响过大。此外,归一化还可以加速梯度下降的收敛过程,减少迭代次数,提高训练效率。然而,对于树形结构的算法,如决策树和随机森林等,并不需要进行归一化处理。这是因为这些算法不关心变量的具体值,而是关心变量之间的条件概率和分裂点的位置。对于树模型而言,样本点的数值缩放不会影响分裂点的位置,也不会对模型的结构造成影响。另外,树模型不需要进行梯度下降,因为树模型是阶跃的,而阶跃是不可导的,也不需要进行归一化处理。因此,在机器学习中,是否需要进行归一化处理要根据具体的算法数据情况来决定。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [【深度学习/机器学习】为什么要归一化归一化方法详解](https://blog.csdn.net/qq_51392112/article/details/129091683)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [机器学习哪些算法需要归一化?](https://blog.csdn.net/weixin_43593330/article/details/105751132)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值