请选择 进入手机版 | 继续访问电脑版
  • 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

XGBoost调参注意事项

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

机器学习中参数调整是门艺术,模型的最佳参数可能取决于许多场景,所以很难为此做一个全面的指导。本文尝试为xgboost中的参数调整提供一些说明。

了解偏差-方差权衡(Bias-Variance Tradeoff)

在机器学习或统计课程中,偏差方差权衡可能是最重要的概念之一。当我们允许模型变得更加复杂(例如,更大的深度)时,模型具有更好的适应训练数据的能力,从而使模型偏差较小。然而,这种复杂的模型需要更多的数据来做训练。

xgboost中的大多数参数是关于偏差方差权衡的。最好的模型应该在模型的复杂性及模型的预测能力上做细致的权衡(注:模型的复杂度越高,对训练数据的拟合能力就越强,其泛化或者预测能力可能就越差)。

[xgboost参数文档]介绍了每个参数对模型造成的影响,可以帮助您在复杂的模型和简单的模型之间自由调整。

控制过拟合

当您观察到较高的训练准确率,但测试精度较低时,很可能遇到了过拟合问题。

通常可以通过两种方式来控制xgboost中的过拟合

  • 第一种方式是直接控制模型的复杂性
    • 这包括max_depthmin_child_weightgamma
  • 第二种方法是增加随机性,使训练对噪声更加鲁棒
    • 这包括subsamplecolsample_bytree
    • 你还可以减少步骤eta,但是当你这样做时,需要记住增加num_round

处理不平衡数据集

对于常见情况,例如广告点击日志,数据集非常不平衡。这会影响xgboost模式的训练,有两种方法可以改进。

  • 如果你只关心您的预测的排名顺序(AUC)
    • 通过scale_pos_weight平衡正负权重
    • 使用AUC进行评估
  • 如果你关心预测正确的概率
    • 在这种情况下,您无法重新平衡数据集
    • 在这种情况下,将参数max_delta_step设置为有限数量(例如1)将有助于收敛

英文版:http://xgboost.readthedocs.io/en/latest/how_to/param_tuning.html


鲜花

握手

雷人

路过

鸡蛋
专题导读
上一篇:
Mac系统安装XGboost发布时间:2022-05-14
下一篇:
pyspark GBDT分类和回归示例发布时间:2022-05-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap