lgb.cv | R Documentation |
Cross validation logic used by LightGBM
lgb.cv(
params = list(),
data,
nrounds = 100L,
nfold = 3L,
label = NULL,
weight = NULL,
obj = NULL,
eval = NULL,
verbose = 1L,
record = TRUE,
eval_freq = 1L,
showsd = TRUE,
stratified = TRUE,
folds = NULL,
init_model = NULL,
colnames = NULL,
categorical_feature = NULL,
early_stopping_rounds = NULL,
callbacks = list(),
reset_data = FALSE,
serializable = TRUE,
eval_train_metric = FALSE
)
params |
a list of parameters. See the "Parameters" section of the documentation for a list of parameters and valid values. |
data |
a |
nrounds |
number of training rounds |
nfold |
the original dataset is randomly partitioned into |
label |
Deprecated. See "Deprecated Arguments" section below. |
weight |
Deprecated. See "Deprecated Arguments" section below. |
obj |
objective function, can be character or custom objective function. Examples include
|
eval |
evaluation function(s). This can be a character vector, function, or list with a mixture of strings and functions.
|
verbose |
verbosity for output, if <= 0 and |
record |
Boolean, TRUE will record iteration message to |
eval_freq |
evaluation output frequency, only effective when verbose > 0 and |
showsd |
|
stratified |
a |
folds |
|
init_model |
path of model file or |
colnames |
Deprecated. See "Deprecated Arguments" section below. |
categorical_feature |
Deprecated. See "Deprecated Arguments" section below. |
early_stopping_rounds |
int. Activates early stopping. When this parameter is non-null,
training will stop if the evaluation of any metric on any validation set
fails to improve for |
callbacks |
List of callback functions that are applied at each iteration. |
reset_data |
Boolean, setting it to TRUE (not the default value) will transform the booster model into a predictor model which frees up memory and the original datasets |
serializable |
whether to make the resulting objects serializable through functions such as
|
eval_train_metric |
|
a trained model lgb.CVBooster
.
A future release of lightgbm
will require passing an lgb.Dataset
to argument 'data'
. It will also remove support for passing arguments
'categorical_feature'
, 'colnames'
, 'label'
, and 'weight'
.
"early stopping" refers to stopping the training process if the model's performance on a given validation set does not improve for several consecutive iterations.
If multiple arguments are given to eval
, their order will be preserved. If you enable
early stopping by setting early_stopping_rounds
in params
, by default all
metrics will be considered for early stopping.
If you want to only consider the first metric for early stopping, pass
first_metric_only = TRUE
in params
. Note that if you also specify metric
in params
, that metric will be considered the "first" one. If you omit metric
,
a default metric will be used based on your choice for the parameter obj
(keyword argument)
or objective
(passed into params
).
data(agaricus.train, package = "lightgbm")
train <- agaricus.train
dtrain <- lgb.Dataset(train$data, label = train$label)
params <- list(
objective = "regression"
, metric = "l2"
, min_data = 1L
, learning_rate = 1.0
, num_threads = 2L
)
model <- lgb.cv(
params = params
, data = dtrain
, nrounds = 5L
, nfold = 3L
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.