resnet31_robustscanner.yml 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. Global:
  2. device: gpu
  3. epoch_num: 20
  4. log_smooth_window: 20
  5. print_batch_step: 10
  6. output_dir: ./output/rec/u14m_filter/resnet31_robustscanner
  7. eval_epoch_step: [0, 1]
  8. eval_batch_step: [0, 500]
  9. cal_metric_during_train: True
  10. pretrained_model:
  11. checkpoints:
  12. use_tensorboard: false
  13. infer_img:
  14. # for data or label process
  15. character_dict_path: ./tools/utils/EN_symbol_dict.txt
  16. max_text_length: &max_text_length 25
  17. use_space_char: False
  18. save_res_path: ./output/rec/u14m_filter/predicts_resnet31_robustscanner.txt
  19. use_amp: True
  20. Optimizer:
  21. name: Adam
  22. lr: 0.00065 # for 4gpus bs256/gpu
  23. weight_decay: 0.0
  24. filter_bias_and_bn: False
  25. LRScheduler:
  26. name: OneCycleLR
  27. warmup_epoch: 1.5 # pct_start 0.075*20 = 1.5ep
  28. cycle_momentum: False
  29. Architecture:
  30. model_type: rec
  31. algorithm: RobustScanner
  32. in_channels: 3
  33. Transform:
  34. Encoder:
  35. name: ResNet31
  36. # init_type: KaimingNormal
  37. Decoder:
  38. name: RobustScannerDecoder
  39. enc_outchannles: 128
  40. hybrid_dec_rnn_layers: 2
  41. hybrid_dec_dropout: 0
  42. position_dec_rnn_layers: 2
  43. mask: True
  44. encode_value: False
  45. max_text_length: *max_text_length
  46. Loss:
  47. name: ARLoss
  48. PostProcess:
  49. name: ARLabelDecode
  50. Metric:
  51. name: RecMetric
  52. main_indicator: acc
  53. is_filter: True
  54. Train:
  55. dataset:
  56. name: LMDBDataSet
  57. data_dir: ../Union14M-L-LMDB-Filtered
  58. transforms:
  59. - DecodeImage: # load image
  60. img_mode: BGR
  61. channel_first: False
  62. - PARSeqAug:
  63. - ARLabelEncode: # Class handling label
  64. - RobustScannerRecResizeImg:
  65. image_shape: [3, 48, 48, 160]
  66. width_downsample_ratio: 0.25
  67. max_text_length: *max_text_length
  68. - KeepKeys:
  69. keep_keys: ['image', 'label', 'length', 'valid_ratio'] # dataloader will return list in this order
  70. loader:
  71. shuffle: True
  72. batch_size_per_card: 256
  73. drop_last: True
  74. num_workers: 4
  75. Eval:
  76. dataset:
  77. name: LMDBDataSet
  78. data_dir: ../evaluation
  79. transforms:
  80. - DecodeImage: # load image
  81. img_mode: BGR
  82. channel_first: False
  83. - ARLabelEncode: # Class handling label
  84. - RobustScannerRecResizeImg:
  85. image_shape: [3, 48, 48, 160]
  86. width_downsample_ratio: 0.25
  87. max_text_length: *max_text_length
  88. - KeepKeys:
  89. keep_keys: ['image', 'label', 'length', 'valid_ratio'] # dataloader will return list in this order
  90. loader:
  91. shuffle: False
  92. drop_last: False
  93. batch_size_per_card: 128
  94. num_workers: 2