code: def optimizer(self):
      lr = tf.get_variable(
          "learning_rate", initializer=0.1, trainable=False
      )
      opt = tf.train.MomentumOptimizer(lr, 0.9, use_nesterov=True)
      gradprocs = [
          gradproc.ScaleGradient(
              [("conv0.*", 0.1), ("group[0-2].*", 0.1)]
          )
      ]
      return optimizer.apply_grad_processors(opt, gradprocs)
  
imports: import argparse
  import multiprocessing
  import numpy
  import os
  import sys
  import cv2
  import tensorflow
  from tensorpack import *
  from tensorpack.dataflow import dataset
  from tensorpack.tfutils import gradproc, optimizer
  from tensorpack.tfutils.summary import *
  from tensorpack.utils import viz
  from tensorpack.utils.gpu import get_num_gpu
  from imagenet_utils import ImageNetModel, fbresnet_augmentor
  from resnet_model import preresnet_basicblock, preresnet_group
label_desc: Use image node_id 2 for calling the Model obj's underlying member method code with example usage: obj.optimizer() and returns: optimizer