# 🇲🇷 Traducteur Automatique : Arabe Standard ↔ Dialecte Hassaniya
Ce projet implémente un système de traduction automatique neuronal (NMT) bidirectionnel entre l'**Arabe Standard** et le **Hassaniya**, un dialecte arabe principalement parlé en Mauritanie, au Sahara occidental, au Mali et au Sénégal.
En raison de la nature "Low-Resource" (faibles ressources) du Hassaniya et de l'absence de norme orthographique standard, ce projet met en place un pipeline complet incluant un prétraitement linguistique poussé (Normalisation) et le fine-tuning du modèle **AraT5-base**.
---
## ✨ Fonctionnalités
- **Traduction Bidirectionnelle** : Arabe → Hassaniya et Hassaniya → Arabe.
- **Pipeline de Normalisation en 5 étapes** : Traitement avancé du texte pour gérer la diglossie, l'anarchie orthographique (notamment le son /g/ ڨ/گ/ق), et le code-switching fréquent (français/arabe/lettres latines comme "4G" ou "WiFi").
- **Fine-Tuning AraT5** : Entraînement du modèle Seq2Seq `UBC-NLP/AraT5-base` sur un dataset personnalisé de 14 900 paires de phrases.
- **Interface Interactive** : Déploiement d'une application web avec Gradio, hébergée sur Hugging Face Spaces.
---
## 🛠️ Architecture du Pipeline
1. **Nettoyage et Normalisation (Preprocessing)** :
- Normalisation Unicode NFC.
- Standardisation des caractères arabes (Harmonisation des Alifs, Hamzas, suppression du Tashkeel).
- Standardisation spécifique au Hassaniya (Règles Regex pour les pronoms, les démonstratifs et les sons spécifiques).
- Application d'un dictionnaire de cohérence orthographique.
- Gestion des termes techniques et étrangers (ex: "connexion" → "كونيكسيون").
2. **Entraînement du Modèle (Fine-Tuning)** :
- **Modèle de base** : `AraT5-base` (220M paramètres).
- **Hyperparamètres** : 10 époques, Batch size de 8, Learning rate de 5e-5, utilisation de l'Early Stopping.
3. **Évaluation** :
- Calcul des métriques **SacreBLEU** et **chrF++** (la métrique chrF++ étant plus pertinente pour les langues morphologiqu …