strong_baseline_m1.yaml 3.9 KB
Newer Older
W
weishengyu 已提交
1 2 3 4 5 6
# global configs
Global:
  checkpoints: null
  pretrained_model: null
  output_dir: "./output/"
  device: "gpu"
H
HydrogenSulfate 已提交
7
  save_interval: 40
W
weishengyu 已提交
8
  eval_during_train: True
W
dbg  
weishengyu 已提交
9
  eval_interval: 10
W
weishengyu 已提交
10
  epochs: 120
11
  print_batch_step: 20
W
weishengyu 已提交
12
  use_visualdl: False
H
HydrogenSulfate 已提交
13
  eval_mode: "retrieval"
H
HydrogenSulfate 已提交
14
  retrieval_feature_from: "features" # 'backbone' or 'features'
W
weishengyu 已提交
15 16 17 18 19 20 21 22 23 24
  # used for static mode and model export
  image_shape: [3, 256, 128]
  save_inference_dir: "./inference"

# model architecture
Arch:
  name: "RecModel"
  infer_output_key: "features"
  infer_add_softmax: False
  Backbone:
W
weishengyu 已提交
25
    name: "ResNet50_last_stage_stride1"
W
weishengyu 已提交
26
    pretrained: True
W
dbg  
weishengyu 已提交
27
    stem_act: null
W
weishengyu 已提交
28
  BackboneStopLayer:
W
dbg  
weishengyu 已提交
29
    name: "flatten"
W
dbg  
weishengyu 已提交
30 31
  Neck:
    name: BNNeck
H
HydrogenSulfate 已提交
32
    num_features: &feat_dim 2048
H
HydrogenSulfate 已提交
33 34 35 36 37 38 39 40
    weight_attr:
      initializer:
        name: Constant
        value: 1.0
    bias_attr:
      initializer:
        name: Constant
        value: 0.0
H
HydrogenSulfate 已提交
41
      learning_rate: 1.0e-20 # NOTE: Temporarily set lr small enough to freeze the bias to zero
W
weishengyu 已提交
42 43
  Head:
    name: "FC"
H
HydrogenSulfate 已提交
44
    embedding_size: *feat_dim
H
HydrogenSulfate 已提交
45
    class_num: 751
H
HydrogenSulfate 已提交
46 47 48 49 50
    weight_attr:
      initializer:
        name: Normal
        std: 0.001
    bias_attr: False
W
weishengyu 已提交
51 52 53 54 55 56

# loss function config for traing/eval process
Loss:
  Train:
    - CELoss:
        weight: 1.0
W
weishengyu 已提交
57
        epsilon: 0.1
W
dbg  
weishengyu 已提交
58
    - TripletLossV2:
W
weishengyu 已提交
59
        weight: 1.0
W
weishengyu 已提交
60
        margin: 0.3
H
HydrogenSulfate 已提交
61 62
        normalize_feature: False
        feature_from: "backbone"
W
weishengyu 已提交
63 64 65 66 67 68 69 70
  Eval:
    - CELoss:
        weight: 1.0

Optimizer:
  name: Adam
  lr:
    name: Piecewise
W
dbg  
weishengyu 已提交
71 72
    decay_epochs: [30, 60]
    values: [0.00035, 0.000035, 0.0000035]
W
weishengyu 已提交
73 74
    warmup_epoch: 10
    warmup_start_lr: 0.0000035
H
HydrogenSulfate 已提交
75 76
    by_epoch: True
    last_epoch: 0
W
weishengyu 已提交
77 78 79 80 81 82 83 84
  regularizer:
    name: 'L2'
    coeff: 0.0005

# data loader for train and eval
DataLoader:
  Train:
    dataset:
H
HydrogenSulfate 已提交
85 86 87
        name: "Market1501"
        image_root: "./dataset/"
        cls_label_path: "bounding_box_train"
H
HydrogenSulfate 已提交
88
        backend: "pil"
W
weishengyu 已提交
89 90
        transform_ops:
          - ResizeImage:
W
dbg  
weishengyu 已提交
91
              size: [128, 256]
H
HydrogenSulfate 已提交
92
              return_numpy: False
H
HydrogenSulfate 已提交
93
              backend: "pil"
W
weishengyu 已提交
94 95
          - RandFlipImage:
              flip_code: 1
W
dbg  
weishengyu 已提交
96 97
          - Pad:
              padding: 10
H
HydrogenSulfate 已提交
98
          - RandCropImageV2:
W
dbg  
weishengyu 已提交
99
              size: [128, 256]
H
HydrogenSulfate 已提交
100 101
          - ToTensor:
          - Normalize:
W
weishengyu 已提交
102 103 104 105 106 107 108
              mean: [0.485, 0.456, 0.406]
              std: [0.229, 0.224, 0.225]
          - RandomErasing:
              EPSILON: 0.5
              sl: 0.02
              sh: 0.4
              r1: 0.3
H
HydrogenSulfate 已提交
109
              mean: [0.485, 0.456, 0.406]
W
weishengyu 已提交
110
    sampler:
W
weishengyu 已提交
111
        name: DistributedRandomIdentitySampler
W
dbg  
weishengyu 已提交
112
        batch_size: 64
W
weishengyu 已提交
113
        num_instances: 4
H
HydrogenSulfate 已提交
114
        drop_last: False
W
weishengyu 已提交
115 116
        shuffle: True
    loader:
H
HydrogenSulfate 已提交
117
        num_workers: 4
W
weishengyu 已提交
118 119 120 121
        use_shared_memory: True
  Eval:
    Query:
      dataset:
H
HydrogenSulfate 已提交
122 123 124
        name: "Market1501"
        image_root: "./dataset/"
        cls_label_path: "query"
H
HydrogenSulfate 已提交
125
        backend: "pil"
W
weishengyu 已提交
126 127
        transform_ops:
          - ResizeImage:
W
dbg  
weishengyu 已提交
128
              size: [128, 256]
H
HydrogenSulfate 已提交
129
              return_numpy: False
H
HydrogenSulfate 已提交
130
              backend: "pil"
H
HydrogenSulfate 已提交
131 132
          - ToTensor:
          - Normalize:
W
weishengyu 已提交
133 134 135 136
              mean: [0.485, 0.456, 0.406]
              std: [0.229, 0.224, 0.225]
      sampler:
        name: DistributedBatchSampler
W
dbg  
weishengyu 已提交
137
        batch_size: 128
W
weishengyu 已提交
138 139 140
        drop_last: False
        shuffle: False
      loader:
H
HydrogenSulfate 已提交
141
        num_workers: 4
W
weishengyu 已提交
142 143 144 145
        use_shared_memory: True

    Gallery:
      dataset:
H
HydrogenSulfate 已提交
146 147 148
        name: "Market1501"
        image_root: "./dataset/"
        cls_label_path: "bounding_box_test"
H
HydrogenSulfate 已提交
149
        backend: "pil"
W
weishengyu 已提交
150 151
        transform_ops:
          - ResizeImage:
W
dbg  
weishengyu 已提交
152
              size: [128, 256]
H
HydrogenSulfate 已提交
153
              return_numpy: False
H
HydrogenSulfate 已提交
154
              backend: "pil"
H
HydrogenSulfate 已提交
155 156
          - ToTensor:
          - Normalize:
W
weishengyu 已提交
157 158 159 160
              mean: [0.485, 0.456, 0.406]
              std: [0.229, 0.224, 0.225]
      sampler:
        name: DistributedBatchSampler
W
dbg  
weishengyu 已提交
161
        batch_size: 128
W
weishengyu 已提交
162 163 164
        drop_last: False
        shuffle: False
      loader:
H
HydrogenSulfate 已提交
165
        num_workers: 4
W
weishengyu 已提交
166 167 168 169 170 171 172
        use_shared_memory: True

Metric:
  Eval:
    - Recallk:
        topk: [1, 5]
    - mAP: {}