cb.early.stop(stopping_rounds, maximize = FALSE, metric_name = NULL, verbose = TRUE)
watchlist
was labelled as dtest
,
and one wants to use the AUC in test data for early stopping regardless of where
it is in the watchlist
, then one of the following would need to be set:
metric_name='dtest-auc'
or metric_name='dtest_auc'
.
All dash '-' characters in metric names are considered equivalent to '_'.stop_condition = TRUE
flag in its calling frame.The following additional fields are assigned to the model's R object:
best_score
the evaluation score at the best iteration
best_iteration
at which boosting iteration the best score has occurred (1-based index)
best_ntreelimit
to use with the ntreelimit
parameter in predict
.
It differs from best_iteration
in multiclass or random forest settings.
The Same values are also stored as xgb-attributes:
best_iteration
is stored as a 0-based iteration index (for interoperability of binary models)
best_msg
message string is also stored.
At least one data element is required in the evaluation watchlist for early stopping to work.
Callback function expects the following values to be set in its calling frame:
stop_condition
,
bst_evaluation
,
rank
,
bst
(or bst_folds
and basket
),
iteration
,
begin_iteration
,
end_iteration
,
num_parallel_tree
.
callbacks
,
xgb.attr