tf.keras.callbacks.ReduceLROnPlateau
| Просмотреть исходный код на GitHub |
Уменьшение скорости обучения, когда метрика перестает улучшаться.
Наследуется от: 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, **kwargs
)
Модели часто выигрывают от уменьшения скорости обучения в 2-10 раз после того, как обучение замедлится. Этот обработчик отслеживает величину, и если улучшений не наблюдается в течение заданного количества эпох «терпения», скорость обучения уменьшается.
Пример:
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 | количество эпох ожидания, прежде чем возобновить нормальную работу после уменьшения lr. |
min_lr | нижняя граница скорости обучения. |
Методы
in_cooldown
in_cooldown()
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/r2.4/api_docs/python/tf/keras/callbacks/ReduceLROnPlateau