MobileViTV3_x0_75.yaml 3.8 KB
Newer Older
Y
Yang Nie 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
# global configs
Global:
  checkpoints: null
  pretrained_model: null
  output_dir: ./output/
  device: gpu
  save_interval: 1
  eval_during_train: True
  eval_interval: 1
  epochs: 300
  print_batch_step: 10
  use_visualdl: False
  # used for static mode and model export
  image_shape: [3, 256, 256]
  save_inference_dir: ./inference
  use_dali: False

# mixed precision training
AMP:
G
gaotingquan 已提交
20 21
  use_amp: True
  use_fp16_test: False
Y
Yang Nie 已提交
22 23
  scale_loss: 65536
  use_dynamic_loss_scaling: True
G
gaotingquan 已提交
24
  use_promote: False
G
gaotingquan 已提交
25
  # O1: mixed fp16, O2: pure fp16
Y
Yang Nie 已提交
26 27 28 29 30 31 32 33
  level: O1

# model ema
EMA:
  decay: 0.9995

# model architecture
Arch:
G
gaotingquan 已提交
34
  name: MobileViTV3_x0_75
Y
Yang Nie 已提交
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52
  class_num: 1000
  classifier_dropout: 0.

# loss function config for traing/eval process
Loss:
  Train:
    - CELoss:
        weight: 1.0
        epsilon: 0.1
  Eval:
    - CELoss:
        weight: 1.0

Optimizer:
  name: AdamW
  beta1: 0.9
  beta2: 0.999
  epsilon: 1e-8
Y
update  
Yang Nie 已提交
53 54
  weight_decay: 0.05
  one_dim_param_no_weight_decay: True
Y
Yang Nie 已提交
55 56
  lr:
    name: Cosine
57
    learning_rate: 0.002  # for total batch size 1020 by referring to official
Y
Yang Nie 已提交
58
    eta_min: 0.0002
Y
Yang Nie 已提交
59
    warmup_epoch: 16  # 20000 iterations
Y
update  
Yang Nie 已提交
60 61
    warmup_start_lr: 1e-6
  clip_norm: 10
Y
Yang Nie 已提交
62 63 64 65 66

# data loader for train and eval
DataLoader:
  Train:
    dataset:
Y
update  
Yang Nie 已提交
67
      name: ImageNetDataset
Y
Yang Nie 已提交
68 69 70 71 72 73
      image_root: ./dataset/ILSVRC2012/
      cls_label_path: ./dataset/ILSVRC2012/train_list.txt
      transform_ops:
        - DecodeImage:
            to_rgb: True
            channel_first: False
Y
update  
Yang Nie 已提交
74
            backend: pil
Y
Yang Nie 已提交
75 76
        - RandCropImage:
            size: 256
Y
update  
Yang Nie 已提交
77 78
            interpolation: bicubic
            backend: pil
Y
Yang Nie 已提交
79 80 81
            use_log_aspect: True
        - RandFlipImage:
            flip_code: 1
Y
Yang Nie 已提交
82 83
        - RandAugmentV3:
            num_layers: 2
Y
update  
Yang Nie 已提交
84
            interpolation: bicubic
Y
Yang Nie 已提交
85 86 87 88 89
        - NormalizeImage:
            scale: 1.0/255.0
            mean: [0.0, 0.0, 0.0]
            std: [1.0, 1.0, 1.0]
            order: ''
Y
update  
Yang Nie 已提交
90 91 92 93 94 95 96
        - RandomErasing:
            EPSILON: 0.25
            sl: 0.02
            sh: 1.0/3.0
            r1: 0.3
            attempt: 10
            use_log_aspect: True
97
            mode: const
Y
update  
Yang Nie 已提交
98 99 100 101
      batch_transform_ops:
        - OpSampler:
            MixupOperator:
              alpha: 0.2
102
              prob: 0.25
Y
update  
Yang Nie 已提交
103 104
            CutmixOperator:
              alpha: 1.0
105
              prob: 0.25
Y
Yang Nie 已提交
106
    sampler:
Y
update  
Yang Nie 已提交
107
      name: DistributedBatchSampler
108
      batch_size: 128
Y
update  
Yang Nie 已提交
109
      drop_last: False
Y
Yang Nie 已提交
110
      shuffle: True
Y
Yang Nie 已提交
111 112 113 114
    loader:
      num_workers: 4
      use_shared_memory: True
  Eval:
115
    dataset:
Y
Yang Nie 已提交
116 117 118 119 120
      name: ImageNetDataset
      image_root: ./dataset/ILSVRC2012/
      cls_label_path: ./dataset/ILSVRC2012/val_list.txt
      transform_ops:
        - DecodeImage:
Y
update  
Yang Nie 已提交
121
            to_np: False
Y
Yang Nie 已提交
122
            channel_first: False
Y
update  
Yang Nie 已提交
123
            backend: pil
Y
Yang Nie 已提交
124 125
        - ResizeImage:
            resize_short: 288
Y
update  
Yang Nie 已提交
126 127
            interpolation: bicubic
            backend: pil
Y
Yang Nie 已提交
128 129 130 131 132 133 134 135 136
        - CropImage:
            size: 256
        - NormalizeImage:
            scale: 1.0/255.0
            mean: [0.0, 0.0, 0.0]
            std: [1.0, 1.0, 1.0]
            order: ''
    sampler:
      name: DistributedBatchSampler
Y
update  
Yang Nie 已提交
137
      batch_size: 128
Y
Yang Nie 已提交
138 139 140 141 142 143 144 145 146 147 148
      drop_last: False
      shuffle: False
    loader:
      num_workers: 4
      use_shared_memory: True

Infer:
  infer_imgs: docs/images/inference_deployment/whl_demo.jpg
  batch_size: 10
  transforms:
    - DecodeImage:
Y
update  
Yang Nie 已提交
149
        to_np: False
Y
Yang Nie 已提交
150
        channel_first: False
Y
update  
Yang Nie 已提交
151
        backend: pil
Y
Yang Nie 已提交
152 153
    - ResizeImage:
        resize_short: 288
Y
update  
Yang Nie 已提交
154 155
        interpolation: bicubic
        backend: pil
Y
Yang Nie 已提交
156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175
    - CropImage:
        size: 256
    - NormalizeImage:
        scale: 1.0/255.0
        mean: [0.0, 0.0, 0.0]
        std: [1.0, 1.0, 1.0]
        order: ''
    - ToCHWImage:
  PostProcess:
    name: Topk
    topk: 5
    class_id_map_file: ppcls/utils/imagenet1k_label_list.txt

Metric:
  Train:
    - TopkAcc:
        topk: [1, 5]
  Eval:
    - TopkAcc:
        topk: [1, 5]