Bienvenue dans l'application de prédiction du churn client ! Ce projet utilise des techniques de data science et de machine learning pour analyser les données clients et prédire les risques de churn (désabonnement). L'objectif est de fournir une analyse approfondie pour identifier les clients à risque et permettre aux entreprises de mettre en place des stratégies de rétention efficaces.
- 📖 Contexte
- 🎯 Objectifs
- ✨ Fonctionnalités
- 🏗️ Structure du Dépôt
- 🧠 Mise en Place du Modèle Prédictif
- ⚙️ Installation
- 🚀 Utilisation
- 👤 Auteur
Le churn client, ou attrition client, représente un enjeu majeur pour les entreprises en termes de fidélisation. Comprendre pourquoi les clients se désabonnent est crucial pour optimiser la satisfaction client et minimiser les pertes financières.
L'application a pour objectifs de :
- Analyser les données clients pour identifier les facteurs contribuant au churn.
- Prédire les clients à risque grâce à des modèles de machine learning performants.
- Fournir des visualisations interactives pour explorer les données et les résultats prédictifs.
- Proposer des prédictions individuelles et en lot pour couvrir différents besoins.
- Visualisation des données brutes et statistiques descriptives.
- Graphiques interactifs pour analyser les distributions et les relations avec le churn.
- Comparaison des services et des caractéristiques clients.
- Interface permettant d'entrer les informations d'un client spécifique.
- Prédiction du risque de churn avec explication.
- Génération de clients fictifs.
- Prédiction du churn pour un grand nombre de clients en une seule opération.
- Visualisation des résultats sous forme de graphiques interactifs.
- Présentation de l'auteur et contact.
Le projet est organisé comme suit :
Churn-Prediction-and-Analysis-Project/
│
├── data/
│ └── data.csv # Données utilisées pour le projet
│
├── notebooks/
│ └── Exploratory_Analysis.ipynb # Jupyter Notebook pour l'analyse exploratoire
│ └── Model_Building.ipynb # Jupyter Notebook pour la création du modèle
│
├── src/
│ ├── Acceuil.py # Application Streamlit principale (page d'accueil)
│ ├── pages/
│ │ ├── 1_Dashboard_Exploratoire.py # Page de Dashboard
│ │ ├── 2_Prédiction_Individuelle.py # Page de Prédiction Individuelle
│ │ ├── 3_Prédictions_en_Lot.py # Page de Prédictions en Lot
│ │ └── 4_À_Propos.py # Page À Propos
│ ├── models/
│ │ └── model_LogisticRegression.pkl # Modèle entraîné
│
└── README.md
La mise en place du modèle prédictif a été réalisée de la manière suivante :
Les données clients ont été chargées à partir du fichier data/data.csv
. Elles contiennent des informations telles que :
- Identifiant du client, genre, ancienneté, services souscrits, méthode de paiement, frais mensuels, etc.
- Churn (cible) indiquant si le client a quitté l'entreprise.
- Nettoyage des Données : Gestion des valeurs manquantes et conversion des types de données.
- Encodage des Variables Catégorielles : Utilisation de techniques d'encodage adaptées (Label Encoding et One-Hot Encoding).
- Normalisation des Données : Normalisation des variables numériques pour améliorer la performance du modèle.
- Analyse Univariée et Bivariée pour comprendre la distribution des variables et leur relation avec le churn.
- Visualisations pour identifier les tendances et les schémas pertinents.
- Modèles Testés :
- Régression Logistique
- Random Forest
- SVM (Support Vector Machine)
- Pipeline Scikit-learn : Mise en place d'un pipeline comprenant le prétraitement et l'entraînement du modèle.
- Validation Croisée : Utilisation de la validation croisée pour évaluer les performances du modèle.
- Métriques Utilisées :
- Précision
- Rappel
- F1-Score
- AUC-ROC
- Meilleur Modèle : Le modèle final sélectionné est une régression logistique, sauvegardée sous
src/models/model_LogisticRegression.pkl
.
Pour plus de détails, consultez le notebook notebooks/Model_Building.ipynb
.
- Python 3.7+ installé.
- Pip pour gérer les packages Python.
-
Clonez le projet :
git clone https://github.com/abrahamkoloboe27/Churn-Prediction-and-Analysis-Project.git cd Churn-Prediction-and-Analysis-Project
-
Créez un environnement virtuel :
python -m venv env
-
Activez l'environnement virtuel :
-
Sur Windows :
.\env\Scripts\activate
-
Sur MacOS/Linux :
source env/bin/activate
-
-
Installez les dépendances :
pip install -r requirements.txt
-
Lancez l'application Streamlit :
streamlit run src/Acceuil.py
-
Naviguez à travers l'application :
- Utilisez la barre latérale pour accéder aux différentes pages.
- Explorez les visualisations, effectuez des prédictions individuelles ou en lot.
- Data Scientist | Ingénieur en Mathématiques et Modélisation
- Passionné par les sciences de données et l'intelligence artificielle.
- Email : [email protected]
- WhatsApp : +229 91 83 84 21
- LinkedIn : Abraham KOLOBOE
Pour toute suggestion ou question, veuillez ouvrir un issue sur le dépôt GitHub.
🎉 Merci d'utiliser l'application de prédiction du churn client ! N'oubliez pas de laisser une étoile ⭐ sur le dépôt si vous avez trouvé le projet utile.