PP-OCRv4_server_rec.yaml 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. Global:
  2. debug: false
  3. use_gpu: true
  4. epoch_num: 20
  5. log_smooth_window: 20
  6. print_batch_step: 20
  7. save_model_dir: ./output/rec_ppocr_v4_hgnet
  8. save_epoch_step: 10
  9. eval_batch_step: [0, 2000]
  10. cal_metric_during_train: true
  11. pretrained_model: https://paddleocr.bj.bcebos.com/pretrained/ch_PP-OCRv4_rec_server_trained.pdparams
  12. checkpoints:
  13. save_inference_dir:
  14. use_visualdl: false
  15. infer_img: doc/imgs_words/ch/word_1.jpg
  16. character_dict_path: ppocr/utils/ppocr_keys_v1.txt
  17. max_text_length: &max_text_length 25
  18. infer_mode: false
  19. use_space_char: true
  20. distributed: true
  21. save_res_path: ./output/rec/predicts_ppocrv3.txt
  22. Optimizer:
  23. name: Adam
  24. beta1: 0.9
  25. beta2: 0.999
  26. lr:
  27. name: Cosine
  28. learning_rate: 0.001
  29. warmup_epoch: 5
  30. regularizer:
  31. name: L2
  32. factor: 3.0e-05
  33. Architecture:
  34. model_type: rec
  35. algorithm: SVTR_HGNet
  36. Transform:
  37. Backbone:
  38. name: PPHGNet_small
  39. Head:
  40. name: MultiHead
  41. head_list:
  42. - CTCHead:
  43. Neck:
  44. name: svtr
  45. dims: 120
  46. depth: 2
  47. hidden_dims: 120
  48. kernel_size: [1, 3]
  49. use_guide: True
  50. Head:
  51. fc_decay: 0.00001
  52. - NRTRHead:
  53. nrtr_dim: 384
  54. max_text_length: *max_text_length
  55. Loss:
  56. name: MultiLoss
  57. loss_config_list:
  58. - CTCLoss:
  59. - NRTRLoss:
  60. PostProcess:
  61. name: CTCLabelDecode
  62. Metric:
  63. name: RecMetric
  64. main_indicator: acc
  65. Train:
  66. dataset:
  67. name: MSTextRecDataset
  68. ds_width: false
  69. data_dir: ./train_data/
  70. ext_op_transform_idx: 1
  71. label_file_list:
  72. - ./train_data/train_list.txt
  73. transforms:
  74. - DecodeImage:
  75. img_mode: BGR
  76. channel_first: false
  77. - RecConAug:
  78. prob: 0.5
  79. ext_data_num: 2
  80. image_shape: [48, 320, 3]
  81. max_text_length: *max_text_length
  82. - RecAug:
  83. - MultiLabelEncode:
  84. gtc_encode: NRTRLabelEncode
  85. - KeepKeys:
  86. keep_keys:
  87. - image
  88. - label_ctc
  89. - label_gtc
  90. - length
  91. - valid_ratio
  92. sampler:
  93. name: MultiScaleSampler
  94. scales: [[320, 32], [320, 48], [320, 64]]
  95. first_bs: 8
  96. fix_bs: false
  97. divided_factor: [8, 16] # w, h
  98. is_training: True
  99. loader:
  100. shuffle: true
  101. batch_size_per_card: 8
  102. drop_last: true
  103. num_workers: 8
  104. Eval:
  105. dataset:
  106. name: TextRecDataset
  107. data_dir: ./train_data
  108. label_file_list:
  109. - ./train_data/val_list.txt
  110. transforms:
  111. - DecodeImage:
  112. img_mode: BGR
  113. channel_first: false
  114. - MultiLabelEncode:
  115. gtc_encode: NRTRLabelEncode
  116. - RecResizeImg:
  117. image_shape: [3, 48, 320]
  118. - KeepKeys:
  119. keep_keys:
  120. - image
  121. - label_ctc
  122. - label_gtc
  123. - length
  124. - valid_ratio
  125. loader:
  126. shuffle: false
  127. drop_last: false
  128. batch_size_per_card: 128
  129. num_workers: 4