kosmos.ml.config.factories.lr_scheduler

Classes

class LearningRateSchedulerConfig

Bases: abc.ABC

Learning rate scheduler configuration.


Methods

get_instance(optimizer: torch.optim.Optimizer) torch.optim.lr_scheduler.LRScheduler

Get the learning rate scheduler instance.

Returns:

Learning rate scheduler instance.

Return type:

LRScheduler


class StepLearningRateSchedulerConfig(step_size: int, gamma: float = 0.1)

Bases: LearningRateSchedulerConfig

Step learning rate scheduler configuration.

Initialize the step learning rate scheduler configuration.

Parameters:
  • step_size (int) – Period of learning rate decay.

  • gamma (float) – Multiplicative factor of learning rate decay. Defaults to 0.1.


Methods

get_instance(optimizer: torch.optim.Optimizer) torch.optim.lr_scheduler.StepLR

Get the step learning rate scheduler instance.

Parameters:

optimizer (Optimizer) – Optimizer instance.

Returns:

Step learning rate scheduler instance.

Return type:

StepLR


class ExponentialLearningRateSchedulerConfig(gamma: float)

Bases: LearningRateSchedulerConfig

Exponential learning rate scheduler configuration.

Initialize the exponential learning rate scheduler configuration.

Parameters:

gamma (float) – Multiplicative factor of learning rate decay.


Methods

get_instance(optimizer: torch.optim.Optimizer) torch.optim.lr_scheduler.ExponentialLR

Get the exponential learning rate scheduler instance.

Parameters:

optimizer (Optimizer) – Optimizer instance.

Returns:

Exponential learning rate scheduler instance.

Return type:

ExponentialLR


class CosineLearningRateSchedulerConfig(max_epochs: int, min_lr: float = 0.0)

Bases: LearningRateSchedulerConfig

Cosine annealing learning rate scheduler configuration.

Initialize the cosine learning rate scheduler configuration.

Parameters:
  • max_epochs (int) – Maximum number of epochs (iterations for the scheduler).

  • min_lr (float) – Minimum learning rate. Defaults to 0.0.


Methods

get_instance(optimizer: torch.optim.Optimizer) torch.optim.lr_scheduler.CosineAnnealingLR

Get the cosine learning rate scheduler instance.

Parameters:

optimizer (Optimizer) – Optimizer instance.

Returns:

Cosine learning rate scheduler instance.

Return type:

CosineAnnealingLR