Instructions to use GeoPoll/SunflowerASR-Africa51-GeoPoll with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use GeoPoll/SunflowerASR-Africa51-GeoPoll with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("automatic-speech-recognition", model="GeoPoll/SunflowerASR-Africa51-GeoPoll")# pip install -U transformers accelerate # Load model directly from transformers import AutoProcessor, AutoModelForSpeechSeq2Seq processor = AutoProcessor.from_pretrained("GeoPoll/SunflowerASR-Africa51-GeoPoll") model = AutoModelForSpeechSeq2Seq.from_pretrained("GeoPoll/SunflowerASR-Africa51-GeoPoll", device_map="auto") - Notebooks
- Google Colab
- Kaggle
SunflowerASR-Africa51-GeoPoll
This model was built specifically to improve Swahili speech recognition on telephone-quality audio. It builds on Sunbird/SunflowerASR-51-african-languages and was fine-tuned on GeoPoll telephone survey calls for better accuracy.
Training data
GeoPoll telephone survey recordings in Swahili with human transcriptions. The model trained on 11,745 training clips, about 27 hours.
Training
| Setting | Value |
|---|---|
| Method | LoRA |
| LoRA rank | 32 |
| Encoder trained | yes |
| Learning rate | 5e-05 |
| Warmup steps | 500 |
| Steps | 6000 |
| Batch size | 4 |
| Gradient accumulation | 4 |
| Augmentation probability | 0.5 |
| Shortest clip (s) | 2 |
| Seed | 42 |
Evaluation
Word and character error rates before fine-tuning (Sunbird/SunflowerASR-51-african-languages) and after (this model), scored with GeoPoll's text normalization. Lower is better.
| Test set | Language | Clips | WER before | WER after | CER before | CER after | WER reduction |
|---|---|---|---|---|---|---|---|
| GeoPoll held-out v4 (sw) | Swahili | 5,214 | 31.7% | 15.1% | 13.2% | 6.8% | 53% |
GeoPoll held-out v4 (sw): 5,214 segments (10.3 hours) of real survey calls with 40 respondents in Kenya and Tanzania. These calls were held out: none of their audio was used to train the model. Every segment is at least 2 seconds long.
How to use
from transformers import pipeline
asr = pipeline("automatic-speech-recognition", model="GeoPoll/SunflowerASR-Africa51-GeoPoll", chunk_length_s=30)
options = {"language": "sw", "task": "transcribe"}
text = asr("call.wav", generate_kwargs=options)["text"]
- Downloads last month
- -
Model tree for GeoPoll/SunflowerASR-Africa51-GeoPoll
Base model
huwenjie333/whisper-v3-ft-af51-0903