code: def parse_args():
      parser = argparse.ArgumentParser(
          description="Train a model for image classification."
      )
      parser.add_argument(
          "--batch-size",
          type=int,
          default=32,
          help="training batch size per device (CPU/GPU).",
      )
      parser.add_argument(
          "--num-gpus",
          type=int,
          default=0,
          help="number of gpus to use.",
      )
      parser.add_argument(
          "--model",
          type=str,
          default="resnet",
          help="model to use. options are resnet and wrn. default is resnet.",
      )
      parser.add_argument(
          "-j",
          "--num-data-workers",
          dest="num_workers",
          default=4,
          type=int,
          help="number of preprocessing workers",
      )
      parser.add_argument(
          "--num-epochs",
          type=int,
          default=3,
          help="number of training epochs.",
      )
      parser.add_argument(
          "--lr",
          type=float,
          default=0.1,
          help="learning rate. default is 0.1.",
      )
      parser.add_argument(
          "--momentum",
          type=float,
          default=0.9,
          help="momentum value for optimizer, default is 0.9.",
      )
      parser.add_argument(
          "--wd",
          type=float,
          default=0.0001,
          help="weight decay rate. default is 0.0001.",
      )
      parser.add_argument(
          "--lr-decay",
          type=float,
          default=0.1,
          help="decay rate of learning rate. default is 0.1.",
      )
      parser.add_argument(
          "--lr-decay-period",
          type=int,
          default=0,
          help="period in epoch for learning rate decays. default is 0 (has no effect).",
      )
      parser.add_argument(
          "--lr-decay-epoch",
          type=str,
          default="40,60",
          help="epochs at which learning rate decays. default is 40,60.",
      )
      parser.add_argument(
          "--drop-rate",
          type=float,
          default=0.0,
          help="dropout rate for wide resnet. default is 0.",
      )
      parser.add_argument(
          "--mode",
          type=str,
          help="mode in which to train the model. options are imperative, hybrid",
      )
      parser.add_argument(
          "--save-period",
          type=int,
          default=10,
          help="period in epoch of model saving.",
      )
      parser.add_argument(
          "--save-dir",
          type=str,
          default="params",
          help="directory of saved models",
      )
      parser.add_argument(
          "--logging-dir",
          type=str,
          default="logs",
          help="directory of training logs",
      )
      parser.add_argument(
          "--resume-from",
          type=str,
          help="resume training from the model",
      )
      parser.add_argument(
          "--save-plot-dir",
          type=str,
          default=".",
          help="the path to save the history plot",
      )
      opt = parser.parse_args()
      return opt
  
file_path: gluon-cv/scripts/classification/cifar/train_mixup_cifar10.py
imports: from __future__ import division
  import matplotlib
  import argparse, time, logging, random, math
  import numpy
  import mxnet
  from mxnet import gluon, nd
  from mxnet import autograd
  from mxnet.gluon import nn
  from mxnet.gluon.data.vision import transforms
  import gluoncv
  from gluoncv.model_zoo import get_model
  from gluoncv.data import transforms
  from gluoncv.utils import makedirs, TrainingHistory
label_desc: Use image node_id 1 for calling a global function with example usage: parse_args() and returns: opt