Tree Booster 的参数
1、eta[默认=0.3,别名:learning_rate],范围:[0,1]
更新中使用减小步长以防止过度拟合。在每一步 boosting 之后,我们可以直接得到新特征的权重,并eta减小特征权重,使 boosting 过程更加保守
2、gamma[默认=0,别名:min_split_loss],范围:[0,∞]
在树的叶子节点上进行进一步分裂所需的最小损失减少。越大gamma,算法就越保守。
3、max_depth [默认=6],范围:[0,∞]
树的最大深度。增加此值将使模型更复杂,更可能过拟合。仅当tree_method设置为hist或gpu_hist且表示没有深度限制时,lossguided Growth策略中才接受0。请注意,XGBoost在训练深层树时会大量消耗内存。
4、min_child_weight [默认值=1],范围:[0,∞]
子实例所需的最小实例权重总和(hessian)。如果树分裂步骤导致叶节点的实例权重之和小于min_child_权重,则构建过程将放弃进一步的分裂。在线性回归任务中,这仅仅对应于每个节点中需要的最小实例数。min_child_weight越大,算法越保守。
5、max_delta_step [default=0],范围: [0,∞]
允许每个叶子输出的最大变化步长。如果该值设置为0,则表示没有约束。如果将其设置为正值,则有助于使更新步骤更加保守。通常不需要这个参数,但当类极不平衡时,它可能有助于逻辑回归。将其设置为值1-1