ppyolo_mobilenet_v3_small.yml 4.1 KB
Newer Older
K
Kaipeng Deng 已提交
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 26 27 28 29 30 31
architecture: YOLOv3
use_gpu: true
max_iters: 250000
log_smooth_window: 20
log_iter: 20
save_dir: output
snapshot_iter: 10000
metric: COCO
pretrain_weights: https://paddle-imagenet-models-name.bj.bcebos.com/MobileNetV3_small_x1_0_ssld_pretrained.tar
weights: output/ppyolo_tiny/model_final
num_classes: 80
use_fine_grained_loss: true
use_ema: true
ema_decay: 0.9998

YOLOv3:
  backbone: MobileNetV3
  yolo_head: YOLOv3Head
  use_fine_grained_loss: true

MobileNetV3:
  norm_type: sync_bn
  norm_decay: 0.
  model_name: small
  scale: 1.
  extra_block_filters: []
  feature_maps: [1, 2, 3, 4, 6]


YOLOv3Head:
  anchor_masks: [[3, 4, 5], [0, 1, 2]]
32 33
  anchors: [[11, 18], [34, 47], [51, 126],
            [115, 71], [120, 195], [254, 235]]
K
Kaipeng Deng 已提交
34 35
  norm_decay: 0.
  conv_block_num: 0
36
  coord_conv: true
K
Kaipeng Deng 已提交
37 38 39 40 41 42 43 44 45
  scale_x_y: 1.05
  yolo_loss: YOLOv3Loss
  spp: true
  nms:
    background_label: -1
    keep_top_k: 100
    nms_threshold: 0.45
    nms_top_k: 1000
    normalized: false
46
    score_threshold: 0.005
K
Kaipeng Deng 已提交
47 48 49
  drop_block: true

YOLOv3Loss:
50
  ignore_thresh: 0.5
K
Kaipeng Deng 已提交
51 52 53 54 55 56 57
  scale_x_y: 1.05
  label_smooth: false
  use_fine_grained_loss: true
  iou_loss: IouLoss

IouLoss:
  loss_weight: 2.5
58 59
  max_height: 512
  max_width: 512
K
Kaipeng Deng 已提交
60 61

LearningRate:
62
  base_lr: 0.005
K
Kaipeng Deng 已提交
63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84
  schedulers:
  - !PiecewiseDecay
    gamma: 0.1
    milestones:
    - 150000
    - 200000
  - !LinearWarmup
    start_factor: 0.
    steps: 4000

OptimizerBuilder:
  optimizer:
    momentum: 0.9
    type: Momentum
  regularizer:
    factor: 0.0005
    type: L2

_READER_: 'ppyolo_reader.yml'
TrainReader:
  inputs_def:
    fields: ['image', 'gt_bbox', 'gt_class', 'gt_score']
85
    num_max_boxes: 90
K
Kaipeng Deng 已提交
86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
  dataset:
    !COCODataSet
      image_dir: train2017
      anno_path: annotations/instances_train2017.json
      dataset_dir: dataset/coco
      with_background: false
  sample_transforms:
    - !DecodeImage
      to_rgb: True
      with_mixup: True
    - !MixupImage
      alpha: 1.5
      beta: 1.5
    - !ColorDistort {}
    - !RandomExpand
      fill_value: [123.675, 116.28, 103.53]
    - !RandomCrop {}
    - !RandomFlipImage
      is_normalized: false
    - !NormalizeBox {}
    - !PadBox
107
      num_max_boxes: 90
K
Kaipeng Deng 已提交
108 109 110
    - !BboxXYXY2XYWH {}
  batch_transforms:
  - !RandomShape
111
    sizes: [224, 256, 288, 320, 352, 384, 416, 448, 480, 512]
K
Kaipeng Deng 已提交
112 113 114 115 116 117 118 119 120 121 122 123 124 125
    random_inter: True
  - !NormalizeImage
    mean: [0.485, 0.456, 0.406]
    std: [0.229, 0.224, 0.225]
    is_scale: True
    is_channel_first: false
  - !Permute
    to_bgr: false
    channel_first: True
  # Gt2YoloTarget is only used when use_fine_grained_loss set as true,
  # this operator will be deleted automatically if use_fine_grained_loss
  # is set as false
  - !Gt2YoloTarget
    anchor_masks: [[3, 4, 5], [0, 1, 2]]
126 127
    anchors: [[11, 18], [34, 47], [51, 126],
              [115, 71], [120, 195], [254, 235]]
K
Kaipeng Deng 已提交
128
    downsample_ratios: [32, 16]
129 130
    iou_thresh: 0.25
    num_classes: 80
K
Kaipeng Deng 已提交
131 132
  batch_size: 32
  shuffle: true
133
  mixup_epoch: 200
K
Kaipeng Deng 已提交
134 135 136 137 138 139 140 141
  drop_last: true
  worker_num: 8
  bufsize: 4
  use_process: true

EvalReader:
  inputs_def:
    fields: ['image', 'im_size', 'im_id']
142
    num_max_boxes: 90
K
Kaipeng Deng 已提交
143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160
  dataset:
    !COCODataSet
      image_dir: val2017
      anno_path: annotations/instances_val2017.json
      dataset_dir: dataset/coco
      with_background: false
  sample_transforms:
    - !DecodeImage
      to_rgb: True
    - !ResizeImage
      target_size: 320
      interp: 2
    - !NormalizeImage
      mean: [0.485, 0.456, 0.406]
      std: [0.229, 0.224, 0.225]
      is_scale: True
      is_channel_first: false
    - !PadBox
161
      num_max_boxes: 90
K
Kaipeng Deng 已提交
162 163 164
    - !Permute
      to_bgr: false
      channel_first: True
165
  batch_size: 1
K
Kaipeng Deng 已提交
166 167 168
  drop_empty: false
  worker_num: 2
  bufsize: 4
169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192

TestReader:
  inputs_def:
    image_shape: [3, 320, 320]
    fields: ['image', 'im_size', 'im_id']
  dataset:
    !ImageFolder
      anno_path: annotations/instances_val2017.json
      with_background: false
  sample_transforms:
    - !DecodeImage
      to_rgb: True
    - !ResizeImage
      target_size: 320
      interp: 2
    - !NormalizeImage
      mean: [0.485, 0.456, 0.406]
      std: [0.229, 0.224, 0.225]
      is_scale: True
      is_channel_first: false
    - !Permute
      to_bgr: false
      channel_first: True
  batch_size: 1