xgboost

xgboost构建过程
  1. xgboost 从顶到底构建树,在从低到顶反向进行剪枝。
  2. xgboost的并行不是tree粒度的,而是在特征粒度上的。决策树学习中最耗时的一个步骤是对特征的值进行排序,xgboost在训练之前,预先对数据进行了排序,保存为block结构,迭代中重复地使用这个结构。
    在进行节点分裂时,需要计算每个特征的增益,最终选增益最大的那个特征去做分裂,各个特征的增益计算可以并行计算。
  3. xgboost支持自定义目标函数和评估函数,只要目标函数二阶可导。
  4. xgboost借鉴了随机森林的做法,支持column subsampling(特征采样)。
  5. 5.

booster : tree、linear

参数
  1. eta 收缩步长,缺省值=0.3,通常设置为[0.01,0.2]。
    减小eta,模型学习速度变慢,增加num_round。
  2. gamma 最小分裂损失函数值,取值[0,+∞]。默认情况下,节点的划分需在loss 值大于0的情况下进行。
  3. max_depth, 树的最大深度,最大值为6。通常取值[3,10]。
  4. min_child_weight , 孩子节点中最小的样本权重和。如果一个叶子节点的样本权重和小于该值则拆分过程结束。
  5. subsample 训练数据采样率。
  6. colsample_bytree 每个树对特征的采样率
  7. colsample_bylevel 每次分割对特征的采样率
  8. lambda L2 norm of leaf weights
  9. alpha L1 norm one leaf weights

max_depth、min_child_weight、gamma直接控制模型的complexity,影响模型的过拟合程度;subsample、colsample_bytree 增加模型鲁棒性。

objective

默认为reg:linear , 这个参数定义需要被最小化的损失函数。
binary:logistic 二分类逻辑回归,返回预测的概率
multi:softmax 返回预测的类别,需要定义num_class。
multi:softprob 返回属于各个类别的概率。

eval_metric

默认值取决于objective的取值。对于回归问题,默认值为rmse,对于分类问题,默认值是error。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值