This model is based on the QuartzNet architecture . The pre-trained models here can be used immediately for fine-tuning or dataset evaluation.
It utilizes a character encoding scheme, and transcribes text in the standard character set that is provided in the Catalan portion of Common Voice from Mozilla (MCV) .
The Quartznet model is composed of multiple blocks with residual connections between them, trained with CTC loss. Each block consists of one or more modules with 1D time-channel separable convolutional layers, batch normalization, and ReLU layers.
The Quartznet 15x5 model consists of 79 layers and has a total of 18.9 million parameters, with five blocks that repeat fifteen times plus four additional convolutional layers .
This model was fine-tuned from English language to Catalan. We took an encoder from the English version of QuartzNet network trained on ~3,000 hours of public English data. Then we changed the model's decoder to output characters from Catalan alphabet and fine-tuned this model using Catalan portion of Common Voice from Mozilla (MCV) . We trained it on non-dev and non-test validated clips from Mozilla Common Voice version 6.0.
See details of the training procedure here .
While training this model, we used the following datasets:
- Librispeech 960 hours of English speech (pre-training)
- Fisher Corpus (pre-training)
- Switchboard-1 Dataset (pre-training)
- WSJ-0 and WSJ-1 (pre-training)
- Mozilla Common Voice (Catalan) (fine-tuning)
The performance of Automatic Speech Recognition models is measuring using Word Error Rate.
The model obtains the following scores on the following evaluation datasets -
- 6 % on the dev set from Catalan MCV dataset.
Note that these scores on this evaluation sets are not particularly indicative of the quality of transcriptions that models trained on ASR Set will achieve, but they are a useful proxy.
How to Use this Model
The model is available for use in the NeMo toolkit , and can be used as a pre-trained checkpoint for inference or for fine-tuning on another dataset.
Automatically load the model from NGC
import nemo.collections.asr as nemo_asr
asr_model = nemo_asr.models.EncDecCTCModel.from_pretrained(model_name="stt_ca_quartznet15x5")
Transcribing text with this model
python [NEMO_GIT_FOLDER]/examples/asr/transcribe_speech.py \
This model accepts 16000 KHz Mono-channel Audio (wav files) as input.
This model provides transcribed speech as a string for a given audio sample.
Since this model was trained on publically available speech datasets, the performance of this model might degrade for speech which includes technical terms, or vernacular that the model has not been trained on. The model might also perform worse for accented speech.
This model was trained on relatively small amount of speech data. It's performance will vary greatly based on your application and audio. We recommend using it as a starting point for fine-tuning your own models.
 Kriman, Samuel, et al. "Quartznet: Deep automatic speech recognition with 1d time-channel separable convolutions." ICASSP 2020-2020 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP). IEEE, 2020.