xgboost.XGBClassifier 分类算法 参数详解

class xgboost.XGBClassifier(max_depth=3learning_rate=0.1n_estimators=100silent=Trueobjective='binary:logistic'booster='gbtree'n_jobs=1nthread=Nonegamma=0min_child_weight=1max_delta_step=0subsample=1colsample_bytree=1colsample_bylevel=1reg_alpha=0reg_lambda=1scale_pos_weight=1base_score=0.5random_state=0seed=Nonemissing=None**kwargs)

  • booster
    • gbtree 树模型做为基分类器(默认)
    • gbliner 线性模型做为基分类器
  • n_jobs  并行线程数
  • silent
    • silent=0时,不输出中间过程(默认)
    • silent=1时,输出中间过程
  • nthread
    • nthread=-1时,使用全部CPU进行并行运算(默认)
    • nthread=1时,使用1个CPU进行运算。
  • scale_pos_weight
    • 正样本的权重,在二分类任务中,当正负样本比例失衡时,设置正样本的权重,模型效果更好。例如,当正负样本比例为1:10时,scale_pos_weight=10。
  • n_estimatores
    • 含义:总共迭代的次数,即决策树的个数
    • 调参:
  • max_depth
    • 含义:树的深度,默认值为6,典型值3-10。
    • 调参:值越大,越容易过拟合;值越小,越容易欠拟合。
  • min_child_weight
    • 含义:默认值为1,。
    • 调参:值越大,越容易欠拟合;值越小,越容易过拟合(值较大时,避免模型学习到局部的特殊样本)。
  • subsample
    • 含义:训练每棵树时,使用的数据占全部训练集的比例。默认值为1,典型值为0.5-1。
    • 调参:防止overfitting。
  • colsample_bytree
    • 含义:训练每棵树时,使用的特征占全部特征的比例。默认值为1,典型值为0.5-1。
    • 调参:防止overfitting。
  • learning_rate
    • 含义:学习率,控制每次迭代更新权重时的步长,默认0.3。
    • 调参:值越小,训练越慢。
    • 典型值为0.01-0.2。
  • gamma
    • 惩罚项系数,指定节点分裂所需的最小损失函数下降值。
    • 调参:
  • alpha
    • L1正则化系数,默认为1
  • lambda
    • L2正则化系数,默认为1

你可能感兴趣的:(python)