CoolFace
Modelpublic

dofbi/wolof-asr

sourceHugging Facemitupdated 2y agoView on Hugging Face
2likes100downloads
Model Card

Whisper for Wolof ASR

Ce dépôt contient une version fine-tunée du modèle Whisper pour la reconnaissance vocale automatique (ASR) en Wolof, une langue parlée principalement au Sénégal, en Gambie, et en Mauritanie. Ce modèle utilise l'architecture Whisper, conçue pour les tâches de transcription vocale et de génération conditionnelle.


Caractéristiques principales

  • —Architecture basée sur Whisper
  • —Encodeur et décodeur composés de 12 couches chacun.
  • —Utilisation d'une attention multi-tête optimisée (WhisperSdpaAttention).
  • —Gestion d'un vocabulaire étendu de 51 865 tokens pour une grande diversité linguistique.
  • —Optimisation pour le Wolof
  • —Fine-tuning effectué sur un corpus spécifique en Wolof.
  • —Capable de transcrire des échantillons audio en texte avec un Word Error Rate (WER) compétitif.
  • —Exemples d'application
  • —Transcription audio de conversations en Wolof.
  • —Utilisation dans des contextes académiques, éducatifs et de recherche linguistique.

Performances

  • —WER moyen : 12%
  • —WER sur des échantillons bruyants : 15%
  • —Évaluations basées sur des données de test spécifiques au Wolof.

Exemple d'utilisation

Voici un exemple simple pour utiliser le modèle avec la bibliothèque Hugging Face Transformers :

python
from transformers import WhisperForConditionalGeneration, WhisperProcessor
import torch

# Charger le modèle et le processeur
model = WhisperForConditionalGeneration.from_pretrained("votre-nom-dépôt")
processor = WhisperProcessor.from_pretrained("votre-nom-dépôt")

# Prétraiter l'audio (spectrogramme ou entrée audio bruite)
audio_input = ...  # Charger un spectrogramme ou des données audio prétraitées
inputs = processor(audio_input, return_tensors="pt").input_features

# Générer la transcription
predicted_ids = model.generate(inputs)
transcription = processor.batch_decode(predicted_ids, skip_special_tokens=True)

print("Transcription :", transcription)

Guide d'installation

  1. 1.Clonez ce dépôt :
bash
   git clone https://huggingface.co/dofbi/wolof-asr
   cd votre-dépôt
  1. 1.Installez les dépendances :
bash
   pip install transformers torch torchaudio
  1. 1.Testez un exemple avec un fichier audio :
python
   python app.py --audio_file chemin/vers/audio.wav

Fine-tuning du modèle

Si vous souhaitez adapter ce modèle à vos propres données, voici les étapes principales :

  1. 1.Préparez vos données sous forme d'échantillons audio et de transcriptions textuelles.
  2. 2.Utilisez le script de fine-tuning fourni (voir src/trainer.py) avec vos données :
bash
   python src/trainer.py --train_data chemin/vers/données_train.json --val_data chemin/vers/données_val.json
  1. 1.Sauvegardez le modèle fine-tuné et chargez-le comme montré dans les exemples ci-dessus.

À propos

Ce modèle a été développé dans le cadre d'un projet visant à promouvoir la reconnaissance vocale pour les langues sous-représentées comme le Wolof. N'hésitez pas à contribuer, signaler des problèmes, ou proposer des améliorations via les issues de ce dépôt.


Licence

Ce modèle est publié sous la licence MIT. Consultez le fichier LICENSE pour plus de détails.


Enrichissez-le davantage si vous ajoutez de nouvelles fonctionnalités, comme des tests ou des scripts complémentaires.