# analyse-sentiment-hassaniya-pulaar
# Analyse de sentiment des avis citoyens en hassaniya et en pulaar
Projet de Master — Traitement Automatique des Langues
**Université de Nouakchott Al-Aasriya (UNA)**
Étude comparative de méthodes classiques et de Transformers multilingues pour la classification de sentiment (positif / neutre / négatif) sur deux langues mauritaniennes peu dotées : le **hassaniya** (écriture arabe) et le **pulaar** (écriture latine).
---
## Objectif
Classer automatiquement des avis de citoyens selon la polarité exprimée, afin d'aider une collectivité à mesurer rapidement la satisfaction dans les commentaires reçus. Le projet compare quatre approches sur un protocole identique pour déterminer laquelle est la plus adaptée à un corpus de petite taille.
## Données
- Corpus **parallèle** : chaque énoncé existe en hassaniya, souvent en pulaar, avec une étiquette de sentiment.
- **549 énoncés annotés** (sur 793 lignes au total), dont 335 disposent d'une version pulaar.
- Répartition des classes : neutre 227, négatif 189, positif 133 (léger déséquilibre, ratio 1,7).
## Structure du dépôt
```
.
├── data/
│ └── dataset_master.csv # Corpus annoté (parallèle)
├── notebooks/
│ ├── projet_sentiment_mbert.ipynb # Approche mono-modèle (mBERT) + validation croisée
│ └── projet_sentiment_2modeles.ipynb # Deux modèles spécialisés (MARBERT + AfroXLMR)
├── rapport/
│ └── rapport_projet.pdf # Rapport complet
├── presentation/
│ └── presentation_soutenance.pdf # Support de soutenance
└── README.md
```
> Les modèles entraînés (fichiers volumineux) ne sont pas versionnés : les notebooks les régénèrent.
## Comment exécuter
1. Ouvrir un notebook dans **Google Colab**.
2. Activer le GPU : *Exécution → Modifier le type d'exécution → GPU*.
3. Déposer `dataset_master.csv` dans la session (ou adapter la variable `CSV_PATH`).
4. Exécuter les cellules dans l'ordre.
Les dépendances s'installent dans la pre …