We define verification models as ASR models specifically designed to assess the reliability of transcriptions. These models are particularly useful when no reference transcription is available, as they can generate hypotheses with a certain degree of confidence.
The core idea behind verification models is to train or fine-tune two or more ASR models on different datasets. If these models produce identical transcriptions for the same audio input, the result is likely to be accurate. Furthermore, if a verification model agrees with an existing reference transcription, this agreement can also be interpreted as a signal of reliability.
This model is designed for the following scenarios:
Verification of transcriptions: When two or more verification models produce the same output for a given audio segment, the transcription can be considered highly reliable. This is particularly useful in low-resource or weakly supervised settings.
Transcription without references: In situations where no reference transcription exists, this model can still produce a hypothesis that -when corroborated by a second verification model- may be considered trustworthy.
Data filtering and quality control: It can be used to automatically detect and retain high-confidence segments in large-scale speech datasets (e.g., for training or evaluation purposes).
Human-in-the-loop workflows: These models can assist human annotators by flagging reliable transcriptions, helping reduce manual verification time.
As limitations, we identify the following:
No ground-truth guarantee: Agreement between models does not guarantee correctness; it only increases the likelihood of reliability.
Domain sensitivity: The accuracy and agreement rate may drop if used on speech data that differs significantly from the training domain (e.g., different accents, topics, or recording conditions).
Designed for pairwise comparison: This model is intended to work in conjunction with at least one other verification model. Using it in isolation does not provide verification benefits.
Language and model-specific: This particular model is optimized for Spanish and based on the Parakeet RNNT architecture. Performance in other languages or under different acoustic models may vary significantly.
How to Get Started with the Model
To see an updated and functional version of this code, please visit NVIDIA's official repository
To transcribe audio in Spanish using this model, you can follow this example:
python
1import nemo.collections.asr as nemo_asr
23asr_model = nemo_asr.models.EncDecRNNTBPEModel.from_pretrained(model_name="BSC-LT/spanish-verification-model-pkt-c")45output = asr_model.transcribe(['YOUR_WAV_FILE.wav'])6print(output[0].text)7
Training Details
Training data
The training data for Model C consists of 1,500 hours of Spanish speech extracted from the YODAS dataset.
To ensure high-quality supervision, we applied a triple-consensus filtering strategy: we only kept those utterances where the reference transcription in YODAS, the output of Model A"spanish-verification-model-pkt-a", and the output of Model B"spanish-verification-model-pkt-b" were identical.
This approach allowed us to minimize noisy or ambiguous transcriptions while maintaining a large amount of diverse training material.
This work is funded by the Ministerio para la Transformación Digital y de la Función Pública - Funded by EU – NextGenerationEU within the framework of the project Desarrollo de Modelos ALIA.
The training of the model was possible thanks to the computing time provided by Barcelona Supercomputing Center through MareNostrum 5.