text: _base_ = [
      '../../../_base_/datasets/tiny_imagenet/sz64_bs100.py',
      '../../../_base_/default_runtime.py',
  ]
  
  # model settings
  model = dict(
      type='MixUpClassification',
      pretrained=None,
      alpha=[0.1, 1, 1,],  # list of alpha
      mix_mode=["mixup", "cutmix", "vanilla",],  # list of chosen mixup modes
      mix_prob=None,  # list of applying probs (sum=1), None for random applying
      mix_repeat=1,  # times of repeating mixup aug
      mix_args=dict(
          attentivemix=dict(grid_size=32, top_k=None, beta=8),  # AttentiveMix+ in this repo (use pre-trained)
          automix=dict(mask_adjust=0, lam_margin=0),  # require pre-trained mixblock
          fmix=dict(decay_power=3, size=(64,64), max_soft=0., reformulate=False),
          manifoldmix=dict(layer=(0, 3)),
          puzzlemix=dict(transport=True, t_batch_size=None, t_size=4,  # t_size for small-scale datasets
              block_num=5, beta=1.2, gamma=0.5, eta=0.2, neigh_size=4, n_labels=3, t_eps=0.8),
          resizemix=dict(scope=(0.1, 0.8), use_alpha=True),
          samix=dict(mask_adjust=0, lam_margin=0.08),  # require pre-trained mixblock
      ),
      backbone=dict(
          type='ResNet_CIFAR',  # CIFAR version
          # type='ResNet_Mix_CIFAR',  # required by 'manifoldmix'
          depth=18,
          num_stages=4,
          out_indices=(3,),  # no conv-1, x-1: stage-x
          style='pytorch'),
      head=dict(
          type='ClsHead',  # normal CE loss (NOT SUPPORT PuzzleMix, use soft/sigm CE instead)
          loss=dict(type='CrossEntropyLoss', loss_weight=1.0),
          with_avg_pool=True, multi_label=False, in_channels=512, num_classes=200)
  )
  
  # optimizer
  optimizer = dict(type='SGD', lr=0.2, momentum=0.9, weight_decay=0.0001)
  optimizer_config = dict(grad_clip=None)
  
  # lr scheduler
  lr_config = dict(policy='CosineAnnealing', min_lr=0)
  
  # runtime settings
  runner = dict(type='EpochBasedRunner', max_epochs=400)
  