Logo Lanfrica

Ashuza11/google-waxal-asr

Domain:

natural language processing

Record type:

model
Creator:
Ash
Host:
Multilingual Automatic Speech Recognition (ASR) system for African languages built for the Google WAXAL ASR Challenge on Zindi. Features fine-tuned speech models evaluated on WER and CER metrics. # Google WAXAL ASR Challenge Multilingual ASR for **Lingala (`lin`)**, **Shona (`sna`)**, and **Luganda (`lug`)**, built on the WAXAL dataset (Google Research + Makerere University, University of Ghana, Digital Umuganda). Zindi challenge: zindi.africa Evaluation: `0.5 * WER + 0.5 * CER` (lower is better). Phase 1 = HF train/val/test splits, leaderboard-visible. Phase 2 = a held-out unseen audio set released ~1 week before close — no labels, no language metadata, final ranking is Phase 2 only. Inspired by the modeling approach from a past project, afrivoices-asr-hack (Whisper-small fine-tuning for 6 East African languages) — same eval-harness shape, same "prepare data / train / infer" separation, adapted here for WAXAL's languages and Zindi's submission format. ## Why this repo runs on Colab, not locally This machine has **no GPU and 3.8GB RAM** — not enough to load even a 1B-parameter ASR model comfortably, let alone fine-tune one. So: - **Local (this repo):** eval harness, CSV/text-only data exploration (`notebooks/00_data_exploration.py` — no audio, no GPU needed), scaffolding. - **Colab (`notebooks/01_...ipynb`):** everything that needs a GPU or audio — loading WaxalNLP audio, model inference, submission generation. - **Zindi**: the community `zindi` pip package needs interactive username/password login, not a real token/API — Zindi doesn't currently expose a public developer API. Given that, submission is a deliberate **manual step**: the notebook downloads `submission.csv` to your machine and you upload it by hand on the Zindi Submissions tab. No third-party package touches your Zindi credentials anywhere in this pipeline. - **Hugging Face**: `google/WaxalNLP` isn't gated, but the dataset card recommends logging in (`huggingface_hub.login()`) — that prompt runs inside Colab too, same reasoning. ## Data — verified against the actual downloaded files Files come from the Zindi "Data" tab (`Train.csv`, `Test …