zoukankan      html  css  js  c++  java
  • XGBoost模型的参数调优

    XGBoost算法在实际运行的过程中,可以通过以下要点进行参数调优:

    (1)添加正则项:

        在模型参数中添加正则项,或加大正则项的惩罚力度,即通过调整加权参数,从而避免模型出现过拟合的情况。

    (2)控制决策树的层数:

    通过叶子结点数目控制决策树的层数,视乎样本量大小决定,对于10万以下

    的样本,一般在1到4之间,而针对更大的样本量,可以尝试更深的决策树层数
    发掘隐藏在数据里的一些规律或模式。
    (3)设定叶子结点包含的最少样本数目:

    从而防止出现过小的叶子结点,降低预测
    (4)增加算法迭代次数:

    可有效提高训练集的预测精度,但若迭代次数过多容易造成
    成过拟合
    (5)通过收缩步长和列采样的方法来避免过拟合:

    收缩步长即在每一次迭代的过程中,

    对拟合的残差乘以一个收缩系数,从而限制当前迭代过程的学习步长;列
    采样即本次迭代参与优化的特征维度并不是所有的维度,而是通过采样得到的
    维度,更少的选择会让算法不容易将训练集的残差拟合得过好,从而造成过拟
    合;
    (6)通过交叉验证的方法:

    来确定模型参数,从而达到预测准确率与防止过拟合之
    间的平衡。交叉验证(Cross-validation)的本质思想是把在某种意义下将原始数
    据进行分组,一部分做为训练集,另一部分做为验证集,首先用训练集对分类
    器进行训练,再利用验证集来测试训练得到的模型,以此来做为评价分类器的
    性能指标。常用的交叉验证方法是K折交叉验证,即将样本分为K个互不相交
    的子样本,一个单独的子样本被保留作为验证模型的数据,其他K-1个样本用
    来训练。交叉验证重复K次,每个子样本验证一次,平均K次的得到结果来确定最
    终模型使用的参数。

  • 相关阅读:
    PSP总结报告
    第十三周例行报告
    对团队成员公开感谢
    附加作业 软件工程原则的应用实例分析
    第十二周例行报告
    第十一周例行报告
    第十周例行报告
    第八周例行报告
    第七周例行报告
    第六周例行报告
  • 原文地址:https://www.cnblogs.com/ConnorShip/p/10228806.html
Copyright © 2011-2022 走看看