GeneralRecognition_PPLCNet_x2_5.yaml 3.1 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
# global configs
Global:
  checkpoints: null
  pretrained_model: null
  output_dir: ./output/
  device: gpu
  save_interval: 1
  eval_during_train: True
  eval_interval: 1
  epochs: 100
  print_batch_step: 10
  use_visualdl: False
  # used for static mode and model export
  image_shape: [3, 224, 224]
  save_inference_dir: ./inference
  eval_mode: retrieval
  use_dali: False
  to_static: False

# model architecture
Arch:
  name: RecModel
  infer_output_key: features
  infer_add_softmax: False

26
  Backbone:
27
    name: PPLCNet_x2_5
28 29 30
    pretrained: True
    use_ssld: True
  BackboneStopLayer:
G
gaotingquan 已提交
31
    name: "flatten"
32 33 34 35 36
  Neck:
    name: FC
    embedding_size: 1280
    class_num: 512
  Head:
37
    name: ArcMargin
38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
    embedding_size: 512
    class_num: 185341
    margin: 0.2
    scale: 30

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

Optimizer:
  name: Momentum
  momentum: 0.9
  lr:
    name: Cosine
    learning_rate: 0.04
    warmup_epoch: 5
  regularizer:
60
    name: "L2"
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81
    coeff: 0.00001

# data loader for train and eval
DataLoader:
  Train:
    dataset:
      name: ImageNetDataset
      image_root: ./dataset/
      cls_label_path: ./dataset/train_reg_all_data.txt
      transform_ops:
        - DecodeImage:
            to_rgb: True
            channel_first: False
        - RandCropImage:
            size: 224
        - RandFlipImage:
            flip_code: 1
        - NormalizeImage:
            scale: 1.0/255.0
            mean: [0.485, 0.456, 0.406]
            std: [0.229, 0.224, 0.225]
82
            order: ""
83 84 85

    sampler:
      name: DistributedBatchSampler
86
      batch_size: 256
87 88 89 90 91 92 93 94
      drop_last: False
      shuffle: True
    loader:
      num_workers: 4
      use_shared_memory: True

  Eval:
    Query:
95
      dataset:
96 97 98 99 100 101 102 103 104 105 106 107 108
        name: VeriWild
        image_root: ./dataset/Aliproduct/
        cls_label_path: ./dataset/Aliproduct/val_list.txt
        transform_ops:
          - DecodeImage:
              to_rgb: True
              channel_first: False
          - ResizeImage:
              size: 224
          - NormalizeImage:
              scale: 0.00392157
              mean: [0.485, 0.456, 0.406]
              std: [0.229, 0.224, 0.225]
109
              order: ""
110 111 112 113 114 115 116 117 118 119
      sampler:
        name: DistributedBatchSampler
        batch_size: 64
        drop_last: False
        shuffle: False
      loader:
        num_workers: 4
        use_shared_memory: True

    Gallery:
120
      dataset:
121 122 123 124 125 126 127 128 129 130 131 132 133
        name: VeriWild
        image_root: ./dataset/Aliproduct/
        cls_label_path: ./dataset/Aliproduct/val_list.txt
        transform_ops:
          - DecodeImage:
              to_rgb: True
              channel_first: False
          - ResizeImage:
              size: 224
          - NormalizeImage:
              scale: 0.00392157
              mean: [0.485, 0.456, 0.406]
              std: [0.229, 0.224, 0.225]
134
              order: ""
135 136 137 138 139 140 141 142 143 144 145 146 147
      sampler:
        name: DistributedBatchSampler
        batch_size: 64
        drop_last: False
        shuffle: False
      loader:
        num_workers: 4
        use_shared_memory: True

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