rec_svtrnet.yml 2.8 KB
Newer Older
T
Topdu 已提交
1 2 3 4 5
Global:
  use_gpu: True
  epoch_num: 20
  log_smooth_window: 20
  print_batch_step: 10
T
Topdu 已提交
6
  save_model_dir: ./output/rec/svtr/
T
Topdu 已提交
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
  save_epoch_step: 1
  # evaluation is run every 2000 iterations after the 0th iteration
  eval_batch_step: [0, 2000]
  cal_metric_during_train: True
  pretrained_model:
  checkpoints:
  save_inference_dir:
  use_visualdl: False
  infer_img: doc/imgs_words_en/word_10.png
  # for data or label process
  character_dict_path:
  character_type: en
  max_text_length: 25
  infer_mode: False
  use_space_char: False
  save_res_path: ./output/rec/predicts_svtr_tiny.txt
Z
zhoujun 已提交
23
  d2s_train_image_shape: [3, 64, 256]
T
Topdu 已提交
24 25 26 27 28 29


Optimizer:
  name: AdamW
  beta1: 0.9
  beta2: 0.99
T
topduke 已提交
30
  epsilon: 1.e-8
T
Topdu 已提交
31 32
  weight_decay: 0.05
  no_weight_decay_name: norm pos_embed
T
topduke 已提交
33
  one_dim_param_no_weight_decay: True
T
Topdu 已提交
34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
  lr:
    name: Cosine
    learning_rate: 0.0005
    warmup_epoch: 2

Architecture:
  model_type: rec
  algorithm: SVTR
  Transform:
    name: STN_ON
    tps_inputsize: [32, 64]
    tps_outputsize: [32, 100]
    num_control_points: 20
    tps_margins: [0.05,0.05]
    stn_activation: none
  Backbone:
    name: SVTRNet
T
Topdu 已提交
51
    img_size: [32, 100]
T
topduke 已提交
52
    out_char_num: 25 # W//4 or W//8 or W/12
T
Topdu 已提交
53 54 55 56 57 58 59 60
    out_channels: 192
    patch_merging: 'Conv'
    embed_dim: [64, 128, 256]
    depth: [3, 6, 3]
    num_heads: [2, 4, 8]
    mixer: ['Local','Local','Local','Local','Local','Local','Global','Global','Global','Global','Global','Global']
    local_mixer: [[7, 11], [7, 11], [7, 11]]
    last_stage: True
T
topduke 已提交
61
    prenorm: False
T
Topdu 已提交
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80
  Neck:
    name: SequenceEncoder
    encoder_type: reshape
  Head:
    name: CTCHead

Loss:
  name: CTCLoss

PostProcess:
  name: CTCLabelDecode

Metric:
  name: RecMetric
  main_indicator: acc

Train:
  dataset:
    name: LMDBDataSet
T
Topdu 已提交
81
    data_dir: ./train_data/data_lmdb_release/training/
T
Topdu 已提交
82 83 84 85
    transforms:
      - DecodeImage: # load image
          img_mode: BGR
          channel_first: False
T
topduke 已提交
86 87
      - SVTRRecAug:
          aug_type: 0 # or 1
T
Topdu 已提交
88
      - CTCLabelEncode: # Class handling label
89
      - SVTRRecResizeImg:
T
Topdu 已提交
90 91 92 93 94 95 96 97
          image_shape: [3, 64, 256]
          padding: False
      - KeepKeys:
          keep_keys: ['image', 'label', 'length'] # dataloader will return list in this order
  loader:
    shuffle: True
    batch_size_per_card: 512
    drop_last: True
T
topduke 已提交
98
    num_workers: 8
T
Topdu 已提交
99 100 101 102

Eval:
  dataset:
    name: LMDBDataSet
T
Topdu 已提交
103
    data_dir: ./train_data/data_lmdb_release/evaluation/
T
Topdu 已提交
104 105 106 107 108
    transforms:
      - DecodeImage: # load image
          img_mode: BGR
          channel_first: False
      - CTCLabelEncode: # Class handling label
109
      - SVTRRecResizeImg:
T
Topdu 已提交
110 111 112 113 114 115 116 117 118
          image_shape: [3, 64, 256]
          padding: False
      - KeepKeys:
          keep_keys: ['image', 'label', 'length'] # dataloader will return list in this order
  loader:
    shuffle: False
    drop_last: False
    batch_size_per_card: 256
    num_workers: 2