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.
- 010,623Enseignant XLM-RLe point de départ : un XLM-RoBERTa multilingue fine-tuné sur le corpus de commentaires.
- 020,815Enseignant darijaUn second enseignant, entraîné pour le darija, puis distillé dans l’élève.
- 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
01Données
Corpus de commentaires
Données d’entraînement de l’enseignant
02Enseignant
XLM-RoBERTa
Multilingue, fine-tuné
03Enseignant
Enseignant darija
Entraîné pour le darija
04Transfert
Distillation des connaissances
Enseignant → élève
05Élève
DistilBERT
Compact et plus rapide
Macro F1 0,895
06Service
FastAPI + Docker
06Interface
Inférence Streamlit
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
08 GitHub
Vous construisez quelque chose de similaire ?
Lancer un projet