Logo Lanfrica

michaelodafe/Naija-Pidgin-Whisper

Domain:

natural language processing

Record type:

modelsoftware
Creator:
mic
Host:
Finetuned OpenAI Whisper Model on Nigerian Pidgin English for accurate Speech-to-text (STT) # Pidgin Whisper Open-source Nigerian Pidgin English speech-to-text. Fine-tunes `openai/whisper-large-v3-turbo` with LoRA on ~8.6 hours of curated Pidgin audio. Trained on a free Kaggle T4 in under 4 hours. ## Result | Metric | Pidgin Whisper v1 | Wav2Vec2-XLSR-53 baseline | |---|---|---| | Test WER | **21.37%** | 29.6% | | Test CER | **9.90%** | β€” | That's an **8.2 percentage-point absolute improvement (28% relative)** over the strongest published Pidgin ASR result on the same dataset, using a free GPU and a single fine-tuning run. ## Links - πŸ€— **Model:** michaelodafe/whisper-pidgin-v1 (LoRA adapter, 26 MB) - 🎀 **Demo Space:** try it in your browser - πŸ“¦ **Dataset:** michaelodafe/pidgin-asr-combined (~8.6 h, combined from public Pidgin sources) - πŸ“– **Full design notes:** documentation.md ## Quick start β€” run locally ```bash git clone github.com cd pidgin-whisper python3 -m venv .venv && source .venv/bin/activate pip install -r requirements.txt cp .env.example .env # edit .env: paste your HF_TOKEN # one-time: pull base model + adapter, merge, convert to int8 CTranslate2 (~5 min) HF_HUB_DISABLE_XET=1 python infer/01_merge_and_convert.py # live mic β†’ Pidgin transcription python infer/02_streaming_demo.py ``` Speak into your mic; transcripts print after each utterance. Ctrl-C to quit. On macOS, grant microphone permission to Terminal/iTerm on first run. ## Reproducing v1 End-to-end training pipeline β€” about 1 hour of your time + 4 hours of free Kaggle GPU. 1. **Build the dataset** β€” `python scripts/01_fetch_data.py` pulls and normalizes `asr-nigerian-pidgin/nigerian-pidgin-1.0` and `Rexe/nigerian-pidgin-speech`, pushes the combined dataset to your HF account. 2. **Inspect** β€” `python scripts/02_inspect.py` writes 20 random sample clips to `data/samples/` so you can listen. 3. **Train on Kaggle** β€” paste cells from `notebooks/03_finetune_kaggle.py` into a Kaggle GPU notebook. Add `HF_TOKEN` to Kaggle Secrets. …