Skip to main content

Welcome to a Grasp lesson

Create a free account to keep studying and create your own study path.

Lesson 26

Customer Segmentation with K-means Clustering

Recommended resources

Bonjour !

Dans notre leçon précédente, nous avons posé les fondations de l'apprentissage non supervisé en identifiant ses trois objectifs principaux : le clustering, la détection d'anomalies et la réduction de dimensionnalité. Nous avons vu que, contrairement à l'apprentissage supervisé, le but ici n'est pas de prédire une valeur connue, mais de découvrir des structures cachées dans les données.

Aujourd'hui, nous passons de la théorie à la pratique. Nous allons nous concentrer sur l'un des objectifs les plus courants, le clustering, et explorer l'un de ses algorithmes les plus fondamentaux : K-means. Notre objectif est de comprendre comment cet algorithme permet de réaliser une segmentation de la clientèle, une application essentielle en finance et en marketing. À la fin de cette leçon, vous serez en mesure de décrire précisément comment K-means est utilisé pour transformer des données brutes de clients en groupes exploitables pour la prise de décision.

1. Le Contexte Métier : Pourquoi Segmenter les Clients ?

Avant de plonger dans l'algorithme, il est crucial de comprendre le problème métier que nous cherchons à résoudre. Pourquoi une institution financière ne traiterait-elle pas tous ses clients de la même manière ? La réponse réside dans l'optimisation des ressources et la personnalisation.

La segmentation client consiste à diviser une base de clients en groupes homogènes, où les individus d'un même groupe partagent des caractéristiques ou des comportements similaires. Cela permet à une entreprise de :

  • Cibler ses actions marketing : Proposer des produits spécifiques à des clients plus susceptibles d'être intéressés.
  • Personnaliser les services : Adapter l'expérience client pour augmenter la satisfaction et la fidélité.
  • Identifier les clients à forte valeur : Concentrer les efforts sur les clients les plus rentables ("Champions").
  • Gérer le risque : Mieux comprendre les profils de risque de différents segments de clientèle.

Pour mieux comprendre ces motivations, je vous invite à regarder la première partie de la vidéo suivante.

Data Science for Business . Lecture 6. Customer segmentation. Clustering.

Cette vidéo de Leonid Zhukov introduit très clairement les raisons commerciales et marketing de la segmentation client, ainsi que les approches traditionnelles.

Regardez la vidéo du début jusqu'à 08:44. Concentrez-vous sur les différents types de segmentation (géographique, démographique, comportementale) et les objectifs commerciaux (marketing ciblé, personnalisation, tarification dynamique).

De la Segmentation Manuelle à la Segmentation par les Données : L'analyse RFM

Une approche quantitative classique pour la segmentation comportementale est l'analyse RFM :

  • Récence (Recency) : Combien de temps s'est écoulé depuis le dernier achat/la dernière transaction du client ? (Un client récent est souvent plus engagé).
  • Fréquence (Frequency) : À quelle fréquence le client effectue-t-il des achats/transactions ? (Un client fréquent est un client fidèle).
  • Monétaire (Monetary) : Quelle est la valeur monétaire totale des achats/transactions du client ? (Un client qui dépense beaucoup est un client de grande valeur).

Ces trois indicateurs, que l'on peut calculer à partir de l'historique des transactions, sont des caractéristiques (features) que nous créons pour décrire le comportement de chaque client. Votre expérience en économétrie vous a familiarisé avec la création de variables. C'est exactement ce que nous faisons ici, un processus appelé feature engineering.

La vidéo suivante explique bien ce concept de RFM.

Data Science for Business . Lecture 6. Customer segmentation. Clustering.

Continuons avec la vidéo précédente pour comprendre comment les métriques RFM sont utilisées pour quantifier le comportement des clients.

Regardez la section de 08:44 à 12:32. Notez comment, traditionnellement, les analystes définissent manuellement des seuils sur ces axes RFM pour créer des segments comme "Champions" ou "Clients à risque".

La question qui se pose alors est : au lieu de définir manuellement des frontières entre les segments, peut-on laisser un algorithme découvrir les groupes les plus "naturels" dans les données ? C'est précisément là que le clustering, et en particulier l'algorithme K-means, entre en jeu.


2. L'Algorithme K-means : Comment ça Marche ?

L'algorithme K-means (ou k-moyennes en français) est une méthode de partitionnement de données. Son objectif est de diviser un ensemble de N observations en K groupes distincts (les clusters), en s'assurant que chaque observation appartient au groupe dont le centre (le centroïde) est le plus proche.

L'article suivant, en français, introduit très bien le K-means dans un contexte de segmentation client pour une banque.

Algorithme k-means : comment ça marche ?

Cet article de Blent.ai pose le problème de la segmentation client et introduit le principe de l'algorithme K-means.

Lisez les deux premières sections : "Notion du regroupement (clustering)" et "Principe de fonctionnement de l'algorithme k-means". Cela vous donnera une excellente introduction en français, en utilisant un exemple de segmentation bancaire basé sur l'âge et le revenu.

L'algorithme fonctionne de manière itérative en deux étapes principales :

  1. Étape d'assignation (Assignment Step) : Chaque point de données est assigné au centroïde le plus proche.
  2. Étape de mise à jour (Update Step) : Les centroïdes sont recalculés comme étant la moyenne (le centre de gravité) de tous les points de données qui leur ont été assignés.

Ces deux étapes sont répétées jusqu'à ce que les assignations ne changent plus, c'est-à-dire jusqu'à convergence.

La vidéo suivante offre une excellente animation visuelle de ce processus itératif.

Hands On Data Science Project: Understand Customers with KMeans Clustering in Python

Cette vidéo pratique de TrentDoesMath contient une section théorique qui illustre parfaitement le fonctionnement de K-means.

Regardez attentivement le segment de 33:34 à 37:57. Observez comment les centroïdes (marqués par des 'X' rouges) se déplacent à chaque itération pour mieux représenter le centre de leur cluster respectif, et comment les couleurs des points (l'assignation aux clusters) changent en conséquence.

Customer Segmentation using K-means Clustering
Le résultat final de l'algorithme K-means. Sur ce graphique, les clients ont été regroupés en cinq segments distincts en fonction de leur revenu annuel et de leur score de dépense. Chaque couleur représente un cluster, et le point bleu clair au centre de chaque groupe est le centroïde final.

3. Les Aspects Techniques Essentiels

Pour que K-means fonctionne correctement, quelques détails techniques, qui résonneront avec votre formation quantitative, sont primordiaux.

a) La Notion de Distance

Pour "assigner un point au centroïde le plus proche", l'algorithme a besoin d'une mesure de distance. La plus couramment utilisée est la distance euclidienne. Pour deux points et dans un espace à dimensions (avec caractéristiques), la distance est calculée comme suit :

C'est la distance "à vol d'oiseau" que nous connaissons tous.

b) L'Importance de la Normalisation des Données (Scaling)

La distance euclidienne est très sensible à l'échelle des variables. Imaginez que nous segmentions des clients sur la base de deux caractéristiques : l'âge (variant de 20 à 80) et le revenu annuel (variant de 30 000€ à 150 000€). Une différence de revenu de 10 000€ pèsera beaucoup plus lourd dans le calcul de la distance qu'une différence d'âge de 10 ans. Le revenu dominerait complètement l'analyse.

Pour éviter cela, il est indispensable de normaliser (ou standardiser) les données avant d'appliquer K-means. Une méthode courante est la standardisation (ou Z-score), qui transforme chaque caractéristique pour qu'elle ait une moyenne de 0 et un écart-type de 1.

Ainsi, toutes les caractéristiques contribuent de manière égale au calcul de la distance.

Hands On Data Science Project: Understand Customers with KMeans Clustering in Python

La vidéo pratique que nous avons vue précédemment explique très bien pourquoi la normalisation est nécessaire et comment elle est effectuée.

Regardez le segment de 01:05:11 à 01:11:48. L'animateur montre visuellement que les échelles des variables RFM sont très différentes et explique comment la standardisation résout ce problème sans altérer la structure des données.

c) Choisir le Bon Nombre de Clusters (K)

Le "K" de K-means est un hyperparamètre : c'est un paramètre que nous devons définir avant de lancer l'algorithme. Mais comment savoir s'il faut chercher 3, 4, ou 5 clusters ? Il n'y a pas de réponse unique, mais deux méthodes heuristiques sont couramment utilisées :

  1. La Méthode du Coude (Elbow Method) : On exécute l'algorithme pour différentes valeurs de K et on mesure l'inertie intra-cluster (la somme des distances au carré entre chaque point et le centroïde de son cluster). En augmentant K, l'inertie diminue toujours. On cherche le "coude" sur le graphique, c'est-à-dire le point où l'ajout d'un nouveau cluster n'apporte plus une grande réduction de l'inertie.

  2. Le Score de Silhouette (Silhouette Score) : Cette métrique évalue à quel point chaque point est bien intégré dans son propre cluster par rapport aux clusters voisins. Le score varie de -1 à 1. Un score proche de 1 indique que les clusters sont denses et bien séparés. On choisit souvent le K qui maximise le score de silhouette moyen.

Ces deux méthodes sont très bien expliquées dans la vidéo et l'article suivants.

Hands On Data Science Project: Understand Customers with KMeans Clustering in Python

Ce segment vidéo met en pratique la méthode du coude et le score de silhouette pour choisir le nombre optimal de clusters.

Regardez de 01:11:48 à 01:23:05. Observez comment le graphique de l'inertie forme un "coude" et comment le score de silhouette est utilisé comme critère décisif pour choisir entre K=4 et K=5.

Algorithme k-means : comment ça marche ?

L'article de Blent.ai offre également une excellente explication écrite de ces deux méthodes en français.

Lisez la section intitulée "Quel est le nombre de clusters à choisir ?" pour renforcer votre compréhension de la méthode du coude et de la méthode de silhouette.


4. De la Technique à l'Action : L'Interprétation des Clusters

Avoir des clusters numérotés de 0 à 3 ne sert à rien si on ne sait pas ce qu'ils représentent. L'étape finale, et la plus cruciale, est l'interprétation. Il s'agit d'analyser les caractéristiques moyennes de chaque cluster pour leur donner un sens métier.

Par exemple, en analysant les valeurs moyennes de Récence, Fréquence et Monétaire pour chaque cluster, on peut définir des "personas" :

  • Cluster 0 : Récence faible, Fréquence élevée, Monétaire élevé -> "Les Champions"
  • Cluster 1 : Récence élevée, Fréquence faible, Monétaire faible -> "Clients à Risque / Dormants"
  • Cluster 2 : Récence faible, Fréquence faible, Monétaire faible -> "Nouveaux Clients"

C'est cette interprétation qui permet ensuite de définir des stratégies d'action : un programme de fidélité pour les "Champions", une campagne de réactivation pour les "Clients à Risque", etc.

La section finale de la vidéo pratique montre magnifiquement ce processus d'interprétation à l'aide de graphiques (violon plots).

Hands On Data Science Project: Understand Customers with KMeans Clustering in Python

C'est l'étape qui donne toute sa valeur à l'analyse. Voyons comment passer des clusters techniques à des segments de clientèle exploitables.

Regardez de 01:27:36 à 01:33:27. Portez une attention particulière à la manière dont l'analyste examine la distribution des caractéristiques (monétaire, fréquence, récence) pour chaque cluster afin de leur attribuer des noms significatifs comme "Retain" (À retenir), "Re-engage" (À ré-engager), "Nurture" (À développer) et "Reward" (À récompenser).

Les graphiques en radar, comme celui ci-dessous, sont aussi un excellent moyen de visualiser et de comparer le profil de chaque cluster sur plusieurs dimensions.

Interpretation of Clusters After PCA for Customer Segmentation
Ce graphique en radar compare le profil moyen de 5 clusters sur différentes variables (dépense totale, nombre de commandes, score moyen des avis, etc.). On peut voir d'un coup d'œil que le Cluster 4 (en violet) se distingue par une dépense totale et un nombre de commandes très élevés, ce qui pourrait correspondre à un segment de "clients premium".
Testez votre compréhension !

Après avoir appliqué K-means sur des données RFM, vous obtenez les trois profils de cluster suivants :

  • Cluster A : Récence très faible (achats très récents), Fréquence élevée, Valeur Monétaire élevée.
  • Cluster B : Récence élevée (dernier achat lointain), Fréquence faible, Valeur Monétaire faible.
  • Cluster C : Récence faible (achats récents), Fréquence très faible, Valeur Monétaire faible.

Quel nom métier pourriez-vous donner à chaque cluster et quelle action marketing simple pourriez-vous suggérer pour chacun ?

Voir la réponse
  • Cluster A : "Clients Champions" ou "VIP". Ce sont vos meilleurs clients : ils achètent souvent, récemment et dépensent beaucoup.

    • Action suggérée : Programme de fidélité exclusif, accès anticipé aux nouveaux produits, offres de récompense pour maintenir leur loyauté.
  • Cluster B : "Clients Perdus" ou "À Risque". Ces clients n'ont pas acheté depuis longtemps, achetaient peu et dépensaient peu. Le risque de les perdre définitivement est élevé.

    • Action suggérée : Campagne de réactivation agressive avec une offre spéciale "Vous nous manquez !" pour tenter de les faire revenir.
  • Cluster C : "Nouveaux Clients". Ils ont acheté récemment mais n'ont pas encore eu le temps d'établir une fréquence ou une valeur monétaire élevée.

    • Action suggérée : Campagne de bienvenue, tutoriels sur les produits, incitation pour un deuxième achat afin de les convertir en clients réguliers.

Conclusion

Dans cette leçon, nous avons décortiqué l'une des applications les plus emblématiques du machine learning non supervisé : la segmentation de la clientèle à l'aide de l'algorithme K-means. Nous avons vu que ce processus va bien au-delà de la simple exécution d'un algorithme ; il s'agit d'une démarche complète qui allie compréhension métier, préparation des données et interprétation des résultats.

Points clés à retenir :

  • La segmentation client permet de créer des groupes homogènes pour des actions personnalisées.
  • L'analyse RFM (Récence, Fréquence, Monétaire) est une méthode puissante pour quantifier le comportement des clients.
  • L'algorithme K-means automatise la recherche de ces groupes en partitionnant les données de manière itérative autour de centroïdes.
  • Des étapes techniques sont cruciales : la normalisation des données pour que toutes les caractéristiques pèsent de manière égale, et le choix du nombre de clusters K (par ex. avec la méthode du coude).
  • L'étape la plus importante est l'interprétation des clusters pour leur donner un sens métier et définir des stratégies concrètes.

Maintenant que vous comprenez comment le clustering peut être utilisé pour trouver des groupes dans les données, notre prochaine leçon s'intéressera à un autre objectif de l'apprentissage non supervisé : comment trouver des individus qui ne ressemblent à aucun groupe. Nous verrons comment les techniques de détection d'anomalies peuvent être utilisées pour identifier des transactions frauduleuses.