Parameter docs shared by lgb.train, lgb.cv, and lightgbm
List of callback functions that are applied at each iteration.
a lgb.Dataset object, used for training. Some functions, such as lgb.cv,
may allow you to pass other types of data like matrix and then separately supply
label as a keyword argument.
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 early_stopping_rounds consecutive boosting rounds.
If training stops early, the returned model will have attribute best_iter
set to the iteration number of the best iteration.
evaluation function(s). This can be a character vector, function, or list with a mixture of strings and functions.
a. character vector: If you provide a character vector to this argument, it should contain strings with valid evaluation metrics. See The "metric" section of the documentation for a list of valid metrics.
b. function:
                     You can provide a custom evaluation function. This
                     should accept the keyword arguments preds and dtrain and should return a named
                     list with three elements:
                     
name: A string with the name of the metric, used for printing
                             and storing results.
value: A single number indicating the value of the metric for the
                             given predictions and true values
higher_better: A boolean indicating whether higher values indicate a better fit.
                             For example, this would be FALSE for metrics like MAE or RMSE.
c. list: If a list is given, it should only contain character vectors and functions. These should follow the requirements from the descriptions above.
evaluation output frequency, only effect when verbose > 0
path of model file of lgb.Booster object, will continue training from this model
number of training rounds
objective function, can be character or custom objective function. Examples include
regression, regression_l1, huber,
binary, lambdarank, multiclass, multiclass
a list of parameters. See the "Parameters" section of the documentation for a list of parameters and valid values.
verbosity for output, if <= 0, also will disable the print of evaluation during training
"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).