MARBERT Fine-tuné pour la Classification d'Intention en Darija

Ce dépôt contient le modèle MARBERTv2, fine-tuné pour une tâche de classification de texte afin d'identifier l'intention d'un utilisateur s'exprimant en arabe dialectal marocain (Darija).

Ce modèle a été développé dans le cadre d'un stage de fin d'études en collaboration avec Huawei pour enrichir leur solution de centre de contact intelligent AICC (Artificial Intelligence Contact Center).

📋 Intentions Reconnues

Le modèle est capable de classifier un texte selon l'une des 9 intentions suivantes, typiques d'un contexte de service client :

  1. consulter_solde: L'utilisateur veut connaître son solde, sa recharge ou ses données restantes.
  2. reclamer_facture: L'utilisateur conteste une facture ou a une question sur son montant.
  3. declarer_panne: L'utilisateur signale un problème technique (panne réseau, connexion lente...).
  4. info_forfait: L'utilisateur demande des informations sur des offres, produits ou abonnements.
  5. recuperer_mot_de_passe: L'utilisateur a oublié un mot de passe ou un code et veut le réinitialiser.
  6. salutations: Salutations et début de conversation.
  7. remerciements: Expressions de gratitude.
  8. demander_agent_humain: L'utilisateur demande explicitement à parler à un conseiller humain.
  9. hors_scope: La demande de l'utilisateur est hors du périmètre du service client.

🚀 Comment Utiliser le Modèle

Vous pouvez utiliser ce modèle directement avec un pipeline text-classification de la bibliothèque transformers.

from transformers import pipeline

# Remplacer par le nom de votre modèle sur le Hub
model_name = "mediani/marbert-darija-intent-classification"

# Charger le pipeline de classification de texte
classifier = pipeline("text-classification", model=model_name)

# Exemples de phrases à tester
phrases = [
    "bghit na3raf ch7al baqi 3ndi f solde",
    "l'internet ma khdamach lia lyoum",
    "chno homa les offres li kaynin 3afak ?"
]

# Faire des prédictions
predictions = classifier(phrases)
for phrase, pred in zip(phrases, predictions):
    print(f"Phrase: '{phrase}'")
    print(f"  -> Intention Prédite: {pred['label']} (Confiance: {pred['score']:.4f})")

# Résultat attendu :
# Phrase: 'bghit na3raf ch7al baqi 3ndi f solde'
#   -> Intention Prédite: consulter_solde (Confiance: 0.9987)
# Phrase: 'l'internet ma khdamach lia lyoum'
#   -> Intention Prédite: declarer_panne (Confiance: 0.9992)
# Phrase: 'chno homa les offres li kaynin 3afak ?'
#   -> Intention Prédite: info_forfait (Confiance: 0.9975)

🛠️ Détails de l'Entraînement

Modèle de Base

Le modèle de base est UBC-NLP/MARBERTv2, un Transformer robuste pré-entraîné sur un corpus de 1.2 milliard de tweets en arabe et ses dialectes.

Dataset

Le modèle a été fine-tuné sur un corpus personnalisé de plusieurs milliers de phrases en Darija. Ce dataset a été assemblé via une stratégie hybride :

  • Collecte de données depuis Twitter et YouTube.
  • Génération de données par des modèles de langage (LLM).
  • Collecte manuelle depuis des espaces de service client.
  • L'annotation a été réalisée avec l'outil Doccano.

Performances

Sur un ensemble de test interne, le modèle a atteint une performance élevée, démontrant sa capacité à gérer le code-switching et les variations linguistiques de la Darija.

Citation

Si vous utilisez ce modèle dans vos recherches, veuillez s'il vous plaît le citer.

@misc{mediani2025marbertdarija,
  author = {Mohammed Mediani},
  title = {MARBERT Fine-tuné pour la Classification d'Intention en Darija},
  year = {2025},
  publisher = {Hugging Face},
  journal = {Hugging Face repository},
  howpublished = {\url{https://huggingface.co/mediani/marbert-darija-intent-classification}},
}
Downloads last month
6
Safetensors
Model size
163M params
Tensor type
F32
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support