是否可以从xgb.Booster对象获取训练参数,该对象使用vanilla xgboost构建(即没有插入符号包装)。它只有两个字段,即handle和raw。
手册页(https://cran.r-project.org/web/packages/xgboost/xgboost.pdf)并没有给我一个答案,网络搜索并没有产生任何有用的东西。我感觉除了通过查看模型文本转储来检索nround和max_depth之外,不可能获得训练参数,但我想知道我是否遗漏了一些东西。
MWE:
library(xgboost)
data(agaricus.train, package='xgboost')
train <- agaricus.train
bstDense <- xgboost(data = as.matrix(train$data), label = train$label, max.depth = 2, eta = 1, nthread = 1, nround = 2, objective = "binary:logistic")
print(xgb.model.dt.tree(feature_names = colnames(train$data), model = bstDense, text = xgb.dump(model = bstDense, with.stats = T)))