我正在尝试使用parsnip
指定一个配方来拟合具有对数偏移的 xgboost 泊松回归模型。要设置泊松回归,我可以在 中指定一个选项set_engine
,效果很好:
# Specify recipe
my_recipe <- recipe(training_df, Count ~.) %>%
# Remove covariates that are 80% correlated
step_corr(all_predictors(), threshold = 0.8) %>%
step_center(all_predictors(), -all_outcomes()) %>%
step_scale(all_predictors(), -all_outcomes())))
# Specify xgboost config
tune_spec <- boost_tree(
trees = 100) %>%
set_engine("xgboost", objective='count:poisson') %>%
set_mode("regression") %>%
translate()
查看 xgboost 的文档和此处的示例,似乎建议使用以下方法指定偏移量:
setinfo(xgtrain, "base_margin", log(training_df$my_offset))
我不确定如何将其包含在set_engine
上面。具体来说,我不确定如何与xgtrain
dataframe关联training_df
。