code: def __init__(
      self,
      num_processes,
      lrs,
      max_epochs,
      steps_per_epoch,
      warmup_epochs=None,
  ):
      super().__init__(num_processes, lrs)
      if warmup_epochs:
          self.warmup_epochs = warmup_epochs
          self.warmup_on_epoch = True
      else:
          self.warmup_epochs = steps_per_epoch * max_epochs // 10
          self.warmup_on_epoch = False
  
imports: import os
  import pytest
  from unittest import TestCase
  from test.pytorch.utils._train_torch_lightning import create_data_loader, data_transform
  from test.pytorch.utils._train_torch_lightning import create_test_data_loader
  from bigdl.nano.pytorch.vision.models import vision
  from bigdl.nano.pytorch import Trainer
  from bigdl.nano.utils.pytorch import TORCH_VERSION_LESS_1_10, TORCH_VERSION_LESS_2_0
  import pytorch_lightning
  import torch
  from torch import nn
  import torch.nn.functional
label_desc: Use image node_id 1 to create a new CheckWarmupCallback object from inherited base classes: CheckLinearLRScaleCallback with example: obj = CheckWarmupCallback(num_processes, lrs, max_epochs, steps_per_epoch, warmup_epochs)