code: def get_lr(self):
      if not self._get_lr_called_within_step:
          warnings.warn(
              "To get the last learning rate computed by the scheduler, "
              "please use `get_last_lr()`.",
              UserWarning,
          )
  
      if self.last_epoch == 0 or self.last_epoch > self.total_iters:
          return [group["lr"] for group in self.optimizer.param_groups]
  
      if self.last_epoch <= self.warmup_iters:
          return [
              base_lr * self.last_epoch / self.warmup_iters
              for base_lr in self.base_lrs
          ]
      else:
          l = self.last_epoch
          w = self.warmup_iters
          t = self.total_iters
          decay_factor = (
              (1.0 - (l - w) / (t - w)) / (1.0 - (l - 1 - w) / (t - w))
          ) ** self.power
      return [
          group["lr"] * decay_factor
          for group in self.optimizer.param_groups
      ]
  
file_path: insightface/recognition/arcface_torch/lr_scheduler.py
imports: from torch.optim.lr_scheduler import _LRScheduler
  from torch.optim import SGD
  import torch
  import warnings
label_desc: Use image node_id 2 for calling the PolynomialLRWarmup obj's underlying member method code with example usage: obj.get_lr() and returns: unknown, unknown, unknown