Skip to content
Snippets Groups Projects
README.md 3.02 KiB
Newer Older
Mounir Azzougui's avatar
Mounir Azzougui committed
# Projet MLOps - Analyse Prédictive avec MLflow
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
## 👥 Auteurs
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
- Mounir AZZOUGUI
- Abdellah AMRANE
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
## 📝 Description
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
Ce projet implémente un pipeline MLOps complet pour l'analyse prédictive utilisant des modèles de machine learning (Régression Logistique et Random Forest). Il intègre des pratiques DevOps modernes et utilise MLflow pour le suivi des expérimentations.
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
## 🏗️ Structure du Projet
Mounir Azzougui's avatar
Mounir Azzougui committed

```
Mounir Azzougui's avatar
Mounir Azzougui committed
mon_projet/
├── .git/                          # Répertoire Git
├── .venv/                         # Environnement virtuel Python
├── coverage/                      # Rapports de couverture de tests
├── data/
│   ├── raw/                      # Données brutes (diabetes.csv)
│   ├── cleaned_data.csv          # Données nettoyées
│   └── data_modelisation.csv     # Données prêtes pour la modélisation
├── doc/
│   └── règles_metiers.md         # Documentation métier
├── myproject/
│   ├── application/              # Fonctions modulaires
│   ├── domain/                   # Modèles et outputs
│   ├── logs/                     # Fichiers de logs
│   ├── infrastructure/           # Scripts infrastructure
│   └── utils.py                  # Fonctions utilitaires
├── notebooks/                    # Jupyter Notebooks
├── outputs/                      # Résultats et graphiques
├── tests/                        # Tests unitaires et d'intégration
└── mlruns/                       # Expérimentations MLflow
Mounir Azzougui's avatar
Mounir Azzougui committed
```

Mounir Azzougui's avatar
Mounir Azzougui committed
## 🚀 Installation et Configuration
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
### Prérequis
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
- Python 3.x
- Git
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
### Installation
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
1. Cloner le dépôt :
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
```bash
git clone <URL_DU_DÉPÔT>
cd mon_projet
```
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
2. Créer et activer l'environnement virtuel :
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
```bash
python -m venv .venv
# Pour Windows
.venv\Scripts\activate
# Pour macOS/Linux
source .venv/bin/activate
```
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
3. Installer les dépendances :
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
```bash
pip install -r requirements.txt
```

## 📊 Utilisation
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
### Pipeline Principal
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
1. Ouvrir le notebook principal :
   - Naviguer vers `notebooks/NotebookDemo.ipynb`
   - S'assurer que l'environnement virtuel est activé
   - Exécuter les cellules séquentiellement
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
### Exploration des Résultats
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
- **Métriques de Performance** : Visualisables dans le notebook (Accuracy, F1-Score)
- **Visualisations** : Disponibles dans `myproject/domain/outputs`
- **Modèles Entraînés** : Sauvegardés dans `myproject/domain/Models`
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
### MLflow Tracking
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
Pour visualiser les expériences :
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
```bash
mlflow ui
```
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
Accédez à l'interface via votre navigateur pour explorer les métriques et paramètres.
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
## 📚 Documentation
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
- **Règles Métier** : Consultez `doc/règles_metiers.md`
- **Documentation Technique** : Disponible dans le dossier `doc/`
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
## 🆘 Support
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
En cas de problèmes :
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
1. Consultez la section dépannage dans ce README
2. Contactez les administrateurs du projet
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
## 📄 Licence
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
Ce projet est destiné à un usage éducatif et académique.
Mounir Azzougui's avatar
Mounir Azzougui committed

Mounir Azzougui's avatar
Mounir Azzougui committed
---
Mounir Azzougui's avatar
Mounir Azzougui committed
_Développé dans le cadre du projet MLOps - Année Universitaire 2024-2025_