1. Modélisation de variables binaires : La régression logistique

Lorsque la variable cible est qualitative binaire (ex. désabonnement d’un service bancaire : Oui/Non), la régression linéaire produit des probabilités absurdes inférieures à 0 ou supérieures à 1. On recourt alors à la régression logistique, qui applique la fonction sigmoïde pour borner la sortie entre 0 et 1 :

P(Y=1|X) = 1 / (1 + exp(-(β0 + β1*X1 + ... + βp*Xp)))

Les coefficients s’interprètent en termes d’Odds Ratios (Rapports de cotes) : un odds ratio de 1.4 signifie qu’une augmentation unitaire de la variable accroît de 40% la cote de l’événement.

2. Partitionnement non supervisé : k-Means et RFM

En marketing quantitatif et gestion de la relation client, la segmentation de clientèle permet d’adapter les propositions de valeur. Le modèle RFM (Récence, Fréquence, Montant) combiné à l’algorithme k-Means permet d’isoler des groupes homogènes :

from sklearn.cluster import KMeans
from sklearn.preprocessing import StandardScaler

# Sélection des indicateurs RFM et standardisation
features = df[['recence_jours', 'frequence_achats', 'montant_cumule_chf']]
scaler = StandardScaler()
features_scaled = scaler.fit_transform(features)

# Entraînement de l'algorithme k-Means avec k=4 clusters
kmeans = KMeans(n_clusters=4, random_state=42, n_init=10)
df['segment_client'] = kmeans.fit_predict(features_scaled)

# Analyse des profils de clusters
profils = df.groupby('segment_client')[['recence_jours', 'frequence_achats', 'montant_cumule_chf']].mean()
print(profils)

3. Validation de la qualité des clusters

Pour déterminer le nombre optimal de groupes k, le data scientist s’appuie sur la méthode du coude (Elbow Method) mesurant l’inertie intra-classe, ainsi que sur le coefficient de Silhouette, qui évalue la compacité interne des groupes et leur séparation mutuelle.