It attempts to complete an
xgb.Booster object by restoring either its missing
raw model memory dump (when it has no
raw data but its
xgb.Booster.handle is valid)
or its missing internal handle (when its
xgb.Booster.handle is not valid
but it has a raw Booster memory dump).
object of class
a flag indicating whether to append
While this method is primarily for internal use, it might be useful in some practical situations.
E.g., when an
xgb.Booster model is saved as an R object and then is loaded as an R object,
its handle (pointer) to an internal xgboost model would be invalid. The majority of xgboost methods
should still work for such a model object since those methods would be using
xgb.Booster.complete internally. However, one might find it to be more efficient to call the
xgb.Booster.complete function explicitly once after loading a model as an R-object.
That would prevent further repeated implicit reconstruction of an internal booster model.
An object of
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
data(agaricus.train, package='xgboost') bst <- xgboost(data = agaricus.train$data, label = agaricus.train$label, max_depth = 2, eta = 1, nthread = 2, nrounds = 2, objective = "binary:logistic") saveRDS(bst, "xgb.model.rds") # Warning: The resulting RDS file is only compatible with the current XGBoost version. # Refer to the section titled "a-compatibility-note-for-saveRDS-save". bst1 <- readRDS("xgb.model.rds") if (file.exists("xgb.model.rds")) file.remove("xgb.model.rds") # the handle is invalid: print(bst1$handle) bst1 <- xgb.Booster.complete(bst1) # now the handle points to a valid internal booster model: print(bst1$handle)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.