code: def learning_rate_schedule(
      current_epoch, current_batch, batches_per_epoch, batch_size
  ):
      """Handles linear scaling rule and LR decay.
  
      Scale learning rate at epoch boundaries provided in LR_SCHEDULE by the
      provided scaling factor.
  
      Args:
        current_epoch: integer, current epoch indexed from 0.
        current_batch: integer, current batch in the current epoch, indexed from 0.
        batches_per_epoch: integer, number of steps in an epoch.
        batch_size: integer, total batch sized.
  
      Returns:
        Adjusted learning rate.
      """
      del current_batch, batches_per_epoch  # not used
      initial_learning_rate = (
          common.BASE_LEARNING_RATE * batch_size / 128
      )
      learning_rate = initial_learning_rate
      for mult, start_epoch in LR_SCHEDULE:
          if current_epoch >= start_epoch:
              learning_rate = initial_learning_rate * mult
          else:
              break
      return learning_rate
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from absl import app
  from absl import flags
  from absl import logging
  import numpy
  import tensorflow
  from official.benchmark.models import cifar_preprocessing
  from official.benchmark.models import resnet_cifar_model
  from official.benchmark.models import synthetic_util
  from official.utils.flags import core
  from official.utils.misc import distribution_utils
  from official.utils.misc import keras_utils
  from official.vision.image_classification.resnet import common
label_desc: Use image node_id 1 for calling a global function with example usage: learning_rate_schedule(current_epoch, current_batch, batches_per_epoch, batch_size) and returns: learning_rate