hubert-darija-combined

Fine-tuning de omarxadel/hubert-large-arabic-egyptian pour la reconnaissance automatique de la parole (ASR) en darija (dialecte marocain), sur un ensemble combiné de datasets publics et privés.

🧪 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.2386 (23.86%)
CER (Character Error Rate) 0.0813 (8.13%)
Train loss (moyenne sur tout l'entraînement) 0.41482063716298273

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 omarxadel/hubert-large-arabic-egyptian
Époques 50.0
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(s), 01:51:47
Vitesse 21.547 samples/s, 0.673 steps/s

Datasets utilisés

  • adiren7/darija_speech_to_text
  • mohamedmou/moroccan-darija-asr-dataset-split
  • afyfbadreddine77/darija-asr-dataset
  • ntariklk/darija-merged-asr
  • atlasia/Moroccan-Darija-Wiki-Audio-Dataset
  • Datasmartly/moroccan_darija_audio
  • RHEZLOUNE/darija-restaurant-audio
  • anaszil/Segmented-Moroccan-Darija-Wiki-Audio-Dataset
  • amineouaki/dialect_maroccan_data_cleaned

Filtre appliqué : durée audio ≤ 15s.

Utilisation

from transformers import HubertForCTC, Wav2Vec2Processor
import librosa
import torch

processor = Wav2Vec2Processor.from_pretrained("amineouaki/hubert-darija-combined")
model = HubertForCTC.from_pretrained("amineouaki/hubert-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

Downloads last month
42
Safetensors
Model size
0.3B params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Model tree for amineouaki/hubert-darija-combined

Finetuned
(3)
this model

Datasets used to train amineouaki/hubert-darija-combined

Evaluation results