Aller au contenu
Achraf Abderrazik
Tous les projets
Académique · Équipe de 4Étude de cas 02 / 05

AMAN

Détection de discours toxiques en darija marocain

Un système NLP multi-label qui détecte les discours toxiques en darija marocain, avec un grand modèle enseignant distillé en un élève compact et plus rapide.

Contexte
Projet d’équipe encadré · 4 personnes
Année
2026
Langue
Darija marocain
Tâche
Classification multi-label

Macro F1, modèle par modèle

Le Macro F1 fait la moyenne du score F1 de chaque étiquette de toxicité : les étiquettes rares comptent autant que les fréquentes.

  1. 010,623Enseignant XLM-RLe point de départ : un XLM-RoBERTa multilingue fine-tuné sur le corpus de commentaires.
  2. 020,815Enseignant darijaUn second enseignant, entraîné pour le darija, puis distillé dans l’élève.
  3. 030,895Élève DistilBERTLe modèle final et compact, distillé à partir de l’enseignant darija.
Modèle plus léger
4,2×
Taille rapportée de l’élève DistilBERT, comparée à celle de son enseignant.
Modèle plus rapide
4×
Vitesse rapportée de l’élève DistilBERT, comparée à celle de son enseignant.
Commentaires
~160 k
Commentaires sur lesquels l’enseignant XLM-RoBERTa a été fine-tuné.

01 Contexte

Le darija marocain est un dialecte sans jeu de données natif pour cette tâche. AMAN est un projet d’équipe encadré du cursus IA & Data Science qui traite la détection de discours toxiques comme un problème multi-label : un même commentaire peut être toxique de plusieurs façons à la fois.

02 Problème

Un grand transformer multilingue est un point de départ naturel, mais il est lent et lourd à servir. L’objectif : une détection multi-label précise en darija, avec un modèle assez léger et rapide pour être déployé.

03 Architecture

  1. 01Données

    Corpus de commentaires

    Données d’entraînement de l’enseignant

  2. 02Enseignant

    XLM-RoBERTa

    Multilingue, fine-tuné

  3. 03Enseignant

    Enseignant darija

    Entraîné pour le darija

  4. 04Transfert

    Distillation des connaissances

    Enseignant → élève

  5. 05Élève

    DistilBERT

    Compact et plus rapide

    Macro F1 0,895

  6. 06Service

    FastAPI + Docker

    06Interface

    Inférence Streamlit

Pipeline enseignant–élève, d’un modèle multilingue à un classifieur déployable.

04 Équipe

Projet d’équipe (4 personnes) consacré à la détection de discours toxiques en darija marocain, avec fine-tuning de Transformers, distillation de connaissances et application d’inférence. Le projet va de XLM-RoBERTa et d’un enseignant darija à un élève DistilBERT distillé.

05 Choix techniques

  • 01

    Partir d’un modèle multilingue

    Le premier enseignant est un XLM-RoBERTa multilingue, fine-tuné sur le corpus de commentaires.

  • 02

    Un enseignant dédié au darija

    Avant la distillation, un second enseignant entraîné pour le darija a amélioré les résultats du premier, multilingue.

  • 03

    Distillation enseignant–élève

    Les connaissances de l’enseignant darija sont distillées dans un élève DistilBERT compact.

  • 04

    Une sortie multi-label

    Chaque commentaire peut porter plusieurs étiquettes à la fois, plutôt qu’un simple verdict toxique / non toxique.

06 Résultats

  • Le Macro F1 progresse à chaque étape, du premier enseignant à l’élève distillé
  • Élève DistilBERT — rapporté comme 4,2× plus léger et 4× plus rapide que son enseignant
  • Servi via FastAPI et Docker, avec une application d’inférence Streamlit

07 Stack

  • Python
  • PyTorch
  • Hugging Face Transformers
  • scikit-learn
  • FastAPI
  • Docker
  • Streamlit