Projet Machine Learning · ENSA Fès · 2025

Prédire le défaut
de paiement par
segmentation comportementale

Un système end-to-end de credit scoring sur 30 000 clients — clustering HDBSCAN, Gradient Boosting par cluster, SMOTE, et explicabilité SHAP. Déployé via Flask.

30k
Clients analysés
23
Features · UCI dataset
3
Clusters comportementaux
82%
Accuracy · GB par cluster

Architecture du système

Une approche cluster-based : segmenter d'abord, prédire ensuite. Chaque groupe comportemental reçoit son propre modèle calibré.

ÉTAPE 01 🗃
Données UCI

30 000 clients, 6 mois d'historique de paiement, montants de factures et démographie.

pandasnumpy
ÉTAPE 02 🧹
Nettoyage & Feature Engineering

Gestion des valeurs aberrantes, encodage des variables catégorielles, normalisation.

sklearnclean_data.py
ÉTAPE 03 🔵
Clustering HDBSCAN

Segmentation non supervisée en 3 groupes comportementaux. Gestion des outliers (-1).

hdbscanumap
ÉTAPE 04 ⚖️
SMOTE · Équilibrage

Sursampling synthétique de la classe minoritaire (défaut) par cluster pour éviter le biais.

imbalanced-learn
ÉTAPE 05 🌲
Modèles par cluster

Un Gradient Boosting entraîné par cluster + Naive Bayes comme baseline comparatif.

xgboostsklearn
ÉTAPE 06 💡
SHAP · Explicabilité

Valeurs SHAP pour expliquer chaque prédiction — quels facteurs ont le plus pesé.

shapflask

Performance des modèles

Comparaison entre la baseline Naive Bayes et le Gradient Boosting spécialisé par cluster comportemental.

Naive Bayes
Baseline · Global
accuracy 0.74
precision 0.52
recall 0.49
f1-score 0.50
roc-auc 0.68
Approche globale
GB · Sans clustering
accuracy 0.79
precision 0.63
recall 0.58
f1-score 0.60
roc-auc 0.80

Profils comportementaux

HDBSCAN identifie 3 groupes distincts de clients selon leurs habitudes de paiement sur 6 mois.

0
Cluster 0
Clients disciplinés

Paiements réguliers, faibles soldes reportés. Historique de crédit stable sur 6 mois. Profil low-risk dominant dans le dataset.

Risque défaut
18%
1
Cluster 1
Clients irréguliers

Paiements erratiques, utilisation élevée du crédit mais généralement couverts. Profil intermédiaire, sensible aux chocs.

Risque défaut
41%
2
Cluster 2
Clients à risque élevé

Retards répétés, montants de factures élevés par rapport aux paiements. Signaux précoces de détresse financière.

Risque défaut
67%

Comprendre chaque prédiction

Importance des features · SHAP mean |φ|

PAY_0 (retard mois 1)
0.31
PAY_2 (retard mois 2)
0.25
LIMIT_BAL
0.20
BILL_AMT1
0.16
PAY_AMT1
0.13
PAY_3 (retard mois 3)
0.11
AGE
0.07
EDUCATION
0.05

L'historique de retard domine toutes les autres features.

L'analyse SHAP révèle que les variables PAY_0 à PAY_6 (statut de paiement des 6 derniers mois) expliquent à elles seules plus de 60% de la variance de prédiction. Un seul mois de retard crédible est un signal fort.

↑ Cluster 2 : PAY_0 ≥ 2 (retard ≥ 2 mois) pousse la probabilité de défaut de +0.38 en moyenne — c'est le marqueur le plus discriminant.
↑ Cluster 0 : LIMIT_BAL élevé combiné à PAY_0 = -1 (paiement en avance) réduit le risque de -0.22 en moyenne.

L'explicabilité SHAP permet de justifier chaque refus de crédit — une exigence réglementaire croissante dans le secteur financier.

Technologies utilisées

🐍 Python 3.10 Langage principal
🔵 HDBSCAN Clustering
🌲 Gradient Boosting Prédiction
⚖️ SMOTE Équilibrage
💡 SHAP Explicabilité
🌐 Flask API · Déploiement
🐼 Pandas · NumPy Data wrangling
📊 Matplotlib · Seaborn Visualisation

À propos du projet

AY
Aya Youssfi
Ingénieure IA & Confiance Numérique
ENSA Fès · 2024–2026

Un projet à la frontière du ML et de la finance.

Ce système a été conçu pour dépasser les approches globales traditionnelles du credit scoring. L'intuition centrale : les clients ne forment pas un groupe homogène — leur comportement de paiement révèle des patterns distincts qui méritent des modèles distincts.

L'intégration de SHAP n'est pas anecdotique : dans un contexte réglementaire où les décisions de crédit doivent être explicables (RGPD, directives EBA), la boîte noire n'est plus acceptable. Chaque prédiction est justifiable.

Machine Learning Clustering non supervisé Credit Risk Modeling SHAP · XAI Flask · API REST Imbalanced Learning Feature Engineering Data Ethics