Explanation of how the Scorer works after predicted transcripts?

Hello, I understand the use of KenLM package and Deepspeech to generate the scorer package. However, I would like to understand how exactly is this scorer file used? After we get our predictions via running Deepspeech, there is very little documentation on how exactly this scorer is used.

Could I get an explanation for how this scorer is applied via the Python script? I can’t get much from the code either since the only function I find that references the scorer is the EnableExternalScorer() function. Maybe I just haven’t found it yet though.

Thank you.

There is no “scorer application after we get our predictions”, scorer is here to direct the beam search decoding of probabilities into characters.

1 Like

@lissyx
How does it work when you don’t provide a scorer ?

And could it be an interesting option to (on request) also provide the decoding without a scorer, when you do use a scorer file, so to more easily compare what the influence is of the acoustic model vs language model as metric while developing (and perhaps even in production as additional confidence metric ?
(this under the assumption that it could be (far ?) less computational expensive to do it that way than to do 2 separate runs one with and one without scorer?)

I’m not sure why you ask … If you don’t provide a scorer, then you can deduce it will not have scoring to direct beam search: bigger search space, lower quality of results.

Please describe carefully the use, you can already not provide an external scorer. I don’t see how it can make sense to provide that dual run at the API level: you can build it yourself, can’t you?

Thank you. Had to read up on beam searching after this.