跳到内容

当前仅实现了 XGBoost 参数的设置器 (setter)。

用法

xgb.model.parameters(object) <- value

参数

object

xgb.Booster 类的对象。将原地修改

value

一个列表(或可强制转换为列表的对象),其中包含要设置的参数名称以及对应参数值的元素。

返回值

同一个 booster object 对象,该对象会被原地修改。

详情

xgb.attr() 类似,此函数将对 booster 对象进行原地修改,这不遵循典型的 R 赋值语义 - 也就是说,所有指向同一个 booster 的引用也会被更新,这与遵循写时复制 (copy-on-write) 语义的 R 属性赋值不同。

请参阅 xgb.copy.Booster() 以了解此行为的示例。

请注意,设置与训练继续/更新相关的已拟合 booster 参数将重置其轮次计数器为零。

示例

data(agaricus.train, package = "xgboost")

train <- agaricus.train

bst <- xgb.train(
  data = xgb.DMatrix(train$data, label = train$label, nthread = 1),
  nrounds = 2,
  params = xgb.params(
    max_depth = 2,
    learning_rate = 1,
    nthread = 2,
    objective = "binary:logistic"
  )
)

xgb.model.parameters(bst) <- list(learning_rate = 0.1)