Missed TensorFlow World? Check out the recap. Learn more

tf.keras.callbacks.EarlyStopping

Class EarlyStopping

Inherits From: Callback

Defined in tensorflow/python/keras/callbacks.py.

Stop training when a monitored quantity has stopped improving.

Arguments:

  • monitor: Quantity to be monitored.
  • min_delta: Minimum change in the monitored quantity to qualify as an improvement, i.e. an absolute change of less than min_delta, will count as no improvement.
  • patience: Number of epochs with no improvement after which training will be stopped.
  • verbose: verbosity mode.
  • mode: One of {"auto", "min", "max"}. In min mode, training will stop when the quantity monitored has stopped decreasing; in max mode it will stop when the quantity monitored has stopped increasing; in auto mode, the direction is automatically inferred from the name of the monitored quantity.
  • baseline: Baseline value for the monitored quantity. Training will stop if the model doesn't show improvement over the baseline.
  • restore_best_weights: Whether to restore model weights from the epoch with the best value of the monitored quantity. If False, the model weights obtained at the last step of training are used.

__init__

__init__(
    monitor='val_loss',
    min_delta=0,
    patience=0,
    verbose=0,
    mode='auto',
    baseline=None,
    restore_best_weights=False
)

Initialize self. See help(type(self)) for accurate signature.

Methods

get_monitor_value

get_monitor_value(logs)

on_batch_begin

on_batch_begin(
    batch,
    logs=None
)

A backwards compatibility alias for on_train_batch_begin.

on_batch_end

on_batch_end(
    batch,
    logs=None
)

A backwards compatibility alias for on_train_batch_end.

on_epoch_begin

on_epoch_begin(
    epoch,
    logs=None,
    mode='train'
)

Called at the start of an epoch.

Subclasses should override for any actions to run.

Arguments:

  • epoch: integer, index of epoch.
  • logs: dict. Currently no data is passed to this argument for this method but that may change in the future.
  • mode: One of 'train'/'test'/'predict'

on_epoch_end

on_epoch_end(
    epoch,
    logs=None
)

Called at the end of an epoch.

Subclasses should override for any actions to run.

Arguments:

  • epoch: integer, index of epoch.
  • logs: dict, metric results for this training epoch, and for the validation epoch if validation is performed. Validation result keys are prefixed with val_.
  • mode: One of 'train'/'test'/'predict'

on_predict_batch_begin

on_predict_batch_begin(
    batch,
    logs=None
)

Called at the beginning of a batch in predict methods.

Subclasses should override for any actions to run.

Arguments:

  • batch: integer, index of batch within the current epoch.
  • logs: dict. Has keys batch and size representing the current batch number and the size of the batch.

on_predict_batch_end

on_predict_batch_end(
    batch,
    logs=None
)

Called at the end of a batch in predict methods.

Subclasses should override for any actions to run.

Arguments:

  • batch: integer, index of batch within the current epoch.
  • logs: dict. Metric results for this batch.

on_predict_begin

on_predict_begin(logs=None)

Called at the beginning of prediction.

Subclasses should override for any actions to run.

Arguments:

  • logs: dict. Currently no data is passed to this argument for this method but that may change in the future.

on_predict_end

on_predict_end(logs=None)

Called at the end of prediction.

Subclasses should override for any actions to run.

Arguments:

  • logs: dict. Currently no data is passed to this argument for this method but that may change in the future.

on_test_batch_begin

on_test_batch_begin(
    batch,
    logs=None
)

Called at the beginning of a batch in evaluate methods.

Also called at the beginning of a validation batch in the fit methods, if validation data is provided.

Subclasses should override for any actions to run.

Arguments:

  • batch: integer, index of batch within the current epoch.
  • logs: dict. Has keys batch and size representing the current batch number and the size of the batch.

on_test_batch_end

on_test_batch_end(
    batch,
    logs=None
)

Called at the end of a batch in evaluate methods.

Also called at the end of a validation batch in the fit methods, if validation data is provided.

Subclasses should override for any actions to run.

Arguments:

  • batch: integer, index of batch within the current epoch.
  • logs: dict. Metric results for this batch.

on_test_begin

on_test_begin(logs=None)

Called at the beginning of evaluation or validation.

Subclasses should override for any actions to run.

Arguments:

  • logs: dict. Currently no data is passed to this argument for this method but that may change in the future.

on_test_end

on_test_end(logs=None)

Called at the end of evaluation or validation.

Subclasses should override for any actions to run.

Arguments:

  • logs: dict. Currently no data is passed to this argument for this method but that may change in the future.

on_train_batch_begin

on_train_batch_begin(
    batch,
    logs=None
)

Called at the beginning of a training batch in fit methods.

Subclasses should override for any actions to run.

Arguments:

  • batch: integer, index of batch within the current epoch.
  • logs: dict. Has keys batch and size representing the current batch number and the size of the batch.

on_train_batch_end

on_train_batch_end(
    batch,
    logs=None
)

Called at the end of a training batch in fit methods.

Subclasses should override for any actions to run.

Arguments:

  • batch: integer, index of batch within the current epoch.
  • logs: dict. Metric results for this batch.

on_train_begin

on_train_begin(logs=None)

Called at the beginning of training.

Subclasses should override for any actions to run.

Arguments:

  • logs: dict. Currently no data is passed to this argument for this method but that may change in the future.

on_train_end

on_train_end(logs=None)

Called at the end of training.

Subclasses should override for any actions to run.

Arguments:

  • logs: dict. Currently no data is passed to this argument for this method but that may change in the future.

set_model

set_model(model)

set_params

set_params(params)