Learn R Programming

lightgbm (version 4.5.0)

lgb.restore_handle: Restore the C++ component of a de-serialized LightGBM model

Description

After a LightGBM model object is de-serialized through functions such as save or saveRDS, its underlying C++ object will be blank and needs to be restored to able to use it. Such object is restored automatically when calling functions such as predict, but this function can be used to forcibly restore it beforehand. Note that the object will be modified in-place.

New in version 4.0.0

Usage

lgb.restore_handle(model)

Value

lgb.Booster (the same `model` object that was passed as input, invisibly).

Arguments

model

lgb.Booster object which was de-serialized and whose underlying C++ object and R handle need to be restored.

Details

Be aware that fast single-row prediction configurations are not restored through this function. If you wish to make fast single-row predictions using a lgb.Booster loaded this way, call lgb.configure_fast_predict on the loaded lgb.Booster object.

See Also

lgb.make_serializable, lgb.drop_serialized.

Examples

Run this code
# \donttest{
library(lightgbm)
setLGBMthreads(2L)
data.table::setDTthreads(1L)
data("agaricus.train")
model <- lightgbm(
  agaricus.train$data
  , agaricus.train$label
  , params = list(objective = "binary")
  , nrounds = 5L
  , verbose = 0
  , num_threads = 2L
)
fname <- tempfile(fileext="rds")
saveRDS(model, fname)

model_new <- readRDS(fname)
model_new$check_null_handle()
lgb.restore_handle(model_new)
model_new$check_null_handle()
# }

Run the code above in your browser using DataLab