tf.keras.callbacks.EarlyStopping
View source on GitHub |
Stop training when a monitored quantity has stopped improving.
Inherits From: Callback
tf.keras.callbacks.EarlyStopping( monitor='val_loss', min_delta=0, patience=0, verbose=0, mode='auto', baseline=None, restore_best_weights=False )
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. |
Example:
callback = tf.keras.callbacks.EarlyStopping(monitor='val_loss', patience=3) # This callback will stop the training when there is no improvement in # the validation loss for three consecutive epochs. model.fit(data, labels, epochs=100, callbacks=[callback], validation_data=(val_data, val_labels))
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 )
Called at the start of an epoch.
Subclasses should override for any actions to run. This function should only be called during TRAIN mode.
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. |
on_epoch_end
on_epoch_end( epoch, logs=None )
Called at the end of an epoch.
Subclasses should override for any actions to run. This function should only be called during TRAIN mode.
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_ . |
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 )
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/keras/callbacks/EarlyStopping