tf.keras.optimizers.schedules.LearningRateSchedule
Базовый класс расписания скорости обучения.
Используется в блокнотах
| Используется в учебных пособиях |
|---|
Вы можете использовать расписание скорости обучения для изменения скорости обучения вашего оптимизатора во времени.
Доступны несколько встроенных расписаний скорости обучения, таких как keras.optimizers.schedules.ExponentialDecay или keras.optimizers.schedules.PiecewiseConstantDecay:
lr_schedule = keras.optimizers.schedules.ExponentialDecay(
initial_learning_rate=1e-2,
decay_steps=10000,
decay_rate=0.9)
optimizer = keras.optimizers.SGD(learning_rate=lr_schedule)
Экземпляр LearningRateSchedule может быть передан в качестве аргумента learning_rate любого оптимизатора.
Чтобы реализовать собственный объект расписания, вы должны реализовать метод __call__, который принимает аргумент step (скалярный целочисленный тензор, текущее количество шагов обучения). Как и в случае с любым другим объектом Keras, вы также можете сделать свой объект сериализуемым, реализовав методы get_config и from_config.
Пример:
class MyLRSchedule(keras.optimizers.schedules.LearningRateSchedule):
def __init__(self, initial_learning_rate):
self.initial_learning_rate = initial_learning_rate
def __call__(self, step):
return self.initial_learning_rate / (step + 1)
optimizer = keras.optimizers.SGD(learning_rate=MyLRSchedule(0.1))
Методы
from_config
@classmethod
from_config(
config
)
Инициализирует LearningRateSchedule по его конфигурации.
| Аргументы | |
|---|---|
config | Вывод из get_config(). |
| Возвращаемое значение | |
|---|---|
Экземпляр LearningRateSchedule. |
get_config
get_config()
__call__
__call__(
step
)
Вызов self как функции.
© 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/optimizers/schedules/LearningRateSchedule