xgboost调参

来源:互联网 发布:kali linux配置ip地址 编辑:程序博客网 时间:2024/05/21 21:40

在机器学习中调参是一门黑暗艺术,一个模型的最优参数取决于许多因素,因此不可能建立一个全方位的调参指导。 这篇文档试图提供一些关于xgboost参数的指导。

理解权衡Bias-Variance(偏倚和方差):

如果你上过机器学习或者统计课程,这可能是其中最重要的概念之一。当我们允许模型变得更复杂的时候(比如,更深),模型会更加拟合训练数据,变成只有一点偏倚的模型。然而这样复杂的模型需要更多的数据拟合。在xgboost中大多数参数是关于偏倚和方差的考量。最好的模型应仔细权衡模型复杂性和它的预测能力。

控制过拟合:

当你观察到很高的训练准确率,但是低的测试准确率,很有可能你遇到了过拟合问题。在xgboost中通常有两种控制过拟合的方法:1.直接控制模型复杂度(包括max_depth,min_child_weight和gamma)2.增加随机性,使得训练数据对噪声更鲁棒 包括subsample,colsample_bytree 你也可以减少步长eta,但是当你这样做的时候记住增加num_round

处理不平衡:

对于一般问题比如广告点击率预测,数据集极度不平衡。这会影响xgboost模型的训练,有两种方法可以改善。1.如果你只关心预测结果的AUC平衡正负例权重(scale_pos_weight)使用AUC预测2.如果你关心预测的准确率你不能再次平衡数据集设置max_delta_step到一个有限值(比如1)会帮助收敛
原创粉丝点击