本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
XGBoost 超参数
下表包含 Amazon SageMaker XGBoost 算法必需或最常用的超参数子集。这些是由用户设置的参数,以便于从数据中评估模型参数。首先,按字母顺序列出必须设置的所需超参数。接下来,也按字母顺序列出可以设置的可选超参数。 SageMaker XGBoost 算法是开源 DMLC XGBoost 程序包的实施。目前 SageMaker 支持版本 1.2-2。有关可以为此版本的 XGBoost 配置的完整超参数集的详细信息,请参阅 XGBoost 参数
参数名称 | 描述 |
---|---|
num_class |
类的数量。 如果设置 有效值:整数 |
num_round |
运行训练的轮数。 必填 有效值:整数 |
alpha |
权重上的 L1 正则化项。增加此值会使模型更加保守。 可选 有效值:浮点值 默认值:0 |
base_score |
所有实例的初始预测分数,全局偏移。 可选 有效值:浮点值 缩放细节凹凸法线强度。 |
booster |
要使用的助推程序。 可选 有效值:字符串. 默认值: |
colsample_bylevel |
每个级别中每个拆分的列的子样本比率。 可选 有效值:浮点值。范围:[0,1]。 默认值:1 |
colsample_bynode |
每个节点中列的子样本比率。 可选 有效值:浮点值。范围:(0,1]。 默认值:1 |
colsample_bytree |
构造每个树时列的子样本比率。 可选 有效值:浮点值。范围:[0,1]。 默认值:1 |
csv_weights |
启用此标志时,对于 csv 输入,XGBoost 通过获取训练数据中的第二列(标签后的一列)作为实例权重,以此来区分实例的重要性。 可选 有效值:0 或 1 默认值:0 |
deterministic_histogram |
启用此标志后,XGBoost 会确定性地在 GPU 上构建直方图。仅在 有关有效输入的完整列表,请参阅 XGBoost 参数 可选 有效值:字符串. 范围: 默认值: |
early_stopping_rounds |
模型会一直训练直到验证分数停止改善。验证错误需要至少在每个 可选 有效值:整数 默认值: - |
eta |
在更新中用于防止过度适合的步骤大小收缩。在每个提升步骤之后,您可以直接获得新特征的权重。 可选 有效值:浮点值。范围:[0,1]。 默认值:0.3 |
eval_metric |
验证数据的评估指标。根据目标分配默认指标:
有关有效输入的列表,请参阅 XGBoost 学习任务参数 可选 有效值:字符串 默认值:根据目标默认。 |
gamma |
在树的叶节点上进行进一步分区所需的最小损失减少。该值越大,算法越保守。 可选 有效值:浮点值。范围:[0,∞)。 默认值:0 |
grow_policy |
控制将新节点添加到树中的方式。目前,仅在 可选 有效值:字符串. 默认值: |
interaction_constraints |
指定允许交互的变量组。 可选 有效值:嵌套的整数列表。每个整数代表一个功能,每个嵌套列表都包含允许交互的特征,例如 [[1,2]、[3,4,5]]。 默认值:None |
lambda |
权重上的 L2 正则化项。增加此值会使模型更加保守。 可选 有效值:浮点值 默认值:1 |
lambda_bias |
偏移上的 L2 正则化项。 可选 有效值:浮点值。范围:[0.0, 1.0]。 默认值:0 |
max_bin |
离散分箱到存储桶连续特征的最大数量。仅在 可选 有效值:整数 默认值:256 |
max_delta_step |
每个树的权重估计允许的最大增量步骤。当使用正整数时,它有助于使更新更加保守。首选选项是在逻辑回归中使用它。将其设置为 1-10 可帮助控制更新。 可选 有效值:整数。范围:[0,∞)。 默认值:0 |
max_depth |
树的最大深度。增加此值会使模型更加复杂,并且可能过度拟合。0 表示没有限制。当 可选 有效值:整数。范围:[0,∞) 默认值:6 |
max_leaves |
要添加的最大节点数。仅当 可选 有效值:整数 默认值:0 |
min_child_weight |
子项中所需的最小实例权重总和 (hessian)。如果树分区步骤导致叶节点的实例权重总和小于 可选 有效值:浮点值。范围:[0,∞)。 默认值:1 |
monotone_constraints |
指定任何要素的单调性约束。 可选 有效值:整数元组。有效整数:-1(递减约束)、0(无约束)、1(递增约束)。 例如,(0, 1):对第一个预测变量没有约束,对第二个预测变量有递增约束。(-1, 1):第一个预测变量的递减约束,第二个预测变量的递增约束。 默认值:(0, 1 |
normalize_type |
标准化算法的类型。 可选 有效值:tree 或 forest。 默认值:tree |
nthread |
用于运行 xgboost 的并行线程数量。 可选 有效值:整数 默认值:最大线程数。 |
objective |
指定学习任务和相应的学习目标。示例: 可选 有效值:字符串 默认值: |
one_drop |
启用此标记后,在丢弃期间至少会丢弃一个树。 可选 有效值:0 或 1 默认值:0 |
process_type |
要运行的提升过程的类型。 可选 有效值:字符串. 默认值: |
rate_drop |
丢弃比率,指定在丢弃期间要丢弃的一小部分以前的树。 可选 有效值:浮点值。范围:[0.0, 1.0]。 默认值:0.0 |
refresh_leaf |
这是“刷新”更新者插件的参数。当设置为 可选 有效值:0/1 默认值:1 |
sample_type |
采样算法的类型。 可选 有效值: 默认值: |
scale_pos_weight |
控制正负权重的平衡。它对不平衡的类很有用。可考虑的典型值: 可选 有效值:浮点值 默认值:1 |
seed |
随机数种子。 可选 有效值:整数 默认值:0 |
single_precision_histogram |
启用此标志时,XGBoost 使用单精度而不是双精度来构建直方图。仅在设置 有关有效输入的完整列表,请参阅 XGBoost 参数 可选 有效值:字符串. 范围: 默认值: |
sketch_eps |
仅用于近似贪婪算法。这会转换为 O(1 / 可选 有效值:浮点型,范围:[0, 1]。 默认值:0.03 |
skip_drop |
在提升迭代期间跳过丢弃过程的概率。 可选 有效值:浮点值。范围:[0.0, 1.0]。 默认值:0.0 |
subsample |
训练实例的子样本比率。将其设置为 0.5 意味着 XGBoost 随机收集一半数据实例来让树长大。这会防止过度适合 可选 有效值:浮点值。范围:[0,1]。 默认值:1 |
tree_method |
在 XGBoost 中使用的树构造算法。 可选 有效值: 默认值: |
tweedie_variance_power |
控制 Tweedie 分布的方差的参数。 可选 有效值:浮点值。范围:(1, 2)。 默认值:1.5 |
updater |
一个逗号分隔的字符串,它定义要运行的树更新者序列。这提供了构造和修改树的模块化方法。 有关有效输入的完整列表,请参阅 XGBoost 参数 可选 有效值:逗号分隔的字符串。 默认值: |
verbosity |
打印消息的冗长程度。 有效值:0(静默)、1(警告)、2(信息)、3(调试)。 可选 默认值:1 |