Spec-Zone.ru › PyTorch 2.14

LambdaLR

class torch.optim.lr_scheduler.LambdaLR(optimizer, lr_lambda, last_epoch=-1) [исходный код]

Устанавливает начальную скорость обучения.

Скорость обучения каждой группы параметров устанавливается равной начальному lr, умноженному на заданную функцию. Если last_epoch=-1, начальная скорость обучения устанавливается равной lr.

Параметры:
  • optimizer (Optimizer) – Оптимизатор, для которого создается оболочка.
  • lr_lambda (функция или список) – Функция, вычисляющая множитель по целочисленному параметру epoch, или список таких функций — по одной для каждой группы в optimizer.param_groups.
  • last_epoch (int) – Индекс последней эпохи. По умолчанию: -1.

Пример

>>> # Assuming optimizer has two groups.
>>> num_epochs = 100
>>> lambda1 = lambda epoch: epoch // 30
>>> lambda2 = lambda epoch: 0.95**epoch
>>> scheduler = LambdaLR(optimizer, lr_lambda=[lambda1, lambda2])
>>> for epoch in range(num_epochs):
>>>     train(...)
>>>     validate(...)
>>>     scheduler.step()
>>>
>>> # Alternatively, you can use a single lambda function for all groups.
>>> scheduler = LambdaLR(opt, lr_lambda=lambda epoch: epoch // 30)
>>> for epoch in range(num_epochs):
>>>     train(...)
>>>     validate(...)
>>>     scheduler.step()
../_images/LambdaLR.png
get_last_lr() [исходный код]

Возвращает последние скорости обучения, вычисленные этим планировщиком.

Возвращает:

list скоростей обучения с элементами для каждой из param_groups оптимизатора, имеющими те же типы, что и их group["lr"]ы.

Тип возвращаемого значения:

list[float | Tensor]

Примечание

Возвращаемые Tensor являются копиями и никогда не ссылаются на group["lr"] оптимизатора.

get_lr() [исходный код]

Вычисляет следующую скорость обучения для каждой из param_groups оптимизатора.

Масштабирует base_lrs с помощью выходных значений lr_lambdas на last_epoch.

Возвращает:

list скоростей обучения для каждой из param_groups оптимизатора, имеющих те же типы, что и их текущие group["lr"]ы.

Тип возвращаемого значения:

list[float | Tensor]

Примечание

Чтобы узнать последнюю скорость обучения, используйте вместо этого get_last_lr().

Примечание

Возвращаемые Tensor являются копиями и никогда не ссылаются на group["lr"] оптимизатора.

load_state_dict(state_dict) [исходный код]

Загружает состояние планировщика.

При сохранении или загрузке планировщика не забудьте также сохранить или загрузить состояние оптимизатора.

Параметры:

state_dict (dict) – Состояние планировщика. Должно быть объектом, возвращенным вызовом state_dict().

state_dict() [исходный код]

Возвращает состояние планировщика в виде dict.

Оно содержит запись для каждой переменной в self.__dict__, кроме оптимизатора. Функции-лямбды скорости обучения сохраняются только в том случае, если они являются вызываемыми объектами, но не если они представлены функциями или лямбдами.

При сохранении или загрузке планировщика не забудьте также сохранить или загрузить состояние оптимизатора.

Тип возвращаемого значения:

dict[str, Any]

step(epoch=None) [исходный код]

Выполняет шаг планировщика.

Параметры:

epoch (int, необязательный) –

Устарело начиная с версии 1.4: Если указано, устанавливает last_epoch в значение epoch и использует _get_closed_form_lr(), если он доступен. Эта возможность поддерживается не во всех случаях. Вместо этого вызывайте step() без аргументов.

Примечание

Вызывайте этот метод после вызова step() оптимизатора.

© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.optim.lr_scheduler.LambdaLR.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API