Global: use_gpu: true epoch_num: 500 log_smooth_window: 20 print_batch_step: 1 save_model_dir: ./output/rec/test/ save_epoch_step: 500 # evaluation is run every 5000 iterations after the 4000th iteration eval_batch_step: 1016 # if pretrained_model is saved in static mode, load_static_weights must set to True load_static_weights: True cal_metric_during_train: True pretrained_model: checkpoints: #output/rec/rec_crnn/best_accuracy save_inference_dir: use_visualdl: True infer_img: doc/imgs_words/ch/word_1.jpg # for data or label process max_text_length: 80 character_dict_path: /home/zhoujun20/rec/lmdb/dict.txt character_type: 'ch' use_space_char: True infer_mode: False use_tps: False Optimizer: name: Adam beta1: 0.9 beta2: 0.999 learning_rate: name: Cosine lr: 0.0005 warmup_epoch: 1 regularizer: name: 'L2' factor: 0.00001 Architecture: type: rec algorithm: CRNN Transform: Backbone: name: MobileNetV3 scale: 0.5 model_name: small small_stride: [ 1, 2, 2, 2 ] Neck: name: SequenceEncoder encoder_type: rnn hidden_size: 48 Head: name: CTC fc_decay: 0.00001 Loss: name: CTCLoss PostProcess: name: CTCLabelDecode Metric: name: RecMetric main_indicator: acc TRAIN: dataset: name: LMDBDateSet file_list: - /home/zhoujun20/rec/lmdb/train # dataset1 ratio_list: [ 0.4,0.6 ] transforms: - DecodeImage: # load image img_mode: BGR channel_first: False - CTCLabelEncode: # Class handling label - RecAug: - RecResizeImg: image_shape: [ 3,32,320 ] - keepKeys: keep_keys: [ 'image','label','length' ] # dataloader将按照此顺序返回list loader: batch_size: 256 shuffle: True drop_last: True num_workers: 6 EVAL: dataset: name: LMDBDateSet file_list: - /home/zhoujun20/rec/lmdb/val transforms: - DecodeImage: # load image img_mode: BGR channel_first: False - CTCLabelEncode: # Class handling label - RecResizeImg: image_shape: [ 3,32,320 ] - keepKeys: keep_keys: [ 'image','label','length' ] # dataloader将按照此顺序返回list loader: shuffle: False drop_last: False batch_size: 256 num_workers: 6