Xgboost中需要注意的点

1 简介

Xgboost是目前非常流行的机器学习模型,它属于集成学习中的boosting方法,在多种竞赛场合取得非常好的成绩,在工业界也有广泛应用。它和一般教科书上的讲解的梯度树在理论推导上有较大不同,陈天奇在其分享的ppt《Introduction to Boosted Trees》和发表的论文《XGBoost: A Scalable Tree Boosting System》中详细介绍了Xgb的理论推导,通过泰勒展开引入一阶,二阶信息,推导过程不受具体损失函数影响,形成上非常完美。但是在实际使用中需要注意一些地方,总结如下

2 Xgboost在使用中的注意点

2.1 离散特征如何处理

在Xgb中需要将离散特征one-hot编码,和连续特征一起输入训练,这样做是为了达到在cart树中处理离散特征的方式一致,即每次选择一个离散特征对应的样本作为一类,剩下的所有特征值对应的样本作为一类。不按照扫描切分,因为扫描切分会导致后续的子树中特征组合变少。

2.2 训练数据的格式选择稀疏还是稠密

Xgb中支持稀疏矩阵训练模型,导致数据稀疏的原因如下

  • 缺省值
  • 稠密数据中零元素
  • 离散特征one-hot编码后产生的0值
    下图是《XGBoost: A Scalable Tree Boosting System》中稀疏训练数据和稠密训练数据的效率
    这里写图片描述

2.3 缺省值是如何处理的

在Xgb中处理稀疏数据时,没有值的特征是走默认的分支。在2.2中提到缺省值也是稀疏存储的,所以在Xgb中缺省值也是走默认分支

2.4 回归树不仅仅可以处理回归问题

Xgb预测的是树节点上的最有得分,它不仅可以处理回归问题,还可以处理分类,排序问题。它只依赖于定义的损失函数。它可以支持均方误差,似然函数等。

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
在Matlab使用xgboost需要满足一些条件和进行一些安装步骤。 首先,您需要安装Matlab软件,最好是版本越高越好,您提到您正在使用的是2020a版本。其次,您需要拥有一个Matlab账号,并下载xgboost工具箱。 安装步骤如下: 1. 安装Matlab插件。 2. 右键运行xgboost_install,此操作会在lib文件夹增加一个xgboost.h文件。 3. 找到案例代码,例如xgboost_train,并将其复制到main.m的主程序。 4. 根据您的需求进行相应的修改和调整。 5. 运行主程序main.m即可进行训练和测试。 需要注意的是,您可能还需要进行一些额外的操作。例如,如果您的Matlab无法访问xgboost.h文件,您可以尝试通过浏览器打开相应的URL网址来获取xgboost的C语言代码,并将其粘贴到新建的脚本。 总结起来,要在Matlab使用xgboost,您需要安装Matlab软件、下载xgboost工具箱,并按照一定的安装步骤进行设置和配置。详细的安装和使用步骤可以参考引用提供的信息。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [【MATLAB第9期】基于MATLAB的xgboost算法安装超详细教学(踩坑避雷指南)暂时仅限于Windows系统 #末尾含...](https://blog.csdn.net/qq_29736627/article/details/127384664)[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_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值