class_docstr: Consine annealing with warm up and restarts.
  Proposed in `SGDR: Stochastic Gradient Descent with Warm Restarts`.
class_docstr_tok: ["Consine","annealing","with","warm","up","and","restarts",".","Proposed","in","`","SGDR",":","Stochastic","Gradient","Descent","with","Warm","Restarts","`","."]
code: def __init__(
      self,
      optimizer,
      total_epoch=150,
      start_cyclical=100,
      cyclical_base_lr=7e-4,
      cyclical_epoch=10,
      eta_min=0,
      warmup_epoch=10,
      last_epoch=-1,
  ):
      self.total_epoch = total_epoch
      self.start_cyclical = start_cyclical
      self.cyclical_epoch = cyclical_epoch
      self.cyclical_base_lr = cyclical_base_lr
      self.eta_min = eta_min
      self.warmup_epoch = warmup_epoch
      super(SGDRScheduler, self).__init__(optimizer, last_epoch)
  
file_path: insightface/parsing/dml_csr/utils/warmup_scheduler.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import math
  from torch.optim.lr_scheduler import _LRScheduler
label_desc: Use image node_id 1 to create a new SGDRScheduler object from inherited base classes: _LRScheduler with example: obj = SGDRScheduler(optimizer, total_epoch, start_cyclical, cyclical_base_lr, cyclical_epoch, eta_min, warmup_epoch, last_epoch)