tf.keras.callbacks.ReduceLROnPlateau
Уменьшает скорость обучения, когда улучшение метрики прекращается.
Наследуется от: Callback
tf.keras.callbacks.ReduceLROnPlateau(
monitor='val_loss',
factor=0.1,
patience=10,
verbose=0,
mode='auto',
min_delta=0.0001,
cooldown=0,
min_lr=0.0,
**kwargs
)
Часто моделям полезно уменьшить скорость обучения в 2–10 раз, когда обучение перестаёт улучшаться. Этот callback отслеживает заданную величину и, если улучшение не наблюдается в течение указанного числа эпох ('patience'), уменьшает скорость обучения.
Пример:
reduce_lr = ReduceLROnPlateau(monitor='val_loss', factor=0.2,
patience=5, min_lr=0.001)
model.fit(x_train, y_train, callbacks=[reduce_lr])
| Аргументы | |
|---|---|
monitor | Строка. Отслеживаемая величина. |
factor | Число с плавающей точкой. Коэффициент, на который будет уменьшена скорость обучения. new_lr = lr * factor. |
patience | Целое число. Число эпох без улучшения, после которого скорость обучения будет уменьшена. |
verbose | Целое число. 0: без вывода сообщений, 1: вывод сообщений об обновлении. |
mode | Строка. Одно из значений {'auto', 'min', 'max'}. В режиме 'min' скорость обучения будет уменьшена, когда отслеживаемая величина перестанет снижаться; в режиме 'max' она будет уменьшена, когда отслеживаемая величина перестанет расти; в режиме 'auto' направление определяется автоматически по имени отслеживаемой величины. |
min_delta | Число с плавающей точкой. Порог для определения нового оптимума, позволяющий учитывать только значительные изменения. |
cooldown | Целое число. Число эпох ожидания перед возобновлением обычной работы после уменьшения скорости обучения. |
min_lr | Число с плавающей точкой. Нижняя граница скорости обучения. |
| Атрибуты | |
|---|---|
model | |
Методы
in_cooldown
in_cooldown()
on_batch_begin
on_batch_begin(
batch, logs=None
)
Псевдоним для обратной совместимости с on_train_batch_begin.
on_batch_end
on_batch_end(
batch, logs=None
)
Псевдоним для обратной совместимости с on_train_batch_end.
on_epoch_begin
on_epoch_begin(
epoch, logs=None
)
Вызывается в начале эпохи.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия. Эта функция должна вызываться только в режиме обучения.
| Аргументы | |
|---|---|
epoch | Целое число, индекс эпохи. |
logs | Словарь. В настоящее время для этого метода аргументу не передаются данные, но в будущем это может измениться. |
on_epoch_end
on_epoch_end(
epoch, logs=None
)
Вызывается в конце эпохи.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия. Эта функция должна вызываться только в режиме обучения.
| Аргументы | |
|---|---|
epoch | Целое число, индекс эпохи. |
logs | Словарь с результатами метрик для этой эпохи обучения и для эпохи проверки, если выполняется проверка. Ключи результатов проверки имеют префикс val_. Для эпохи обучения возвращаются значения метрик объекта Model. Пример: {'loss': 0.2, 'accuracy': 0.7}. |
on_predict_batch_begin
on_predict_batch_begin(
batch, logs=None
)
Вызывается в начале пакета в методах predict.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
Обратите внимание: если аргумент steps_per_execution метода compile в Model имеет значение N, этот метод будет вызываться только после каждых N пакетов.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. В настоящее время для этого метода аргументу не передаются данные, но в будущем это может измениться. |
on_predict_batch_end
on_predict_batch_end(
batch, logs=None
)
Вызывается в конце пакета в методах predict.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
Обратите внимание: если аргумент steps_per_execution метода compile в Model имеет значение N, этот метод будет вызываться только после каждых N пакетов.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. Агрегированные результаты метрик по текущий пакет включительно. |
on_predict_begin
on_predict_begin(
logs=None
)
Вызывается в начале предсказания.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время для этого метода аргументу не передаются данные, но в будущем это может измениться. |
on_predict_end
on_predict_end(
logs=None
)
Вызывается в конце предсказания.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время для этого метода аргументу не передаются данные, но в будущем это может измениться. |
on_test_batch_begin
on_test_batch_begin(
batch, logs=None
)
Вызывается в начале пакета в методах evaluate.
Также вызывается в начале пакета проверки в методах fit, если предоставлены проверочные данные.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
Обратите внимание: если аргумент steps_per_execution метода compile в Model имеет значение N, этот метод будет вызываться только после каждых N пакетов.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. В настоящее время для этого метода аргументу не передаются данные, но в будущем это может измениться. |
on_test_batch_end
on_test_batch_end(
batch, logs=None
)
Вызывается в конце пакета в методах evaluate.
Также вызывается в конце пакета проверки в методах fit, если предоставлены проверочные данные.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
Обратите внимание: если аргумент steps_per_execution метода compile в Model имеет значение N, этот метод будет вызываться только после каждых N пакетов.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. Агрегированные результаты метрик по текущий пакет включительно. |
on_test_begin
on_test_begin(
logs=None
)
Вызывается в начале оценки или проверки.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время для этого метода аргументу не передаются данные, но в будущем это может измениться. |
on_test_end
on_test_end(
logs=None
)
Вызывается в конце оценки или проверки.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время этому аргументу передаётся результат последнего вызова on_test_batch_end() для данного метода, но в будущем это может измениться. |
on_train_batch_begin
on_train_batch_begin(
batch, logs=None
)
Вызывается в начале обучающего пакета в методах fit.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
Обратите внимание: если аргумент steps_per_execution метода compile в Model имеет значение N, этот метод будет вызываться только после каждых N пакетов.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. В настоящее время для этого метода аргументу не передаются данные, но в будущем это может измениться. |
on_train_batch_end
on_train_batch_end(
batch, logs=None
)
Вызывается в конце обучающего пакета в методах fit.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
Обратите внимание: если аргумент steps_per_execution метода compile в Model имеет значение N, этот метод будет вызываться только после каждых N пакетов.
| Аргументы | |
|---|---|
batch | Целое число, индекс пакета в текущей эпохе. |
logs | Словарь. Агрегированные результаты метрик по текущий пакет включительно. |
on_train_begin
on_train_begin(
logs=None
)
Вызывается в начале обучения.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время для этого метода аргументу не передаются данные, но в будущем это может измениться. |
on_train_end
on_train_end(
logs=None
)
Вызывается в конце обучения.
Подклассы могут переопределить этот метод, чтобы выполнить необходимые действия.
| Аргументы | |
|---|---|
logs | Словарь. В настоящее время этому аргументу передаётся результат последнего вызова on_epoch_end() для данного метода, но в будущем это может измениться. |
set_model
set_model(
model
)
set_params
set_params(
params
)
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/keras/callbacks/ReduceLROnPlateau