sudoping01's picture
|
download
raw
3.44 kB
metadata
library_name: transformers
language:
  - ff
license: cc-by-nc-4.0
base_model: facebook/mms-1b-all
tags:
  - automatic-speech-recognition
  - speech
  - pular
  - fula
  - fuf
  - mms
  - low-resource
datasets:
  - Kppwdfgu1/Fula-pular
metrics:
  - wer
  - cer
pipeline_tag: automatic-speech-recognition
model-index:
  - name: mms-1b-pular-asr
    results:
      - task:
          type: automatic-speech-recognition
        dataset:
          name: Fula-pular
          type: Kppwdfgu1/Fula-pular
        metrics:
          - type: wer
            value: 10.38
          - type: cer
            value: 2.89

MMS-1B Pular ASR — Reconnaissance vocale du Pular (Fouta-Djalon)

Modèle de reconnaissance vocale (ASR/STT) pour le pular (fuf), variante du fula parlée en Guinée (Fouta-Djalon). Obtenu par fine-tuning des adapter layers de facebook/mms-1b-all (~2 % des paramètres entraînés, base gelée).

WER : 10,38 % (contre 17,31 % pour MMS d'origine, soit -40 % d'erreurs).

Détails du modèle

  • Modèle de base : facebook/mms-1b-all (Wav2Vec2 1B, Meta MMS)
  • Méthode : fine-tuning des adapters + tête CTC (vocabulaire caractères)
  • Langue : Pular / Fulfulde du Fouta-Djalon (ISO 639-3 : fuf)
  • Licence : CC-BY-NC 4.0 (héritée du modèle de base MMS)
  • Audio attendu : mono, 16 kHz
  • Développé par : Salim Diallo

Utilisation

import torch, librosa
from transformers import Wav2Vec2ForCTC, AutoProcessor

repo = "sudoping01/mms-1b-pular-asr"
processor = AutoProcessor.from_pretrained(repo)
model = Wav2Vec2ForCTC.from_pretrained(repo).eval()

audio, _ = librosa.load("mon_audio.wav", sr=16_000)
inputs = processor(audio, sampling_rate=16_000, return_tensors="pt")
with torch.no_grad():
    logits = model(**inputs).logits
print(processor.decode(torch.argmax(logits, dim=-1)[0]))

Données d'entraînement

Dataset Kppwdfgu1/Fula-pular : ~9 760 clips audio (0,3–30 s) avec transcriptions, issus de lectures du Nouveau Testament en pular. Split 90/5/5 train/validation/test. Texte normalisé : minuscules, ponctuation retirée, caractères pular (ɓ ɗ ɲ ƴ ŋ) conservés.

Procédure d'entraînement

  • Adapters réinitialisés puis seuls paramètres entraînés (base gelée)
  • Précision mixte fp16, gradient checkpointing
  • Learning rate : 1e-3, warmup 100 steps, 4 époques
  • Batch effectif : 32 (batch 2 × accumulation 16)
  • Matériel : 1× NVIDIA T4 (Kaggle)

Résultats

Modèle WER CER
MMS-1B-all (adapter fula d'origine, sans fine-tuning) 17,31 % 4,57 %
Ce modèle (fine-tuné) 10,38 % 2,89 %

Évalué sur 200 exemples du test set (jamais vus à l'entraînement).

Limites et biais

  • Domaine : entraîné uniquement sur des lectures de l'histoire de ISSA (parole lue, posée, vocabulaire religieux, peu de locuteurs). Les performances baissent sur la parole spontanée, bruyante, ou les autres dialectes du fula.
  • Ne gère ni ponctuation ni majuscules en sortie.
  • Usage non commercial uniquement (licence CC-BY-NC 4.0).

Citation

Si tu utilises ce modèle, cite aussi MMS :

@article{pratap2023mms,
  title={Scaling Speech Technology to 1,000+ Languages},
  author={Pratap, Vineel and others},
  journal={arXiv preprint arXiv:2305.13516},
  year={2023}
}

Xet Storage Details

Size:
3.44 kB
·
Xet hash:
a06567b0a9569ea2bef4a9b7c67d7a792d8b75e8809a48d27cf5e9fbdd3467cd

Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.