1 Contexte de l’étude

Nous disposons d’un jeu de données concernant les clients d’une banque anonyme, le but de notre étude est de : Analyser et comparer les performances de certains algorithmes d’arbres de décision entre eux mais aussi par rapport à la regression logistique

2 Importation des données

La première étape consiste à importer les données telles qu’elles sont sans effectuer aucune modification.

Type_de_client Age_du_client Situation_familiale Ancienneté Domiciliation_du_salaire Domiciliation_epargne Profession Moyenne_encours Moyenne_des_mouvements Cumul_des_débits Autorisation_de_découvert Interdiction_de_chéquier
Bon plus de 50 ans célibataire anc plus 12 ans Oui domicilié pas d’épargne employé de 2 à 5 K encours plus de 50K mouvt de 40 à 100 débits découvert interdit chéquier autorisé
Bon moins de 39 ans célibataire anc 1 an ou moins Oui domicilié pas d’épargne employé de 2 à 5 K encours de 0 à 30K mouvt moins de 40 débits découvert interdit chéquier autorisé
Mauvais moins de 39 ans ancien marié anc de 6 à 12 ans Oui domicilié pas d’épargne employé de 2 à 5 K encours plus de 50K mouvt de 40 à 100 débits découvert autorisé chéquier interdit
Bon moins de 39 ans ancien marié anc de 1 à 6 ans Oui domicilié épargne employé plus de 5 K encours de 30 à 50K mouvt de 40 à 100 débits découvert interdit chéquier autorisé
Bon moins de 39 ans célibataire anc de 6 à 12 ans Non domicilié pas d’épargne employé de 2 à 5 K encours de 0 à 30K mouvt moins de 40 débits découvert interdit chéquier autorisé
Bon moins de 39 ans célibataire anc 1 an ou moins Oui domicilié pas d’épargne employé de 2 à 5 K encours de 0 à 30K mouvt moins de 40 débits découvert autorisé chéquier autorisé

Nous avons un jeu de données composé de 10 variables explicatives et d’une variable à expliquer (Type de client). Nous disposons d’informations socio-démographiques mais également des informations liés la consommation du service bancaire.

3 Analyser les variables

Après importation du fichier comportant des données, on analyse les différentes variables existantes dans notre jeu de données. Nous avons supprimé l’identifiant client qui est inutile dans cette étude car nous n’allons pas aggregé d’autres données client.

Type_de_client character
Age_du_client character
Situation_familiale character
Ancienneté character
Domiciliation_du_salaire character
Domiciliation_epargne character
Profession character
Moyenne_encours character
Moyenne_des_mouvements character
Cumul_des_débits character
Autorisation_de_découvert character
Interdiction_de_chéquier character
Il est important de connaître les types de données que nous devons analyser. Il existe 2 types de variables explicatives :

4 Distributions et statistiques

On examine les variables une à une :
Pour chaque modalité d’une variable, on observe la distributivité des valeurs possibles (comme l’effectif ou le pourcentage) de celle-ci par rapport aux autres modalités. Si une des valeurs des modalités est trop faible par rapport au jeu de données (ce qui peut rendre le modèle instable), on le regroupe avec une autre valeur ayant un sens grammatical ou un sens métier équivalent. En général, on fixe un seuil à 30 %.

4.1 Variable : Age

Pour la variable explicative “Age_du_client”, on remarque que les observations de la catégorie “moins de de 23 ans” est sous représentée (-30 %), nous allons donc procédé à un regroupement de modalités que nous évoquerons dans la partie suivante. Le regoupement aura pour nom “Age_inferieur_à_39 ans” .

4.2 Variable : Situation familiale

Concernant la variable explicative “Situation_familiale” de l’individu, la modalité “divorcé/veuf” est sous représentée. Nous allons donc procéder à un regroupement de modalités. Nous regrouperons les variables “divorcé” & “veuf” , et créerons une nouvelle variable “ancien marié” .

4.3 Variable : Ancienneté

En ce qui concerne la variable explicative “ancienneté”, on remarque que plusieurs modalités sont sous-répresentées :
  • de 1 à 4 ans
  • de 4 à 6 ans
  • de 6 à 12 ans

Nous avons donc décidé de regrouper les deux premières modalités en une seule nommée “de 1 à 6 ans”. Nous avons également fait le choix de ne pas procédé à un regroupement pour la modalités “de 6 à 12 ans” afin de pouvoir distinguer les clients moyennement anciens et les clients très anciens.

4.4 Variable : Domiciliation du salaire

La modalité “Non domicilé” est sous-representée mais aucun regroupement n’est possible.

4.5 Variable : Domiciliaton épargne

Concernant la variable explicative “Domicilation épargne”, on remarque que les modalités suivantes sont sous représentées :
  • Moins de 10k épargne
  • de 10 à 100k épargne
  • plus de 100K épargne

Nous procederons donc à un regroupement de modalités, nous créerons une nouvelle modalité que l’on nommera : “épargne”.

4.6 Variable : Profession

Les modalités “autre” et “cadre” sont sous representées mais aucun regroupement au regard de la compréhension métier n’est possible.

4.7 Variable : moyenne en cours

Concernant les moyennes en cours, les deux modalités “moins de 2k encours” et “plus de 5k en cours” sont sous representées mais aucun regroupement n’est possible.

4.8 Variable : moyenne des mouvements

Concernant cette variable, les modalités “moins 10k mouvt” et “de 10 à 30K mouvt” sont sous representées (inferieur à 30%), nous pouvons regrouper ces modalités ensemble. On creera une nouvelle modalité que l’on nommera “de 0 à 30K mouvt” .

4.9 Variable cumul des débits

Les modalités de la variable “Cumul_des_débits” sont assez bien réparties. Aucun regroupement n’est nécessaire.

4.10 Variable : autorisation de découvert

Les modalités de la variable “Autorisation_de_découvert” sont réparties de manière homogènes, aucun regroupement n’est nécessaire.

4.11 Variable : Interdiction de chequier

La variable explicative “Interdiction_de_chéquier” est répartie de manière hétérogène. Cette variable nous semble être une variable fortement corrélée à la variable cible du fait de son sens métier.

5 Variables à supprimer du modèle

Nous allons étudier de plus près chaque variable afin d’idenfier celles qui ne sont pas fortement corrélées avec la variable à expliquer. En effet, nous n’avons pas crée la variable à expliquer, nous ne savons donc pas si les variables qui ont permit de la créer sont encore ou non dans les données. Nous devons alors vérifier ce point.

Nous suspectons les variables suivantes d’avoir été pris en compte lors de la déterminantion de la variable cible :

Afin de vérifier ce point nous allons pour ces trois variables voir la répartition de la variable cible en fonction des différentes modalités.

5.1 Domiciliation du salaire

Type_de_client Domiciliation_du_salaire n
Bon Non domicilié 33
Bon Oui domicilié 204
Mauvais Non domicilié 119
Mauvais Oui domicilié 112

On remarque que la domiciliation du salaire explique très bien la classe “Bon client”, mais moins la classe “Mauvais client”, nous allons faire un modèle avec cette modalité et un modèle sans pour prouver ou non l’instabilité apportée par cette variable.

5.2 Interdiction de chequier

Type_de_client Interdiction_de_chéquier n
Bon chéquier autorisé 231
Bon chéquier interdit 6
Mauvais chéquier autorisé 184
Mauvais chéquier interdit 47
Comme pour la domiciliation du salaire, on remarque que la variable “Interdiction de chequier” explique bien la classe “Bon client”, ce qui parait avoir un sens d’un point de vue métier. En effet, les interdictions de chequiers sont octroiyées aux mauvais clients. Nous effectuerons alors un modèle en excluant cette variable. ##Autorisation de découvert
Type_de_client Autorisation_de_découvert n
Bon découvert autorisé 83
Bon découvert interdit 154
Mauvais découvert autorisé 119
Mauvais découvert interdit 112

Concernant la variable autorisation de decouvert, nous remarquons qu’aucune classe n’est plus representée que l’autre, cette variable sera donc gardée dans nos modèles.

6 Regroupement des modalités

6.1 Anciennete après regroupement

Ci-dessus la variable anciennete après regroupement.

6.2 Domiciliation de l’épargne après regroupement

Ci-dessus la variable Domiciliation_epargne après regroupement.

6.3 Age du client après regroupement

Ci-dessus la variable Age du client après regroupement.

6.4 Situation familiale après regroupement

Ci-dessus la variable Situation Familiale après regroupement.

6.5 Moyenne des mouvements après regroupement

Ci-dessus la variable Moyenne des mouvements après regroupement.

7 Echantionnage (Apprentissage/Test)

Nous allons séparer notre échantillion de données en deux sous-échantillions:

7.1 Echantionnage d’apprentissage (70% des données)

Classe Effectif
Bon 163
Mauvais 181

7.2 Echantionnage de test (30% des données)

Classe Effectif
Bon 74
Mauvais 50

8 Modelisation Regression Logistique

8.1 -Selection des variables : Stratégie Stepwise

Stratégie Stepwise : Utilisée lorsque la connaissance des variables prédictrices possibles s’avère limitée . La variable la plus significative est injectée en première. La deuxième est injectée conditionnellement à la première et ainsi de suite. Nous avons choisi instinctivement la stratégie stepwise pour nous faire une première idée sur les variables pouvant avoir un impact sur le modèle.

Ci-dessous le calcul de l’overall pour chaque item de variable permettant de mesurer l’importance de ceux-ci pour la prédiction.
Overall
Age_du_clientmoins de 39 ans 1.0490481
Age_du_clientplus de 50 ans 0.3802522
Situation_familialecélibataire 2.0519409
Situation_familialemarié 1.6011994
Anciennetéanc de 1 à 6 ans 3.7292480
Anciennetéanc de 6 à 12 ans 2.9075407
Anciennetéanc plus 12 ans 2.9617640
Domiciliation_du_salaireOui domicilié 4.8206789
Domiciliation_epargnepas d'épargne 0.4826511
Professioncadre 1.4234328
Professionemployé 0.0705327
Moyenne_encoursmoins de 2K encours 2.1597816
Moyenne_encoursplus de 5 K encours 1.4584715
Moyenne_des_mouvementsde 30 à 50K mouvt 0.8898369
Moyenne_des_mouvementsplus de 50K mouvt 2.6033875
Cumul_des_débitsmoins de 40 débits 2.1634996
Cumul_des_débitsplus de 100 débits 1.7039003
Autorisation_de_découvertdécouvert interdit 0.9451906
Interdiction_de_chéquierchéquier interdit 3.2092032
Les variables ayant un overall élévé sont celles qui ont un impact plus important dans le modèle. ##Matrice de Confusion Afin d’analyser la performance de notre classifieur, nous nous sommes basés sur différentes métriques telles que :
  • La matrice de confusion
  • La courbe de ROC
Bon Mauvais
Bon 57 11
Mauvais 17 39

On remarque pour les deux classes “Bon” & “Mauvais” clients, que le taux de bien classés est conséquent , il y a peu de mauvais classement.

8.2 Metriques du modèle

Sensitivity 0.7702703
Specificity 0.7800000
Pos Pred Value 0.8382353
Neg Pred Value 0.6964286
Precision 0.8382353
Recall 0.7702703
F1 0.8028169
Prevalence 0.5967742
Detection Rate 0.4596774
Detection Prevalence 0.5483871
Balanced Accuracy 0.7751351
Nous avons donc les métriques suivantes:
  • Sensibilité : taux de vrai positif
  • Spécificité : taux de vrai négatif

Nous remarquons que les taux de sensibilité et de spécificité sont très bons cela signifie que notre modèle effectue un bon classement .

8.3 Courbe de ROC


Nous affichons sur ce graphique, la courbe (droite) sans valeurs discriminantes (dont l’aire de la courbe équivaut à 0,5) et celle de notre classifieur.

On remarque que la courbe se rapproche de la courbe du classifieur idéale avec une valeur d’aire sous la courbe se rapprochant de 0,90.

Ces informations, en plus des résultats fournient par la matrice de confusion, nous permettent de déduire que notre modèle est plutôt performant .

9 Modelisation Arbre de décision

Un arbre de décision est un outil d’aide à la décision représentant un ensemble de choix sous la forme graphique d’un arbre. Les différentes décisions possibles sont situées aux extrémités des branches (les « feuilles » de l’arbre), et sont atteintes en fonction de décisions prises à chaque étape.

9.1 CART Modelisation

Arbre de décision

Ci-dessus l’arbre de décision, les feuilles representent les classes predites et les noeuds sont des tests sur les variables explicatives. L’arbre de décision permet de créer des règles de décision.

Une des règles que l’on peut déduire de cet arbre est que si un client domicilie son salaire et que sa moyenne en cours est de moins de 2k, il a plus de chance d’être considéré comme un bon client.

Overall
Age_du_clientmoins de 39 ans 0.0688201
Age_du_clientplus de 50 ans 3.5969493
Anciennetéanc de 1 à 6 ans 5.9687379
Anciennetéanc plus 12 ans 6.4593615
Cumul_des_débitsmoins de 40 débits 11.1045922
Cumul_des_débitsplus de 100 débits 12.6826915
Domiciliation_du_salaireOui domicilié 27.5795748
Domiciliation_epargnepas d’épargne 4.0672789
Interdiction_de_chéquierchéquier interdit 27.9091713
Moyenne_des_mouvementsde 30 à 50K mouvt 3.0746137
Moyenne_des_mouvementsplus de 50K mouvt 32.3167448
Moyenne_encoursmoins de 2K encours 27.1648462
Moyenne_encoursplus de 5 K encours 11.6109841
Professioncadre 10.9625080
Situation_familialemarié 4.7066706
Age_du_clientmoins de 39 ans 0.0000000
Age_du_clientplus de 50 ans 0.0000000
Situation_familialecélibataire 0.0000000
Anciennetéanc de 1 à 6 ans 0.0000000
Anciennetéanc de 6 à 12 ans 0.0000000
Anciennetéanc plus 12 ans 0.0000000
Domiciliation_du_salaireOui domicilié 0.0000000
Domiciliation_epargnepas d'épargne 0.0000000
Professionemployé 0.0000000
Moyenne_encoursmoins de 2K encours 0.0000000
Moyenne_encoursplus de 5 K encours 0.0000000
Moyenne_des_mouvementsde 30 à 50K mouvt 0.0000000
Moyenne_des_mouvementsplus de 50K mouvt 0.0000000
Cumul_des_débitsmoins de 40 débits 0.0000000
Cumul_des_débitsplus de 100 débits 0.0000000
Autorisation_de_découvertdécouvert interdit 0.0000000
Interdiction_de_chéquierchéquier interdit 0.0000000

On retrouve dans ce tableau l’overall calculé pour chaque item de variables. Plus l’overall est élevé, plus les variables ont un impact important dans la modélisation.

9.2 CART Matrice de confusion

Bon Mauvais
Bon 56 10
Mauvais 18 40

Nous remarquons que l’algorithme CART d’arbre de décision classe assez bien les deux classes, aussi bien que la regression logistique .

9.3 Metriques du modèles

Sensitivity 0.7567568
Specificity 0.8000000
Pos Pred Value 0.8484848
Neg Pred Value 0.6896552
Precision 0.8484848
Recall 0.7567568
F1 0.8000000
Prevalence 0.5967742
Detection Rate 0.4516129
Detection Prevalence 0.5322581
Balanced Accuracy 0.7783784

9.4 CART ROC


La courbe de ROC de la régression logistique fournit des performances bien meilleures . Cela se voit au niveau de la valeur de l’aire sous la courbe inférieure à celle de la regression logistique. Mais on constate que la courbe de l’arbre de décision est moins nivelée . On en déduira que l’arbre de décision CART est moins performant mais plus stable que la regression logistique. Cela est dû à la sensibilité du bruit présente dans la régression logistique.

10 Apport de la préparation de données

Dans cette partie, nous voulons mettre en évidence l’apport du regroupement . Pour se faire nous avons donc comparé une modélisation de type CART sur un ensemble de données sans regroupement et un ensemble de données avec regroupement.

10.1 Arbre de décision : CART avec données Brut

10.1.1 Matrice de Confusion

Bon Mauvais
Bon 48 11
Mauvais 26 39

10.1.2 Metriques du modèle

Sensitivity 0.6486486
Specificity 0.7800000
Pos Pred Value 0.8135593
Neg Pred Value 0.6000000
Precision 0.8135593
Recall 0.6486486
F1 0.7218045
Prevalence 0.5967742
Detection Rate 0.3870968
Detection Prevalence 0.4758065
Balanced Accuracy 0.7143243

10.2 Arbre de décision : CART après regroupement de variables

10.2.1 Matrice de Confusion

Bon Mauvais
Bon 56 10
Mauvais 18 40

On peut voir que le modèle fournit de légers meilleurs résultats par rapport à la matrice de confusion sans regroupement de variables.

Davantage de données aurait permis de voir des différences plus notables

10.2.2 Metriques du modèles

Sensitivity 0.7567568
Specificity 0.8000000
Pos Pred Value 0.8484848
Neg Pred Value 0.6896552
Precision 0.8484848
Recall 0.7567568
F1 0.8000000
Prevalence 0.5967742
Detection Rate 0.4516129
Detection Prevalence 0.5322581
Balanced Accuracy 0.7783784

La sensitivité et la spécifité sont supérieures après regroupement. On peut en déduire que ce modèle est plus performant que celui-ci sans regroupement de variables.

10.3 Arbre de décision : après regroupement & suppressions des variables “suspects”

10.3.1 Matrice de Confusion

Bon Mauvais
Bon 56 12
Mauvais 18 38

10.3.2 Metriques du modèle

Sensitivity 0.7567568
Specificity 0.7600000
Pos Pred Value 0.8235294
Neg Pred Value 0.6785714
Precision 0.8235294
Recall 0.7567568
F1 0.7887324
Prevalence 0.5967742
Detection Rate 0.4516129
Detection Prevalence 0.5483871
Balanced Accuracy 0.7583784

On remarque que la suppression des variables déteriore notre modèle. On peut en conculure que celles-ci sont des variables qui expliquent bien notre modèle, leurs suppressions a rendu le modèle instable .

10.4 Comparaison des modèles

CART Brut AUC:

## Area under the curve: 0.7504

CART après regroupement de variables AUC:

## Area under the curve: 0.7901

CART après suppression de variables AUC:

## Area under the curve: 0.768


Nous constatons à travers l’aire sous la courbe que le meilleur modèle est le modèle qui se base sur les données regroupées. (aire sous la courbe légérement supérieur)

11 Comparaison des modèles

Dans cette partie, nous voulons comparer les modèles suivants :

11.1 Courbe de lift


La courbe de Lift permet de mettre en évidence la volumétrie de l’echantillion d’apprentissage à partir duquel notre modèle est le plus performant. Nous remarquons que lorsque le modèle a apris 50% de l’echantillion d’apprentissage, il a la meilleure performance. Les arbres de décisions ont tendance à devenir moins performant passé ce seuil, cela est dû au surapprentissage.

Nous en concluons que si nous voulons un modèle plus robuste nous pourrions par exemple réduire l’échantillon d’apprentissage et augmenter l’échantillion de test.

11.2 Courbe de ROC


Regression logistique AUC:

## Area under the curve: 0.8465

CART AUC:

## Area under the curve: 0.7901

CHAID AUC:

## Area under the curve: 0.8054

C50 AUC:

## Area under the curve: 0.7914

On remarque que la regression logistique, à travers l’aire sous la courbe, est plus performante que les arbres de décisions, mais les arbres de décisions sont plus stables .

Si nous devrions choisir un modèle, nous pencherons plutôt pour l’arbre de décision CHAID car il semble plus robuste malgré des performances plus faible que la régression logistique qui a tendance à osciller beaucoup .

Nous pensons que la regression logistique est plus sensible aux fluctuations des données .

Perspective

Pour valider davantage les performances de chacun des modèles, il aurait fallu executer chaque modèle plusieurs fois et récupérer la moyenne des AUC sur des échantillons de train et de test différents.