Stops training when a monitored metric stops improving

## Usage

luz_callback_early_stopping(
monitor = "valid_loss",
min_delta = 0,
patience = 0,
mode = "min",
baseline = NULL
)

## Arguments

monitor

A string in the format <set>_<metric> where <set> can be 'train' or 'valid' and <metric> can be the abbreviation of any metric that you are tracking during training. The metric name is case insensitive.

min_delta

Minimum improvement to reset the patience counter.

patience

Number of epochs without improving until stoping training.

mode

Specifies the direction that is considered an improvement. By default 'min' is used. Can also be 'max' (higher is better) and 'zero' (closer to zero is better).

baseline

An initial value that will be used as the best seen value in the begining. Model will stopm training if no better than baseline value is found in the first patience epochs.

## Value

A luz_callback that does early stopping.

## Note

This callback adds a on_early_stopping callback that can be used to call callbacks as soon as the model stops training.

If verbose=TRUE in fit.luz_module_generator() a message is printed when early stopping.

Other luz_callbacks: luz_callback_csv_logger(), luz_callback_interrupt(), luz_callback_keep_best_model(), luz_callback_lr_scheduler(), luz_callback_metrics(), luz_callback_mixup(), luz_callback_model_checkpoint(), luz_callback_profile(), luz_callback_progress(), luz_callback_train_valid(), luz_callback()
cb <- luz_callback_early_stopping()