% Generated by roxygen2: do not edit by hand % Please edit documentation in R/callbacks.R \name{cb.early.stop} \alias{cb.early.stop} \title{Callback closure to activate the early stopping.} \usage{ cb.early.stop( stopping_rounds, maximize = FALSE, metric_name = NULL, verbose = TRUE ) } \arguments{ \item{stopping_rounds}{The number of rounds with no improvement in the evaluation metric in order to stop the training.} \item{maximize}{whether to maximize the evaluation metric} \item{metric_name}{the name of an evaluation column to use as a criteria for early stopping. If not set, the last column would be used. Let's say the test data in \code{watchlist} was labelled as \code{dtest}, and one wants to use the AUC in test data for early stopping regardless of where it is in the \code{watchlist}, then one of the following would need to be set: \code{metric_name='dtest-auc'} or \code{metric_name='dtest_auc'}. All dash '-' characters in metric names are considered equivalent to '_'.} \item{verbose}{whether to print the early stopping information.} } \description{ Callback closure to activate the early stopping. } \details{ This callback function determines the condition for early stopping by setting the \code{stop_condition = TRUE} flag in its calling frame. The following additional fields are assigned to the model's R object: \itemize{ \item \code{best_score} the evaluation score at the best iteration \item \code{best_iteration} at which boosting iteration the best score has occurred (1-based index) } The Same values are also stored as xgb-attributes: \itemize{ \item \code{best_iteration} is stored as a 0-based iteration index (for interoperability of binary models) \item \code{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: \code{stop_condition}, \code{bst_evaluation}, \code{rank}, \code{bst} (or \code{bst_folds} and \code{basket}), \code{iteration}, \code{begin_iteration}, \code{end_iteration}, \code{num_parallel_tree}. } \seealso{ \code{\link{callbacks}}, \code{\link{xgb.attr}} }