tf.keras.callbacks.LearningRateScheduler
Планировщик скорости обучения.
Наследует: Callback
tf.keras.callbacks.LearningRateScheduler(
schedule, verbose=0
)
Используется в блокнотах
| Используется в руководствах |
|---|
В начале каждой эпохи этот обратный вызов получает обновлённое значение скорости обучения из функции schedule, переданной в __init__, с текущей эпохой и текущей скоростью обучения, а затем применяет обновлённую скорость обучения к оптимизатору.
| Аргументы | |
|---|---|
schedule | Функция, принимающая в качестве входных данных индекс эпохи (целое число, начиная с 0) и текущую скорость обучения (число с плавающей точкой) и возвращающая в качестве результата новую скорость обучения (число с плавающей точкой). |
verbose | Целое число. 0: без вывода, 1: выводить сообщения об обновлении. |
Пример:
# This function keeps the initial learning rate for the first ten epochs
# and decreases it exponentially after that.
def scheduler(epoch, lr):
if epoch < 10:
return lr
else:
return lr * ops.exp(-0.1)
model = keras.models.Sequential([keras.layers.Dense(10)])
model.compile(keras.optimizers.SGD(), loss='mse')
round(model.optimizer.learning_rate, 5)
0.01callback = keras.callbacks.LearningRateScheduler(scheduler)
history = model.fit(np.arange(100).reshape(5, 20), np.zeros(5),
epochs=15, callbacks=[callback], verbose=0)
round(model.optimizer.learning_rate, 5)
0.00607| Атрибуты | |
|---|---|
model | |
Методы
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/LearningRateScheduler