facebook/mms-300m fine-tuned (character CTC) on YECS Yoruba-English code-switching, plain
transcription. Control for the language-tag-injection A/B (tagged twin:
LyngualLabs/yecs-asr-mms-lid,
which adds 99.41% per-word LID).
A 5-epoch fp16 fine-tune brings MMS-300m well below the previously reported baseline.
1from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
2import torch, librosa
3repo = "LyngualLabs/yecs-asr-mms-plain"
4proc = Wav2Vec2Processor.from_pretrained(repo); proc.tokenizer.set_target_lang("yor")
5model = Wav2Vec2ForCTC.from_pretrained(repo).to("cuda").eval()
6a,_ = librosa.load("utt.wav", sr=16000)
7iv = proc(a, sampling_rate=16000, return_tensors="pt").input_values.to("cuda")
8print(proc.batch_decode(torch.argmax(model(iv).logits, dim=-1))[0])
facebook/mms-300m SSL -> fresh CTC head; 5 epochs, lr 1e-4, fp16, dropout 0.05, warmup
500, batch 32, 1xH200. W&B run mms-plain. Code:
https://github.com/osinkolu/yecs-asr-benchmark (tag-injection/).
Scored on the full held-out YECS test split (9,949 utts); test audio is the canonical
Mozilla/MDC release. Test reference labels are held privately by LyngualLabs (public
test_metadata.csv has targets stripped), so metrics are internal and not independently
reproducible.