ResNet50.yaml 3.0 KB
Newer Older
D
dongshuilong 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
# global configs
Global:
  checkpoints: null
  pretrained_model: null
  output_dir: "./output/"
  device: "gpu"
  class_num: 431
  save_interval: 1
  eval_during_train: True
  eval_interval: 1
  epochs: 160
  print_batch_step: 10
  use_visualdl: False
  # used for static mode and model export
  image_shape: [3, 224, 224]
  save_inference_dir: "./inference"

# model architecture
D
dongshuilong 已提交
19 20
Arch:
  name: "RecModel"
21 22
  infer_output_key: "features"
  infer_add_softmax: False
D
dongshuilong 已提交
23
  Backbone: 
D
dongshuilong 已提交
24 25
    name: "ResNet50_last_stage_stride1"
    pretrained: True
D
dongshuilong 已提交
26 27
  BackboneStopLayer:
    name: "adaptive_avg_pool2d_0"
D
dongshuilong 已提交
28 29 30 31
  Neck:
    name: "VehicleNeck"
    in_channels: 2048
    out_channels: 512
D
dongshuilong 已提交
32 33 34 35 36 37
  Head:
    name: "ArcMargin"  
    embedding_size: 512
    class_num: 431
    margin: 0.15
    scale: 32
D
dongshuilong 已提交
38 39 40 41 42 43 44 45 46
 
# loss function config for traing/eval process
Loss:
  Train:
    - CELoss:
        weight: 1.0
    - TripletLossV2:
        weight: 1.0
        margin: 0.5
D
dongshuilong 已提交
47 48 49
  Eval:
    - CELoss:
        weight: 1.0
D
dongshuilong 已提交
50 51 52 53 54 55 56

Optimizer:
  name: Momentum
  momentum: 0.9
  lr:
    name: MultiStepDecay
    learning_rate: 0.01
D
dongshuilong 已提交
57
    milestones: [30, 60, 70, 80, 90, 100, 120, 140]
D
dongshuilong 已提交
58 59 60 61 62 63 64 65 66 67 68 69 70
    gamma: 0.5
    verbose: False
    last_epoch: -1
  regularizer:
    name: 'L2'
    coeff: 0.0005


# data loader for train and eval
DataLoader:
  Train:
    dataset:
        name: "CompCars"
71 72
        image_root: "./dataset/CompCars/image/"
        label_root: "./dataset/CompCars/label/"
D
dongshuilong 已提交
73
        bbox_crop: True
74
        cls_label_path: "./dataset/CompCars/train_test_split/classification/train_label.txt"
D
dongshuilong 已提交
75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95
        transform_ops:
          - ResizeImage:
              size: 224
          - RandFlipImage:
              flip_code: 1
          - AugMix:
              prob: 0.5
          - NormalizeImage:
              scale: 0.00392157
              mean: [0.485, 0.456, 0.406]
              std: [0.229, 0.224, 0.225]
              order: ''
          - RandomErasing:
              EPSILON: 0.5
              sl: 0.02
              sh: 0.4
              r1: 0.3
              mean: [0., 0., 0.]

    sampler:
        name: DistributedRandomIdentitySampler
D
dongshuilong 已提交
96
        batch_size: 128
D
dongshuilong 已提交
97 98 99 100
        num_instances: 2
        drop_last: False
        shuffle: True
    loader:
L
littletomatodonkey 已提交
101 102
        num_workers: 8
        use_shared_memory: True
D
dongshuilong 已提交
103 104 105 106 107

  Eval:
    # TOTO: modify to the latest trainer
    dataset: 
        name: "CompCars"
108 109 110
        image_root: "./dataset/CompCars/image/"
        label_root: "./dataset/CompCars/label/"
        cls_label_path: "./dataset/CompCars/train_test_split/classification/test_label.txt"
D
dongshuilong 已提交
111 112 113 114 115 116 117 118 119 120 121
        bbox_crop: True
        transform_ops:
          - ResizeImage:
              size: 224
          - NormalizeImage:
              scale: 0.00392157
              mean: [0.485, 0.456, 0.406]
              std: [0.229, 0.224, 0.225]
              order: ''
    sampler:
        name: DistributedBatchSampler
D
dongshuilong 已提交
122
        batch_size: 128
D
dongshuilong 已提交
123 124 125
        drop_last: False
        shuffle: False
    loader:
L
littletomatodonkey 已提交
126 127
        num_workers: 8
        use_shared_memory: True
D
dongshuilong 已提交
128 129 130

Metric:
    Train:
D
dongshuilong 已提交
131 132
    - TopkAcc:
        topk: [1, 5]
D
dongshuilong 已提交
133
    Eval:
D
dongshuilong 已提交
134 135
    - TopkAcc:
        topk: [1, 5]
D
dongshuilong 已提交
136