pypomp.core.optimizer.Optimizer¶
- class pypomp.core.optimizer.Optimizer(clip_norm: float | None = None, scale: bool = False, ls: bool = False, c: float = 0.1, max_ls_itn: int = 10)[source]¶
Bases:
objectBase class for all pypomp optimizers.
- Parameters:
clip_norm (float, optional) – Maximum norm threshold for gradient clipping. Gradients are clipped to [-clip_norm, clip_norm] if provided. Defaults to None (no clipping).
scale (bool, default False) – Whether to normalize the update search direction to unit length before applying the learning rate.
ls (bool, default False) – Whether to enable the Armijo backtracking line search algorithm to determine optimal step size.
c (float, default 0.1) – The Armijo condition constant for line search, controlling how much the objective must decrease to accept a step size. Only used when ls=True.
max_ls_itn (int, default 10) – Maximum number of backtracking iterations per line search step. Only used when ls=True.