XGBoost源码阅读笔记(1)--代码逻辑结构

一. XGBoost简介

 XGBoost(eXtreme Gradient Boosting)是基于GB(Gradient Boosting)模型框架实现的一个高效,便捷,可扩展的一个机器学习库。该库先由陈天奇在2014年完成v0.1版本之后开源到github[1]上,当前最新版本是v0.6。目前在各类相关竞赛中都可以看到其出现的身影,如kaggle[2],在2015年29个竞赛中,top3队伍发表的解决方案中有17个方案使用了XGBoost,而只有11个解决方案使用了深度学习;同时在2015KDDCup中top10队伍都使用了XGBoost[3]。由于其与GBDT(Gradient Boosting decision Tree)存在一定相似之处,网上也经常会有人将GBDT和XGBoost做个对比[4]。最近正好读了陈天奇的论文《XGBoost: A Scalable Tree Boosting System》[3], 从论文中可以看出XGBoost新颖之处在于:

1. 使用了正则化的目标函数,其加入的惩罚项会控制模型复杂度(叶子个数)和叶子结点的得分权重


1-1 目标函数

2. 使用Shrinkage,通过一个因子η缩减每次最新生成树的权重,其目的是为了降低已生成的树对后续树的影响。

3. 支持列(特征)采样,该方式曾被用于随机森林。可以预防过拟合且加快模型训练速度。

4. 并行计算。Boost方式树是串行生成的,所以其在寻找树分裂点

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值