AI量化知识树

超参搜索参数设置

由bigquant创建,最终由bigquant 被浏览 193 用户

需要搜索的参数如以下,更详细的可以参考xgboost的官方文档

  1. 学习率,eta [default=0.3],常用的区间 {0.3, 0.1, 0.05, 0.01}

  2. 树的最大深度,max_depth,常用的区间 {3 ~ 8}

  3. 采样比例,subsample [default=1],常用的区间 {0.5 ~ 1}

  4. 分裂收益阈值,gamma [default=0],

    \

参数的设置具体还需要根据数据的大小以及因子的数量来设置,主要的两类参数可以用户自定义:

  1. General Parameters,即与整个模型属基调相关的参数;
  2. Booster Parameters,即与单颗树生成有关的参数;
  3. Learning Task Parameters,与模型调优相关的参数;

General Parameters

  1. booster [default=gbtree]

    即xgboost中基学习器类型,有两种选择,分别是树模型(gbtree)和线性模型(linear models)

  2. 即控制迭代日志的是否输出,默认输出;

  3. nthread [default to maximum number of threads available if not set]

    即控制模型训练调用机器的核心数,与sklearn中n_jobs的含义相似;

Booster parameters

因为booster有两种类型,常用的一般是树模型,这里只列树模型相关的参数:

  1. eta [default=0.3]

    学习率,这个相当于sklearn中的learning_rate,常见的设置范围在0.01-0.2之间

  2. min_child_weight [default=1]

    叶节点的最小权重值;

    这个参数与GBM(sklearn)中的“min_samples_leaf”很相似,只不过这里不是样本数,而是权重值,如果样本的权重都是1,这两个参数是等同的;

    这个值设置较大时,通常树不会太深,可以控制过拟合,但太大时,容易造成欠拟合的现象,具体调参需要cv;

  3. max_depth

    树的最大深度,含义很直白,控制数的复杂性;通常取值范围在3-10;

  4. max_leaf_nodes

    最大叶节点数;一般这个参数与max_depth二选一控制即可;

  5. gamma [default=0]

    分裂收益阈值;即用来比较每次节点分裂带来的收益,有效控制节点的过度分裂;这个参数的变化范围受损失函数的选取影响;

  6. max_delta_step [default=0]

    这个参数暂时不是很理解它的作用范围,一般可以忽略它;

  7. subsample [default=1]

    采样比例;与sklearn中的参数一样,即每颗树的生成可以不去全部样本,这样可以控制模型的过拟合;通常取值范围0.5-1;

  8. colsample_bytree [default=1]

    特征采样的比例(每棵树);即每棵树不使用全部的特征,控制模型的过拟合;通常取值范围0.5-1;

  9. colsample_bylevel [default=1]

    特征采样的比例(每次分裂);这个与随机森林的思想很相似,即每次分裂都不取全部变量;当7、8的参数设置较好时,该参数可以不用在意;

  10. lambda [default=1]

    L2范数的惩罚系数,叶子结点的分数?;

  11. alpha [default=0]

    L1范数的惩罚系数,叶子结点数?;

  12. scale_pos_weight [default=1]

与类别不平衡的问题相关;

Learning Task Parameters

  1. objective [default=reg:linear]

    目标函数。通常的选项分别是:binary:logistic,用于二分类,产生每类的概率值;multi:softmax,用于多分类,但不产生概率值,直接产生类别结果;multi:softprob,类似softmax,但产生多分类的概率值;

  2. eval_metric [ default according to objective ]

    评价指标。一般有:rmse ,均方误差;mae ,绝对平均误差;logloss ,对数似然值;error ,二分类错误率;merror ,多分类错误率;mlogloss ;auc

\