• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

❤️Python机器学习❤️--XGBoost模型不要求数据标准化详情

武飞扬头像
轻窕
帮助1

在使用机器学习模型之前,通常我们会对数据进行预处理,来消除noise、提升模型表现。通常根据不同模型的不同性质,需要进行的预处理也不尽相同。那么,对于当下数据分析竞赛中非常火的XGBoost来说,转化为正态分布、去除极端值、Normalization等数据预处理是否有必要呢?本文就来具体地分析一下。

一、XGBoost需要去除异常值

异常值是现实生活中不太可能取到的值,通常是人为原因导致的数据记录错误。
有一些值我们明显发现是错误的、异常的。例如一个人的身高不可能是10m,一个人的体重不可能是875kg。对于异常的数据,现实中不太可能发生的,我们需要删除。

二、基于决策树的模型与线性回归的区别

在一些经济学文献中经常用到的数据预处理方法,在决策树模型中是不需要的。主要原因是:
经济学文献中经常用到的是参数模型,它们会提前假设数据的分布,例如线性(最常见的)、指数(科布道格拉斯生产函数)、logistic(二分类问题)等等,这一分布在模型学习之前就假设为已知的、确定的、不可变的,模型学习过程中可以变的只是各个自变量的系数,也就是参数。模型回归的过程,就是找到一组参数,让这个预先假定的分布去拟合数据。因此我们对于自变量的分布、极端值等情况会有很高的要求。
但是,决策树模型并不会预先假设数据的分布,而是直接学习features和label时间的关系,直接从数据中学习。虽然决策树模型也要调整参数,但是这个是算法的参数,而不是关于数据的参数。它使得我们的注意力从数据的特点转移到算法的属性上了。

三、XGBoost不要求数据是正态分布的

基于决策树的算法对数据的分布没有要求,因为它的原理是做分段的常数预测。因此,基于决策树的算法对于features的值不敏感,它仅仅利用features的大小顺序进行预测。因此,我们不需要担心有一些features不是正态分布的。当然了,我们是可以对X进行单调变换,但是这不会影响决策树的预测。

四、XGBoost不要求去除极端值或者winsorize

对于线性模型来说,数据集的长尾特性带来的噪音确实是会影响模型表现的。但是对于基于决策树的模型来说这就不是问题了,删除那些较大或者较小的值反而会使我们的模型产生偏差。因此我们不应该去除极端值或者winsorize,否则有可能把对于分类有帮助的信息删除了。
*winsorize的含义:例如一个数据集里面某一个x的值,95%的样本都是小于100的,那么剩下5%的也就是大于100%的数全部用100表示,来去除极端值影向。
如果我们实在是担心长尾问题,那么建议通过做单调变换来解决这个问题,这样我们数据的scale就会很好看,同时也不会改变数据的顺序。例如我们可以用下面的方法来变换某一个feature:
学新通

对于比较小的x,例如-α<X<α,这个函数接近于恒等式;对于比较大的x,这个函数会将其缩小到接近于0;与此同时,这个函数还保证了单调性不变,因此不会带来信息损失。
如果我们去除极端值,我们确实可以阻止模型在很高或者很低的点分割数据及,但是这种限制不会使得模型更好地拟合训练集。
当我们的数据集比较大的时候(例如超过10万条),只要我们控制好模型的复杂度(例如treesize、number of trees),模型是不容易受到过拟合的影响的。在这种情况下,限制模型在较高或者较低的点分割数据集,甚至会导致在test data set上面的表现。

五、XGBoost不要求Normalization 

XGBoost不需要Normalization,这一点已经由XGBoost算法的发明者陈天奇(tqchen)亲自确认。
注:
*Normalization可以理解为“归一化”,通常等同于Min-Max scale。具体公式为:
学新通

 具体效果是,把一个feature的取值范围,均匀地压缩到[0,1]之i间。
*另外一个比较相近的概念是standardization,可以理解为“标准化”。具体公式为:

学新通

具体效果为,把一个feature转换成均值为0、方差为1的分布。
*比较容易混淆的点在于,宽泛地说,normalization是可以包含standardization的。
standardization的另一个名字就是Z-score normalization。因此,standardization可以理解为一种特殊的normalization。

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhggcebk
系列文章
更多 icon
同类精品
更多 icon
继续加载