xgboost 正则项_XGBoost总结

XGBoost是强大的提升树模型,以其正则化和并行处理能力著称。它引入了正则化步骤减少过拟合,支持并行处理以提高效率,同时具备高度灵活性,允许自定义优化目标和评价标准。XGBoost还内建处理缺失值的策略,使用剪枝技术,并内置交叉验证功能。调优过程中,可以通过调整学习速率、正则化参数、树的深度和叶节点权重等参数来优化模型性能。
摘要由CSDN通过智能技术生成

简介:

xgboost是Boosting算法的其中一种,Boosting算法的思想是许多弱分类器集成在一起,形成一个强分类器。以为xgboost是一种提升树模型,所以他是将许多树模型集成在一起,形成一个很强的分类器。而所用到的树模型则是cart回归树模型。

xgboost是在GBDT的基础上进行改进,使得更加强大,使用范围更大

xgboost一般和sklearn一起使用,但是由于sklearn中没有集成Xgboost,所以需要单独安装

在安装的时候要注意安装多线程版本

1. XGBoost的优势

XGBoost算法可以给预测模型带来能力的提升。当我对它的表现有更多了解的时候,当我对它的高准确率背后的原理有更多了解的时候,我发现它具有很多优势:

1.1 正则化

标准GBM的实现没有像XGBoost这样的正则化步骤。正则化对减少过拟合也是有帮助的。

实际上,XGBoost以“正则化提升(regularized boosting)”技术而闻名。

1.2 并行处理

XGBoost可以实现并行处理,相比GBM有了速度的飞跃。

不过,众所周知,Boosting算法是顺序处理的,它怎么可能并行呢?每一课树的构造都依赖于前一棵树,那具体是什么让我们能用多核处理器去构造一个树呢?我希望你理解了这句话的意思。如果你希望了解更多,点击这个链接。

XGBoost 也支持Hadoop实现。

1.3 高度的灵活性

XGBoost 允许用户定义自定义优化目标和评价标准

它对模型增加了一个全新的维度,所以我们的处理不会受到任何限制。

1.4 缺失值处理

XGBoost内置处理缺失值的规则。

用户需要提供一个和其它样本不同的值,然后把它作为一个参数传进去,以此来作为缺失值的取值。XGBoost在不同节点遇到缺失值时采用不同的处理方法,并且会学习未来遇到缺失值时的处理方法。

1.5 剪枝

当分裂时遇到一个负损失时,GBM会停止分裂。因此GBM实际上是一个贪心算法。

XGBoost会一直分裂到指定的最大深度(max_depth),然后回过头来剪枝。如果某个节点之后不再有正值,它会去除这个分裂。

这种做法的优点,当一个负损失(如-2)后面有个正损失(如+10)的时候,就显现出来了。GBM会在-2处停下来,因为它遇到了一个负值。但是XGBoost会继续分裂,然后发现这两个分裂综合起来会得到+8,因此会保留这两个分裂。

1.6 内置交叉验证

XGBoost允许在每一轮boosting迭代中使用交叉验证。因此,可以方便地获得最优boosting迭代次数。

而GBM使用网格搜索,只能检测有限个值。

1.

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值