Logo Lanfrica

Romusthagore/luhya-asr_w2v-bert

Domaine:

natural language processing

Type de record:

model
Créateur:
Rom
Hôte:
Fine-tuning of Wav2Vec2-BERT 2.0 (580M parameters) for automatic speech recognition in Luhya, a Bantu language spoken in Kenya. # Luhya ASR — Automatic Speech Recognition for the Luhya Language --- ## Table of Contents - Overview - Features - Project Structure - Installation - Configuration - Training - Results - Usage - Metrics - Contributing - License --- ## Overview This project implements an Automatic Speech Recognition (ASR) system for the Luhya language, built on Facebook's pre-trained Wav2Vec2-BERT 2.0 model. The model was fine-tuned on 10 hours of audio data and achieves a Word Error Rate (WER) of 54.63% and a Character Error Rate (CER) of 12.67%. ### Key Results | Metric | Result | |--------|--------| | WER | 54.63% | | CER | 12.67% | | Loss | 0.665 | | Score | 66.35 | | Training Time | 2h50 | --- ## Features - Complete ASR model for the Luhya language - Fine-tuning of Wav2Vec2-BERT 2.0 (580M parameters) - Robust data pipeline with filtering and preprocessing - Evaluation metrics: WER, CER, Score - Automatic checkpointing and saving - Colab support optimized for T4 GPU - Modular, well-structured codebase --- ## Project Structure ``` luhya-asr_w2v-bert/ ├── configs/ │ └── train_config_colab.yaml # Training configuration ├── scripts/ │ └── train_model.py # Main training script ├── src/ │ ├── data/ │ │ ├── preprocessing.py # Text cleaning │ │ ├── dataset.py # Loading and filtering │ │ └── dataset_encoders.py # Encoding for training │ ├── models/ │ │ ├── factory.py # Model creation │ │ └── hubert_with_adapter.py # Hubert with adapters │ ├── training/ │ │ ├── collator.py # Dynamic padding │ │ ├── metrics.py # WER, CER, Score │ │ └── trainer.py # Trainer configuration │ └── utils/ │ ├── config.py # Central configuration │ └── cache.py # Dataset caching ├── notebooks/ │ └── training.ipynb # Training notebook ├── bash_scripts/ │ └── train.sh # Launch script ├── …