GBDT训练

# GBDT训练

定义

M.GBDT_train.v1(training_ds,num_boost_round,objective,eval_metric,booster,eta,gamma,_lambda,lambda_bias,alpha,max_depth,max_leaf_nodes,subsample,xgb_param)

参数:

  • training_ds (DataSource) – 训练数据,需要包含所有用到的特征数据,包括基础特征和衍生特征。
  • features: (列表|DataSource) – 特征列表。
  • num_boost_round (float) - 迭代次数。
  • early_stopping_rounds (float) - 提前停止检测次数,停止训练的的检测次数。
  • objective (str) - 损失函数类型,选项有:'multi:softprob'、'binary:logistic'、'reg:linear'、'reg:logistic',默认为'binary:logistic'。
  • num_class(int)- 类别个数,如果使用multi:softprob需要设置,默认为None。
  • eval_metric (str) - 评价指标,选项有:'rmse'、'logloss'、'error'、'merror'、'mlogloss'、'auc',默认为'error'。
  • booster: I.choice('模型',values=['gbtree','gbliner'])='gbtree'。
  • eta (float) – 学习率:学习率如果太大,可能会使结果越过最优值,如果太小学习会很慢;默认值是0.1。
  • gamma (float) - 最小节点分裂损失值,默认为0.0001。
  • _lambda (float) - L2正则,默认为0。
  • lambda_bias (float) - L2正则偏置,默认为0。
  • alpha (float) - L1正则,默认为0。
  • max_depth (float) - 树的最大深度,默认为6。
  • max_leaf_nodes (float) 树最多叶子个数,默认为30。
  • subsample (float) - 随机采样比例,默认为0.8。
  • xgb_param (dict) - 参数字典,默认为{}。
    返回类型:
  • Outputs

示例代码

m6 = M.GBDT_train.v1(
    training_ds=m13.data,
    num_boost_round=120,
    objective='binary:logistic',
    eval_metric='error',
    booster='gbtree',
    eta=0.1,
    gamma=0.0001,
    _lambda=0,
    lambda_bias=0,
    alpha=0,
    max_depth=6,
    max_leaf_nodes=30,
    subsample=0.8,
    xgb_param={}
    )