Awesome multilingual OCR toolkits based on PaddlePaddle (practical ultra lightweight OCR system, support 80+ languages recognition, provide data annotation and synthesis tools, support training and deployment among server, mobile, embedded and IoT devices)
Apache License 2.0
40.32k
stars
7.46k
forks
source link
Finetune model performs more poorly as accuracy increases #11557
The accuracy initially starts out very poor, but gets to a very high level reasonably quickly (over 95% accuracy). However the model itself seems to perform worse as the accuracy increases.
If I take an image from my training set and run the recognition on it when it first outputs a checkpoint, while the accuracy is seemingly low, with:
it will typically recognise the word with high accuracy.
However if I allow the training to continue, and wait until the accuracy reportedly increases, the ability of the model to recognise any of the training or validation set seems to decrease in practice - returning a result of nothing with confidence 0.0 e.g: for a few of the sample files, with the models used for inference at subsequent epochs:
请提供下述完整信息以便快速定位问题/Please provide the following information to quickly locate the problem
I am trying to finetune the arabic_PP-OCRv4_rec_train model. I have a training set consisting of ~14000 words.
I am using the following config.yml file:
and I use the following command to do the training:
python3 tools/train.py -c train_data/Recognition/arabic_PP-OCRv4_fineTune.yml
The accuracy initially starts out very poor, but gets to a very high level reasonably quickly (over 95% accuracy). However the model itself seems to perform worse as the accuracy increases.
If I take an image from my training set and run the recognition on it when it first outputs a checkpoint, while the accuracy is seemingly low, with:
it will typically recognise the word with high accuracy.
However if I allow the training to continue, and wait until the accuracy reportedly increases, the ability of the model to recognise any of the training or validation set seems to decrease in practice - returning a result of nothing with confidence 0.0 e.g: for a few of the sample files, with the models used for inference at subsequent epochs:
and so on, while if I use the model that hasnt been fine-tuned it does a good job of recognising the characters.
However the reported accuracy is increasing:
But the performance gets significantly worse
Can anyone suggest what may be happening here?