xgboost调参经验

本文为kaggle上一位选手分享的xgboost调参经验的翻译。方便对xgboost模型参数的快速调试。
原文:https://www.kaggle.com/c/bnp-paribas-cardif-claims-management/forums/t/19083/best-practices-for-parameter-tuning-on-models
数据的划分:一般从训练集里划分20%作为验证集,简易的调参不做交叉验证,因为交叉验证实在是耗费时间。
模型参数的初始化:

模型类型:根据问题(二分类,多分类,回归等)选择合适的模型类型
初始参数:eta= 0.1, depth= 10, subsample=1.0, min_child_weight = 5, col_sample_bytree = 0.2(depends on feature size)
nround:xgboost的轮数,直接设置为10000,若error开始不断变高(或auc不断变低),直接中断程序运行即可
调参
1)先调整depth,一般depth与其他参数关联性不大,故第一个调整。首先将其初始化为10,训练模型观察最优结果。再将其调整为8,若效果变差则调整为12。用这种方法逐步接近较好的参数。
2)然后调整subsample,初始化为1,观察结果。调整为0.8,若变好则继续下调一点看看,否则则改回0.9。若0.9的效果还不好则改回1
3)用与depth相同的方法调整min_child_weight
4)然后调整col_sample_bytree
5)最后将eta设置为0.05(或者更低一点),训练模型并观察,记录最优的训练轮数(num_round)——即错误率开始从不断下降转为不断上升的时候

具体参数对应含义可查:https://blog.csdn.net/fuqiuai/article/details/79495910

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值