Upload README.md with huggingface_hub
Browse files
README.md
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
---
|
| 2 |
+
language:
|
| 3 |
+
- nya
|
| 4 |
+
license: mit
|
| 5 |
+
tags:
|
| 6 |
+
- asr
|
| 7 |
+
- speech
|
| 8 |
+
- chichewa
|
| 9 |
+
- nyanja
|
| 10 |
+
- wav2vec2
|
| 11 |
+
- ctc
|
| 12 |
+
- fairseq2
|
| 13 |
+
datasets:
|
| 14 |
+
- CLEAR-Global/Chichewa-Synthetic-ASR-Dataset
|
| 15 |
+
metrics:
|
| 16 |
+
- wer
|
| 17 |
+
---
|
| 18 |
+
|
| 19 |
+
# omniASR CTC 300M_v2 — fine-tuned on Chichewa/Nyanja (synthetic only)
|
| 20 |
+
|
| 21 |
+
Fine-tuned checkpoint of [OmniLingual ASR CTC 300M_v2](https://github.com/facebookresearch/omnilingual-asr)
|
| 22 |
+
on the CLEAR Global Chichewa Synthetic ASR Dataset (374,576 examples, ~550 hours of TTS-synthesised speech).
|
| 23 |
+
Training used the fairseq2 wav2vec2 ASR recipe for 5,000 steps with the encoder frozen for the first
|
| 24 |
+
1,000 steps. The FLEURS Chichewa dev split was used for validation (the synthetic dataset has no dev split).
|
| 25 |
+
Tokenizer: `omniASR_tokenizer_written_v2`.
|
| 26 |
+
|
| 27 |
+
## Results
|
| 28 |
+
|
| 29 |
+
| Dataset | WER (%) | CER (%) |
|
| 30 |
+
|---|---:|---:|
|
| 31 |
+
| FLEURS Chichewa test | 58.70 | 14.92 |
|
| 32 |
+
| Zambezi Voice Nyanja test | 70.47 | 16.56 |
|
| 33 |
+
|
| 34 |
+
For reference, the zero-shot omniASR CTC 300M_v2 baseline reaches 51.92% WER on FLEURS and 71.87%
|
| 35 |
+
on Zambezi Voice. Synthetic-only fine-tuning is worse than zero-shot on FLEURS due to acoustic
|
| 36 |
+
domain mismatch between TTS and natural speech, while providing a small improvement on the
|
| 37 |
+
out-of-domain Zambezi Voice benchmark. See also the FLEURS fine-tuned variant
|
| 38 |
+
(`ai4good-labyrinth/omniASR-CTC-300M-v2-chichewa`) which achieves 36.53% on FLEURS.
|
| 39 |
+
|
| 40 |
+
## Training details
|
| 41 |
+
|
| 42 |
+
- **Base model:** omniASR_CTC_300M_v2
|
| 43 |
+
- **Tokenizer:** omniASR_tokenizer_written_v2
|
| 44 |
+
- **Training data:** CLEAR-Global/Chichewa-Synthetic-ASR-Dataset train split (374,576 examples, ~550 h)
|
| 45 |
+
- **Steps:** 5,000 (best checkpoint at step 2,500 by FLEURS dev WER)
|
| 46 |
+
- **Dev WER at best checkpoint:** 59.12% (FLEURS dev)
|
| 47 |
+
- **Learning rate:** 1e-5
|
| 48 |
+
- **Encoder frozen:** first 1,000 steps
|
| 49 |
+
- **Gradient accumulation:** 4 batches
|
| 50 |
+
- **Mixed precision:** bfloat16
|
| 51 |
+
- **Framework:** fairseq2
|
| 52 |
+
|
| 53 |
+
## Checkpoint format
|
| 54 |
+
|
| 55 |
+
The checkpoint is stored in fairseq2's sharded format.
|
| 56 |
+
`checkpoint/model/pp_00/tp_00/sdp_00.pt` contains the full model state
|
| 57 |
+
(training used a single GPU, so there is only one shard).
|
| 58 |
+
|
| 59 |
+
To load the model, use the OmniLingual ASR inference pipeline with the
|
| 60 |
+
`omniASR_CTC_300M_v2` model card and point the checkpoint path at `sdp_00.pt`.
|