wav2vec2-darija-combined
Fine-tuning of boumehdi/wav2vec2-large-xlsr-moroccan-darija for
automatic speech recognition (ASR) in Darija (Moroccan Arabic dialect), using a combined dataset of nine public and private datasets.
🧪 Please test this model on your own audio samples before relying on it in production. If it works well for you, a ❤️ like or a comment on this repo is very appreciated — it helps me know it's useful and guides future improvements!
Résultats finaux
| Métrique | Valeur |
|---|---|
| WER (Word Error Rate) | 0.1795 (17.95%) |
| CER (Character Error Rate) | 0.0615 (6.15%) |
| Train loss (moyenne sur tout l'entraînement) | 0.3024 |
| Train loss (dernier step, epoch 50) | 0.1035 |
Matériel d'entraînement
| Ressource | Détail |
|---|---|
| GPU | NVIDIA GeForce RTX 3090 (24 Go VRAM) |
| Driver / CUDA | Driver 595.84 / CUDA 13.2 |
| Mémoire GPU utilisée | ~10.2 Go / 24 Go |
Hyperparamètres d'entraînement
| Hyperparamètre | Valeur |
|---|---|
| Modèle de base | boumehdi/wav2vec2-large-xlsr-moroccan-darija |
| Époques | 50 |
| Batch size (par device) | 2 |
| Gradient accumulation | 16 |
| Batch effectif | 32 |
| Learning rate | 5e-5 |
| Weight decay | 0.005 |
| Optimiseur | AdamW (par défaut Trainer) |
| Précision | fp16 |
| Gradient checkpointing | Oui (use_reentrant=False) |
| Feature encoder | gelé (freeze_feature_encoder) |
| Attention dropout | 0.1 |
| Hidden dropout | 0.1 |
| Feat proj dropout | 0.0 |
| Mask time prob | 0.05 |
| LayerDrop | 0.1 |
| CTC loss reduction | mean |
| Durée d'entraînement | 1 day, 1:06:55 |
| Vitesse | 22.188 samples/s, 0.693 steps/s |
Datasets utilisés
adiren7/darija_speech_to_textmohamedmou/moroccan-darija-asr-dataset-splitafyfbadreddine77/darija-asr-datasetntariklk/darija-merged-asratlasia/Moroccan-Darija-Wiki-Audio-DatasetDatasmartly/moroccan_darija_audioRHEZLOUNE/darija-restaurant-audioanaszil/Segmented-Moroccan-Darija-Wiki-Audio-Dataset
Filtre appliqué : durée audio ≤ 15s.
Utilisation
Note : ce modèle (~317M paramètres, ~1,2 Go) peut être trop volumineux pour le widget d'inférence gratuit de la page Hugging Face (souvent limité en mémoire/temps pour les modèles de cette taille). Si le widget affiche une erreur ou ne charge pas, teste-le directement en local avec le code ci-dessous, ou via des Inference Endpoints dédiés.
from transformers import Wav2Vec2ForCTC, Wav2Vec2Processor
import librosa
import torch
processor = Wav2Vec2Processor.from_pretrained("amineouaki/wav2vec2-darija-combined")
model = Wav2Vec2ForCTC.from_pretrained("amineouaki/wav2vec2-darija-combined")
speech, _ = librosa.load("audio.wav", sr=16000)
inputs = processor(speech, sampling_rate=16000, return_tensors="pt", padding=True)
with torch.no_grad():
logits = model(**inputs).logits
pred_ids = torch.argmax(logits, dim=-1)
print(processor.decode(pred_ids[0]))
Auteur
Amine Ouakib
- Email : amineouakib3@gmail.com
- GitHub : ouakibamine
- LinkedIn : amine-ouakib
- Downloads last month
- 280
Model tree for amineouaki/wav2vec2-darija-combined
Base model
facebook/wav2vec2-large-xlsr-53Datasets used to train amineouaki/wav2vec2-darija-combined
atlasia/Moroccan-Darija-Wiki-Audio-Dataset
adiren7/darija_speech_to_text
Evaluation results
- WER on Combined Moroccan Darija ASR datasetsself-reported0.179
- CER on Combined Moroccan Darija ASR datasetsself-reported0.061