Closed Hegelim closed 2 years ago
The score was not normalized, we'll fix this or if you are interested, feel free to raise a PR. Please also refer to #1092
These are the unnormalized confidence scores, or raw logits, of each character. During inference, the model generates such a score for every character in the dictionary, and we choose the character with the highest score as the output at each time step. Though the range of the raw scores depends on the model's implementation, we usually use softmax to normalize them into [0, 1] for a better understanding, which was clearly not been done in ABINet and needs to be fixed.
Thanks for the reply, this is very helpful. I just raised a PR and tested it, should be working fine now. Also, should there be a score that describes the accuracy of the word instead of each letter? Average sounds a good way to go
I am using ABINet to do some text recognition on TorchServe, and my question is very similar to https://github.com/open-mmlab/mmocr/issues/1092 However, in my case I modified https://github.com/open-mmlab/mmocr/blob/main/tools/deployment/mmocr_handler.py#L46 to be
results = model_inference(self.model, data, batch_mode=True)
so the result I got has multiple scores instead of 1:My questions are:
I have been trying to looking at source codes but I couldn't find exactly where it's leading this to happen. Any help is appreciated.