XGBoost Parameters

XGBoost参数包括通用参数、Booster参数和任务参数,涉及模型选择、树构建、正则化等多个方面。例如,booster选择树模型或线性模型,eta控制学习率,gamma用于控制划分节点的最小损失,max_depth限制树的最大深度,subsample和colsample_bytree用于防止过拟合。此外,Dart Booster和线性Booster有额外的参数,如dropout概率和L1/L2正则化权重。任务参数包括目标函数和评估指标,如回归任务的rmse和分类任务的logloss。了解和调整这些参数对于优化模型性能至关重要。
摘要由CSDN通过智能技术生成

在跑XGBoost之前,我们必须设置三种类型的参数:general parameters、booster parameters和task parameters。

  • General parameters关系到我们选择哪个booster来做boosting,通常是树模型和线性模型。
  • Booster parameters取决于你选择的哪个booster。
  • Learning Task parameters决定了学习场景,举个例子,回归任务在做排序任务时可能用不同的参数。
  • Command line parameters和xgboost的CLI版本有关。

R包中的参数

在R包中,你可以用.(dot)来取代在参数中的下划线,比如,你可以用max.depth取代max_depth。在R中带下划线的参数也是有效的。

General Parameters

  • booster [default=gbtree]
    • 选择用哪个booster,可以使gbtree,gblinear或者dart。gbtree和dart都是基于树模型的,gblinear用的线性函数。
  • silent [defaut=0]
    • 0表示打印运行中的信息,1表示不显示。
  • nthread [default to maximum number of threads available if not set]
    • 在跑xgboost时并行使用的线程数量
  • num_pbuffer [xgboost自动设置的,不用用户设置]
    • 用于预测的缓存大小,通常设置为训练样本的个数。缓存是用来保存最后一步boosting预测的结果的。
  • num_feature [xgboost自动设置,不需要用户设置]
    • 使用在boosting中的特征的维数,设置为输入数据的特征的最大维数

Parameters for Tree Booster

  • eta [default=0.3, 别名学习率]
    • 为了防止股拟合每一步更新shrinkage的大小。在每一步boosting后,我们可以直接获得新的特征的权重。eta事实上就是收缩了特征的权重来让boosting的过程更加保守。
    • 范围:[0,1]
  • gamma [default=0,别名最小划分损失]
    • 在树的叶节点上进行进一步的划分需要减小的最小的损失。gamma越大,这个算法越保守。
    • 范围:[0, ]
  • max_depth [default=6]

    • 树的最大深度,增加这个值能让模型更复杂,更可能过拟合。0表示不限制,明智的深度增长策略需要限制最大深度。
    • 范围:[0, ]
  • min_child_weight [default=1]

    • 一个孩子节点所包含的样例的权值和。在树的节点划分阶段,如果一个叶子节点样例权值之和小于min_child_weight则停止划分。在线性回归模型中,简单表示每个节点样例的数量。越大,算法越保守。
    • 范围: [0,]
  • max_delta_step [default=0]
    • 这参数限制每棵树权重改变的最大步长。如果这个参数的值为0,那就意味着没有约束。如果它被赋予了某个正值,
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值