161 lines
3.3 KiB
YAML
161 lines
3.3 KiB
YAML
Global:
|
|
debug: false
|
|
use_gpu: true
|
|
epoch_num: 800
|
|
log_smooth_window: 20
|
|
print_batch_step: 10
|
|
save_model_dir: ./output/rec_pp-OCRv2_distillation
|
|
save_epoch_step: 3
|
|
eval_batch_step: [0, 2000]
|
|
cal_metric_during_train: true
|
|
pretrained_model:
|
|
checkpoints:
|
|
save_inference_dir:
|
|
use_visualdl: false
|
|
infer_img: doc/imgs_words/ch/word_1.jpg
|
|
character_dict_path: ppocr/utils/ppocr_keys_v1.txt
|
|
character_type: ch
|
|
max_text_length: 25
|
|
infer_mode: false
|
|
use_space_char: true
|
|
distributed: true
|
|
save_res_path: ./output/rec/predicts_pp-OCRv2_distillation.txt
|
|
|
|
|
|
Optimizer:
|
|
name: Adam
|
|
beta1: 0.9
|
|
beta2: 0.999
|
|
lr:
|
|
name: Piecewise
|
|
decay_epochs : [700, 800]
|
|
values : [0.001, 0.0001]
|
|
warmup_epoch: 5
|
|
regularizer:
|
|
name: L2
|
|
factor: 2.0e-05
|
|
|
|
Architecture:
|
|
model_type: &model_type "rec"
|
|
name: DistillationModel
|
|
algorithm: Distillation
|
|
Models:
|
|
Teacher:
|
|
pretrained:
|
|
freeze_params: false
|
|
return_all_feats: true
|
|
model_type: *model_type
|
|
algorithm: CRNN
|
|
Transform:
|
|
Backbone:
|
|
name: MobileNetV1Enhance
|
|
scale: 0.5
|
|
Neck:
|
|
name: SequenceEncoder
|
|
encoder_type: rnn
|
|
hidden_size: 64
|
|
Head:
|
|
name: CTCHead
|
|
mid_channels: 96
|
|
fc_decay: 0.00002
|
|
Student:
|
|
pretrained:
|
|
freeze_params: false
|
|
return_all_feats: true
|
|
model_type: *model_type
|
|
algorithm: CRNN
|
|
Transform:
|
|
Backbone:
|
|
name: MobileNetV1Enhance
|
|
scale: 0.5
|
|
Neck:
|
|
name: SequenceEncoder
|
|
encoder_type: rnn
|
|
hidden_size: 64
|
|
Head:
|
|
name: CTCHead
|
|
mid_channels: 96
|
|
fc_decay: 0.00002
|
|
|
|
|
|
Loss:
|
|
name: CombinedLoss
|
|
loss_config_list:
|
|
- DistillationCTCLoss:
|
|
weight: 1.0
|
|
model_name_list: ["Student", "Teacher"]
|
|
key: head_out
|
|
- DistillationDMLLoss:
|
|
weight: 1.0
|
|
act: "softmax"
|
|
use_log: true
|
|
model_name_pairs:
|
|
- ["Student", "Teacher"]
|
|
key: head_out
|
|
- DistillationDistanceLoss:
|
|
weight: 1.0
|
|
mode: "l2"
|
|
model_name_pairs:
|
|
- ["Student", "Teacher"]
|
|
key: backbone_out
|
|
|
|
PostProcess:
|
|
name: DistillationCTCLabelDecode
|
|
model_name: ["Student", "Teacher"]
|
|
key: head_out
|
|
|
|
Metric:
|
|
name: DistillationMetric
|
|
base_metric_name: RecMetric
|
|
main_indicator: acc
|
|
key: "Student"
|
|
|
|
Train:
|
|
dataset:
|
|
name: SimpleDataSet
|
|
data_dir: ./train_data/
|
|
label_file_list:
|
|
- ./train_data/train_list.txt
|
|
transforms:
|
|
- DecodeImage:
|
|
img_mode: BGR
|
|
channel_first: false
|
|
- RecAug:
|
|
- CTCLabelEncode:
|
|
- RecResizeImg:
|
|
image_shape: [3, 32, 320]
|
|
- KeepKeys:
|
|
keep_keys:
|
|
- image
|
|
- label
|
|
- length
|
|
loader:
|
|
shuffle: true
|
|
batch_size_per_card: 128
|
|
drop_last: true
|
|
num_sections: 1
|
|
num_workers: 8
|
|
Eval:
|
|
dataset:
|
|
name: SimpleDataSet
|
|
data_dir: ./train_data
|
|
label_file_list:
|
|
- ./train_data/val_list.txt
|
|
transforms:
|
|
- DecodeImage:
|
|
img_mode: BGR
|
|
channel_first: false
|
|
- CTCLabelEncode:
|
|
- RecResizeImg:
|
|
image_shape: [3, 32, 320]
|
|
- KeepKeys:
|
|
keep_keys:
|
|
- image
|
|
- label
|
|
- length
|
|
loader:
|
|
shuffle: false
|
|
drop_last: false
|
|
batch_size_per_card: 128
|
|
num_workers: 8
|