Skip to content

Scheduler

simplegrad.core.scheduler.Scheduler

Base class for all learning rate schedulers.

Subclasses must implement step() to define the schedule update rule.

Source code in simplegrad/core/scheduler.py
class Scheduler:
    """Base class for all learning rate schedulers.

    Subclasses must implement `step()` to define the schedule update rule.
    """

    def __init__(self, optimizer):
        if not optimizer:
            raise ValueError("Optimizer must be provided.")
        self.optimizer = optimizer
        self.steps = 0

    def step(self, *args, **kwargs):
        """Advance the scheduler by one step. Must be implemented by subclasses."""
        raise NotImplementedError

step(*args, **kwargs)

Advance the scheduler by one step. Must be implemented by subclasses.

Source code in simplegrad/core/scheduler.py
def step(self, *args, **kwargs):
    """Advance the scheduler by one step. Must be implemented by subclasses."""
    raise NotImplementedError