SlideShare une entreprise Scribd logo
1  sur  14
Télécharger pour lire hors ligne
Techniques d’exploitation de données
(Data Mining)
Projet 2
Professor : François Bellavance
Abdolrasoul Baharifard
(Étudiant de l’université Laval)
Hiver 2015
Table of Contents
Motivation:...............................................................................................................................................................3
Description de la base de données:................................................................................................................3
Objectifs:...................................................................................................................................................................3
Préparation des données :.................................................................................................................................4
Modélisation :.........................................................................................................................................................4
1-Arbre de décision.........................................................................................................................................4
2-Méthodes d’ensembles...............................................................................................................................5
3-Réseaux de neurones..................................................................................................................................6
Évaluation:...............................................................................................................................................................7
Déploiement :..........................................................................................................................................................8
Annexes.....................................................................................................................................................................9
Annexe 1 : Table de préparation des données......................................................................................9
Annexe 2: Table de les valeurs de 24 arbres pour choisi les meilleur 8 arbre...................... 10
Annexe 3 : modèle d’arbre de décision................................................................................................. 11
Annexe 4 : Sensitivité et Spécificité pour le modèle « arbre de décision 2» ......................... 11
Annexe 5 : Les méthodes d’ensembles.................................................................................................. 12
Annexe 6 : Sensitivité et Spécificité pour le modèle « Gradient Boosting » .......................... 12
Annexe 7 : Les réseaux de neurones...................................................................................................... 13
Annexe 8 : Sensitivité et Spécificité pour le modèle « réseau de neurone» .......................... 13
Annexe 9 : Comparer les trois meilleures modèles.......................................................................... 14
Motivation:
Le but de ce projet est de prédire sous la base des modèles d’apprentissage
supervisés si un client restera fidèle avec une grande compagnie téléphonique
mobile en Amérique du nord ou il la quittera.
Description de la base de données:
Dans ce travail, on se servira des données d’une grande compagnie
téléphonique mobile en Amérique du nord contenant 50 000 observations sur
173 variables. Il y a trois types de variables explicatives dans la base de
données: variables de comportement comme le nombre de minutes utilisées, le
type d’équipement; interaction avec la compagnie comme les appels au service
à la clientèle; et des données démographiques.
Objectifs:
Nous allons donc utiliser les outils statistiques comme les arbres de
classification, les méthodes d’ensemble et les réseaux de neurones sur le fichier
de données «churn» et parmi elles, nous choisirons celle qui présente le
meilleur modèle selon le taux de bonne classification, la sensitivité et la
spécificité. La variable cible est appelée « churn » dans ce fichier de données.
De plus, nous diviserons notre base de données en deux parties, un échantillon
d’apprentissage (60%) et un échantillon de validation (40%) sur lequel nous
testerons nos modèles. Ensuite, nous allons évaluer la performance de notre
meilleur modèle avec le fichier « churn_test » qui contient également 50 000
observations.
Préparation des données :
Premièrement nous allons nettoyer le jeu de données « churn » et nous allons
effectuer la même tâche pour le jeu de données « churn_test » également. En
effet, certaines variables possèdent des valeurs manquantes par manque
d'informations ou pour une raison inconnue et d’autres peuvent être
corrigéesen analysant un peu plus la signification de la valeur manquante. Nous
allons donc faire la distinction entre ces types de valeurs manquantes et nous
allons supprimer toutes les variables ayant plus de 65% de valeurs manquantes
et transformer toutes les variables pour lesquelles la valeur est tout
simplement non disponible dans une nouvelle catégorie. Nous avons bien
séparé ces types de variables dans l’annexe 1.
Modélisation :
1-Arbre de décision
Tout d’abord on ajuste le modèle d’arbres de décision sur les données
nettoyées dans la partie précédente. Les critères que nous avons considérés
sont les suivants :
Critères de sélection possible pour la variable cible:
• P-value associée au test du khi-deux
• Entropie
• Gini
Seuil de significativité:
• 0.2
• 0.5
Profondeur maximale:
• 10
• 20
Taille des feuilles:
• 25
• 50
Nous commencerons la procédure en fixant le seuil de la significativité à 0.2, la
profondeur maximale à 10 et la taille des feuilles à 25. On fait compiler le
modèle trois fois en utilisant les trois critères de sélection possibles cités plus
haut pour la variable cible. A chaque fois on note le taux de mauvaise
classification du jeu d’entrainement, le taux de mauvaise classification du jeu
de la validation, la spécificité, la sensitivité et le taux de bonne classification.
En comparant les paramètres des trois critères de sélection possibles pour la
variable cible, nous allons choisir le meilleur arbre à chaque exécution et nous
le mettons dans l’environnement SAS EM. A l’étape suivante, nous changeons
la profondeur maximale à 20 et on note également les valeurs des paramètres
mentionnés dans l’étape précédente (i.e. pour une profondeur de 10) pour les
trois critères de sélection possibles pour la variable cible et nous choisirons le
meilleur modèle. Nous allons continuer cette procédure lorsque nous aurons
testé tous les cas possibles des paramètres.
Les valeurs pour tous les cas possibles sont notées en Annexes 2. Nous
obtenons 8 meilleurs arbres et nous allons comparer leurs valeurs avec le nœud
«model comparaison» fourni avec SAS EM (Annexe 3).
Le tableau suivant présente le meilleur résultat avec les différents paramètres
ajustés :
Critère de
sélection
pour variable
Seuil de
signific
ativté
Profon
deur
maxi
male
Taille des
feuilles
Train:
Taux de
mauv
aise
classificatio
n
Valid
ation:
taux de
mauv
aise
classificatio
n
Spécific
ité
Sensitivi
té
Taux de
bonne
classific
ation
Valid:
ROC
index
Train:
ROC
index
Gini .2 20 25 33.64% 37.81% 60.96% 63.41% 62.17% .72 .639
2-Méthodes d’ensembles
Le « Bagging » consiste en la création d’un ensemble de modèles utilisant le
même algorithme sur différents sous ensemble de données génèrés avec
échantillonnage aléatoire simple de taille n avec remise à partir de l’échantillon
« bootsrap ».
De même, « Boosting » procède de façon séquentielle en sur-échantillonnant
les observations mal classifiées par les modèles précédents. Nous allons tester
des générations de 25, 50 et 100 échantillons pour Bagging et 10, 20 et 50 pour
Boosting avec le meilleur arbre que nous avons obtenu ci haut.
De plus, nous testerons des «forêts aléatoires» et un «gradient boosting». Nous
avons fait le gradient boosting avec N=1000, shrinkage=0.05, train=80% et la
profondeur maximale=20. Vous pouvez voir quelques méthodes d’ensembles
utilisées en Annexe 5.
En comparant ces modèles avec le nœud «model comparaison». Nous avons
obtenu le meilleur résultat avec le modèle «gradient boosting». La table ci-
dessous montre le meilleur résultat obtenu :
Nom de
modèle
Train:
Taux de
mauvaise
classification
Validation:
taux de
mauvaise
classification
Spécificité Sensitivité Taux de
bonne
classification
Valid:
ROC
index
Train:
ROC
index
Gradient
Boosting
32.80% 36.63% 62.40% 64.35% 63.36% .736 .682
3-Réseaux de neurones
Les réseaux de neurones sont des outils statistiques permettant de détecter
des relations non linéaires complexes dans des données. L’algorithme le plus
largement répandu dans la pratique est la rétro-propagation du gradient qui
consiste à suivre la ligne de plus grande pente de la surface d’erreur, qui doit
logiquement conduire à un minimum. En effet, le principe de l'algorithme est
de remonter couche par couche, des neurones de sortie vers les neurones
d'entrées et de modifier les poids synaptiques en amont de chaque couche, de
manière à diminuer l'erreur commise en sortie.
En raison d’améliorer la rapidité de l’apprentissage du réseau et diminuer les
variables explicatives qui ne discriminent pas beaucoup la variable cible, et
aussi afin d’éviter le sur-apprentissage, nous ajoutons le nœud de régression
avec une régression logistique pas à pas de type stepwise avant le nœud réseau
de neurone et nous les exécutons avec 2,3, 5 et 6 et 7 neurones.
De plus, nous ajoutons le nœud de sélection de variables mais aussi un nœud
de l’arbre avec les paramètres du meilleur arbre que nous avons obtenu ci-haut
avant le nœud réseau de neurone. Nous avons utilisé un nœud de neurones
automatiques pour avoir une idée du nombre de neurones optimal aussi (n=2)
(Annexe 7).
La table suivante montre le meilleur résultat que nous avons obtenu avec le
nœud comparaison de modèle.
Nom de
modèle
Train:
Taux de
mauvaise
classification
Validation:
taux de
mauvaise
classification
Spécificité Sensitivité Taux de
bonne
classification
Valid:
ROC
index
Train:
ROC
index
Réseau de
neurone
avec n=6
38.04% 38.72% 62.47% 60.05% 61.26% .672 .655
Évaluation:
Maintenant on crée un diagramme dans SAS EM pour comparer les trois
meilleurs modèles que nous avons obtenus dans la partie précédente (Annexe
9). Donc, nous somme arrivé au modèle «Gradient boosting» avec les
paramètres N=1000, shrinkage=.05, train=80% et la profondeur maximale 20.
Déploiement :
Finalement nous allons prédire les 50 000 clients sur le fichier churn_test pour
lesquels ils resteront avec la compagnie ou ils la quitteront en utilisant le
meilleur modèle que nous avons obtenu dans la partie précédente. Nous
remarquons d’après les prédictions contenues dans le tableau suivant que ceux
qui veulent rester avec la compagnie sont plus nombreux que ceux qui veulent
la quitter.
Prédiction pour CHURN
Classification EM fréquence Pourcentage
0 23213 46.426%
1 26787 53.574%
Annexes
Annexe 1 : Table de préparation des données
Variables à supprimer Variables à transformer
KID3_5 INFOBASE
KID16_17 MAILFLAG
proptype MTRCYCLE
KID11_15 MARITAL
RMMOU CSA
wrkwoman CREDITCD
RETDAYS INCOME
KID0_2 PRIZM_SOCIAL_ONE
crtcount FORGNTVL
educ1 RV
occu1 CAR_BUY
children DWLLSIZE
cartype DWLLTYPE
Mailresp HHSTATIN
KID6_10 MAILORDR
RMREV SOLFLAG
div_type REF_QTY
pcowner OWNRENT
RMCALLS NUMBCARS
AREA
TRUCK
ETHNIC
TOT_RET
Annexe 2: Table de les valeurs de 24 arbres pour choisi les meilleur 8 arbre
Critère
de sélec
tion pour
variable
Seuil de signifi
cativité
Profon
deur
maxi
male
Taille
des
feuilles
Train:
Taux
de
mauv
aise
classifi
c
ation
Valid
ation:
taux de
mauv
aise
classific
ation
Spécifi
cité
Sensitivité % obs bien
classées
Gini .2 10 25 36.28% 38.73% 60.11% 62.43% 61.25%
Entropie .2 10 25 36.16% 38.86% 61.48% 60.80% 61.13%
chi2 .2 10 25 37.91% 39.16% 65.21% 56.37% 60.82%
Gini .2 20 25 33.64% 37.81% 60.96% 63.41% 62.17%
Entropie .2 20 25 33.57% 37.88% 61.18% 63.04% 62.09%
chi2 .2 20 25 37.91% 39.16% 65.21% 56.37% 60.82%
Gini .2 10 50 37.30% 39.01% 57.37% 64.65% 60.97%
Entropie .2 10 50 37.04% 39.01% 61.81% 60.20% 60.97%
chi2 .2 10 50 38.04% 39.22% 60.72% 60.83% 60.76%
Gini .2 20 50 35.11% 38.27% 59.63% 63.84% 61.71%
Entropie .2 20 50 35.42% 38.82% 59.82% 63.75% 61.77%
chi2 .2 20 50 38.04% 39.22% 62.93% 58.58% 60.76%
Gini .5 10 25 36.28% 38.73% 60.11% 62.43% 61.25%
Entropie .5 10 25 36.16% 38.85% 61.48% 60.80% 61.13%
chi2 .5 10 25 37.49% 39.03% 63.00% 58.88% 60.95%
Gini .5 20 25 33.64% 37.81% 60.96% 63.41% 62.17%
Entropie .5 20 25 33.57% 37.88% 61.18% 63.04% 62.09%
chi2 .5 20 25 37.49% 39.38% 63.00% 58.88% 60.95%
Gini .5 10 50 37.30% 39.01% 57.37% 64.65% 60.97%
Entropie .5 10 50 37.04% 39.01% 59.20% 62.78% 60.97%
chi2 .5 10 50 37.78% 39.16% 62.15% 59.48% 60.82%
Gini .5 20 50 35.11% 38.27% 59.63% 63.84% 61.71%
Entropie .5 20 50 35.42% 38.22% 39.82% 63.75% 61.77%
chi2 .5 20 50 37.78% 39.16% 62.15% 59.48% 60.82%
Annexe 3 : Modèle d’arbre de décision
Annexe 4 : Sensitivité et Spécificité pour le modèle « arbre de décision 2»
Annexe 5 : Les méthodes d’ensembles
Annexe 6 : Sensitivité et Spécificité pour le modèle «gradient boosting»
Annexe 7 : Les réseaux de neurones
Annexe 8 : Sensitivité et Spécificité pour le modèle « réseau de neurone»
Annexe 9 : Comparer les trois meilleures modèles

Contenu connexe

En vedette

Me voy a la cama
Me voy a la camaMe voy a la cama
Me voy a la camaiesluna
 
Gotas de agua, disfraz de nube
Gotas de agua, disfraz de nubeGotas de agua, disfraz de nube
Gotas de agua, disfraz de nubelolabielsa
 
C A L E N D A R I O D E P R U E B A S I I S E M E S T R E
C A L E N D A R I O  D E   P R U E B A S  I I  S E M E S T R EC A L E N D A R I O  D E   P R U E B A S  I I  S E M E S T R E
C A L E N D A R I O D E P R U E B A S I I S E M E S T R Edaniebluras
 
Flash cards aleman 2
Flash cards aleman 2Flash cards aleman 2
Flash cards aleman 2bihazpo
 
Calendario Bacardi 2007
Calendario Bacardi 2007Calendario Bacardi 2007
Calendario Bacardi 2007V Sanchez
 
BPS Présentation 2014
BPS Présentation 2014BPS Présentation 2014
BPS Présentation 2014BPS
 
La Rentrée de l'Escalade®, le nouvel événement lyonnais qui va vous faire gri...
La Rentrée de l'Escalade®, le nouvel événement lyonnais qui va vous faire gri...La Rentrée de l'Escalade®, le nouvel événement lyonnais qui va vous faire gri...
La Rentrée de l'Escalade®, le nouvel événement lyonnais qui va vous faire gri...AZIUM
 
Internet y La Divulgación Científica
Internet y  La Divulgación CientíficaInternet y  La Divulgación Científica
Internet y La Divulgación CientíficaRicardo Gómez Vecchio
 
Lecture de l'espace colonial à travers les ressources non normatives
Lecture de l'espace colonial à travers les ressources non normativesLecture de l'espace colonial à travers les ressources non normatives
Lecture de l'espace colonial à travers les ressources non normativesNabil RC
 
Sujet 1
Sujet 1Sujet 1
Sujet 1fluret
 
Conférence de midi du Jeune Barreau de Liège - La responsabilité civile (hors...
Conférence de midi du Jeune Barreau de Liège - La responsabilité civile (hors...Conférence de midi du Jeune Barreau de Liège - La responsabilité civile (hors...
Conférence de midi du Jeune Barreau de Liège - La responsabilité civile (hors...cljb
 
Mapas Colaborativos En Google Maps
Mapas Colaborativos En Google MapsMapas Colaborativos En Google Maps
Mapas Colaborativos En Google Mapssmestref
 

En vedette (20)

Me voy a la cama
Me voy a la camaMe voy a la cama
Me voy a la cama
 
Gotas de agua, disfraz de nube
Gotas de agua, disfraz de nubeGotas de agua, disfraz de nube
Gotas de agua, disfraz de nube
 
C A L E N D A R I O D E P R U E B A S I I S E M E S T R E
C A L E N D A R I O  D E   P R U E B A S  I I  S E M E S T R EC A L E N D A R I O  D E   P R U E B A S  I I  S E M E S T R E
C A L E N D A R I O D E P R U E B A S I I S E M E S T R E
 
Dinamització de comunitats en línia (2a part)
Dinamització de comunitats en línia (2a part)Dinamització de comunitats en línia (2a part)
Dinamització de comunitats en línia (2a part)
 
pw explicatif
pw explicatifpw explicatif
pw explicatif
 
GB2
GB2GB2
GB2
 
Movistarinnova
MovistarinnovaMovistarinnova
Movistarinnova
 
Flash cards aleman 2
Flash cards aleman 2Flash cards aleman 2
Flash cards aleman 2
 
Calendario Bacardi 2007
Calendario Bacardi 2007Calendario Bacardi 2007
Calendario Bacardi 2007
 
BPS Présentation 2014
BPS Présentation 2014BPS Présentation 2014
BPS Présentation 2014
 
Presentació "Guía para la correcta implantación de comunidades de práctica en...
Presentació "Guía para la correcta implantación de comunidades de práctica en...Presentació "Guía para la correcta implantación de comunidades de práctica en...
Presentació "Guía para la correcta implantación de comunidades de práctica en...
 
Presentació del producte de treball col·laboratiu de la CoP. Decàleg "Jo no e...
Presentació del producte de treball col·laboratiu de la CoP. Decàleg "Jo no e...Presentació del producte de treball col·laboratiu de la CoP. Decàleg "Jo no e...
Presentació del producte de treball col·laboratiu de la CoP. Decàleg "Jo no e...
 
La Rentrée de l'Escalade®, le nouvel événement lyonnais qui va vous faire gri...
La Rentrée de l'Escalade®, le nouvel événement lyonnais qui va vous faire gri...La Rentrée de l'Escalade®, le nouvel événement lyonnais qui va vous faire gri...
La Rentrée de l'Escalade®, le nouvel événement lyonnais qui va vous faire gri...
 
Internet y La Divulgación Científica
Internet y  La Divulgación CientíficaInternet y  La Divulgación Científica
Internet y La Divulgación Científica
 
Lecture de l'espace colonial à travers les ressources non normatives
Lecture de l'espace colonial à travers les ressources non normativesLecture de l'espace colonial à travers les ressources non normatives
Lecture de l'espace colonial à travers les ressources non normatives
 
Sujet 1
Sujet 1Sujet 1
Sujet 1
 
Le monde 20150702
Le monde 20150702Le monde 20150702
Le monde 20150702
 
Nagellack marken
Nagellack markenNagellack marken
Nagellack marken
 
Conférence de midi du Jeune Barreau de Liège - La responsabilité civile (hors...
Conférence de midi du Jeune Barreau de Liège - La responsabilité civile (hors...Conférence de midi du Jeune Barreau de Liège - La responsabilité civile (hors...
Conférence de midi du Jeune Barreau de Liège - La responsabilité civile (hors...
 
Mapas Colaborativos En Google Maps
Mapas Colaborativos En Google MapsMapas Colaborativos En Google Maps
Mapas Colaborativos En Google Maps
 

Similaire à Analyzing a churn data set

Rapport-du-projet CNN.docx
Rapport-du-projet CNN.docxRapport-du-projet CNN.docx
Rapport-du-projet CNN.docxkhalil Ismail
 
Présentation sur le Data Mining
Présentation sur le Data MiningPrésentation sur le Data Mining
Présentation sur le Data MiningTakfarinas KENOUCHE
 
FLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretFLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretjfeudeline
 
Analyse en composantes principales, ACP, sous SPSS (Principal Component Analy...
Analyse en composantes principales, ACP, sous SPSS (Principal Component Analy...Analyse en composantes principales, ACP, sous SPSS (Principal Component Analy...
Analyse en composantes principales, ACP, sous SPSS (Principal Component Analy...Adad Med Chérif
 
Etude comparative des classifieurs Naïve Bayes et SVM
Etude comparative des classifieurs Naïve Bayes et SVMEtude comparative des classifieurs Naïve Bayes et SVM
Etude comparative des classifieurs Naïve Bayes et SVMSamirAwad14
 
Apprentissage automatique avec RapidMiner
Apprentissage automatique avec RapidMinerApprentissage automatique avec RapidMiner
Apprentissage automatique avec RapidMinerMajdi Hannachi
 
Comment le Data et Deep Learning révolutionnent la science
Comment le Data et Deep Learning révolutionnent la scienceComment le Data et Deep Learning révolutionnent la science
Comment le Data et Deep Learning révolutionnent la sciencehabib200
 
Rapport thèse ilef ben slima
Rapport thèse ilef ben slimaRapport thèse ilef ben slima
Rapport thèse ilef ben slimaIlef Ben Slima
 
TP_Réseaux_de_neurones_Safae_ElOmari.pdf
TP_Réseaux_de_neurones_Safae_ElOmari.pdfTP_Réseaux_de_neurones_Safae_ElOmari.pdf
TP_Réseaux_de_neurones_Safae_ElOmari.pdfSafaeElOmari
 
Ben harrath arijtp3 les règles d'association
Ben harrath arijtp3 les règles d'association Ben harrath arijtp3 les règles d'association
Ben harrath arijtp3 les règles d'association ARIJ BenHarrath
 
Stadification de l'infection au VHC
Stadification de l'infection au VHCStadification de l'infection au VHC
Stadification de l'infection au VHCMariem Khalfaoui
 
Data mining for the evaluation of AODV and DSDV protocols in AD-HOC topologies
Data mining for the evaluation of AODV and DSDV protocols in AD-HOC topologiesData mining for the evaluation of AODV and DSDV protocols in AD-HOC topologies
Data mining for the evaluation of AODV and DSDV protocols in AD-HOC topologiesEmna Trabelsi
 
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...Juba Ait idir
 
1_PDFsam_MQG804_NotesDeCours_A23_1.pdf
1_PDFsam_MQG804_NotesDeCours_A23_1.pdf1_PDFsam_MQG804_NotesDeCours_A23_1.pdf
1_PDFsam_MQG804_NotesDeCours_A23_1.pdfJeanPhilippeTurcotte5
 

Similaire à Analyzing a churn data set (20)

Rapport-du-projet CNN.docx
Rapport-du-projet CNN.docxRapport-du-projet CNN.docx
Rapport-du-projet CNN.docx
 
Présentation sur le Data Mining
Présentation sur le Data MiningPrésentation sur le Data Mining
Présentation sur le Data Mining
 
FLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caretFLTauR - Construction de modèles de prévision sous r avec le package caret
FLTauR - Construction de modèles de prévision sous r avec le package caret
 
Analyse en composantes principales, ACP, sous SPSS (Principal Component Analy...
Analyse en composantes principales, ACP, sous SPSS (Principal Component Analy...Analyse en composantes principales, ACP, sous SPSS (Principal Component Analy...
Analyse en composantes principales, ACP, sous SPSS (Principal Component Analy...
 
Mise en oeuvre des framework de machines et deep learning v1
Mise en oeuvre des framework de machines et deep learning v1 Mise en oeuvre des framework de machines et deep learning v1
Mise en oeuvre des framework de machines et deep learning v1
 
arbres de decision.ppt
arbres de decision.pptarbres de decision.ppt
arbres de decision.ppt
 
Etude comparative des classifieurs Naïve Bayes et SVM
Etude comparative des classifieurs Naïve Bayes et SVMEtude comparative des classifieurs Naïve Bayes et SVM
Etude comparative des classifieurs Naïve Bayes et SVM
 
Data Mining
Data MiningData Mining
Data Mining
 
Le Machine Learning... tous aux fourneaux !
Le Machine Learning... tous aux fourneaux !Le Machine Learning... tous aux fourneaux !
Le Machine Learning... tous aux fourneaux !
 
P15 Eda05 V D
P15 Eda05 V DP15 Eda05 V D
P15 Eda05 V D
 
Apprentissage automatique avec RapidMiner
Apprentissage automatique avec RapidMinerApprentissage automatique avec RapidMiner
Apprentissage automatique avec RapidMiner
 
Comment le Data et Deep Learning révolutionnent la science
Comment le Data et Deep Learning révolutionnent la scienceComment le Data et Deep Learning révolutionnent la science
Comment le Data et Deep Learning révolutionnent la science
 
Rapport thèse ilef ben slima
Rapport thèse ilef ben slimaRapport thèse ilef ben slima
Rapport thèse ilef ben slima
 
TP_Réseaux_de_neurones_Safae_ElOmari.pdf
TP_Réseaux_de_neurones_Safae_ElOmari.pdfTP_Réseaux_de_neurones_Safae_ElOmari.pdf
TP_Réseaux_de_neurones_Safae_ElOmari.pdf
 
Ben harrath arijtp3 les règles d'association
Ben harrath arijtp3 les règles d'association Ben harrath arijtp3 les règles d'association
Ben harrath arijtp3 les règles d'association
 
Stadification de l'infection au VHC
Stadification de l'infection au VHCStadification de l'infection au VHC
Stadification de l'infection au VHC
 
Data mining for the evaluation of AODV and DSDV protocols in AD-HOC topologies
Data mining for the evaluation of AODV and DSDV protocols in AD-HOC topologiesData mining for the evaluation of AODV and DSDV protocols in AD-HOC topologies
Data mining for the evaluation of AODV and DSDV protocols in AD-HOC topologies
 
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...
Les réseaux de neurones convolutifs pour la classification des tumeurs cérébr...
 
TP2 Data Science:
TP2 Data Science: TP2 Data Science:
TP2 Data Science:
 
1_PDFsam_MQG804_NotesDeCours_A23_1.pdf
1_PDFsam_MQG804_NotesDeCours_A23_1.pdf1_PDFsam_MQG804_NotesDeCours_A23_1.pdf
1_PDFsam_MQG804_NotesDeCours_A23_1.pdf
 

Analyzing a churn data set

  • 1. Techniques d’exploitation de données (Data Mining) Projet 2 Professor : François Bellavance Abdolrasoul Baharifard (Étudiant de l’université Laval) Hiver 2015
  • 2. Table of Contents Motivation:...............................................................................................................................................................3 Description de la base de données:................................................................................................................3 Objectifs:...................................................................................................................................................................3 Préparation des données :.................................................................................................................................4 Modélisation :.........................................................................................................................................................4 1-Arbre de décision.........................................................................................................................................4 2-Méthodes d’ensembles...............................................................................................................................5 3-Réseaux de neurones..................................................................................................................................6 Évaluation:...............................................................................................................................................................7 Déploiement :..........................................................................................................................................................8 Annexes.....................................................................................................................................................................9 Annexe 1 : Table de préparation des données......................................................................................9 Annexe 2: Table de les valeurs de 24 arbres pour choisi les meilleur 8 arbre...................... 10 Annexe 3 : modèle d’arbre de décision................................................................................................. 11 Annexe 4 : Sensitivité et Spécificité pour le modèle « arbre de décision 2» ......................... 11 Annexe 5 : Les méthodes d’ensembles.................................................................................................. 12 Annexe 6 : Sensitivité et Spécificité pour le modèle « Gradient Boosting » .......................... 12 Annexe 7 : Les réseaux de neurones...................................................................................................... 13 Annexe 8 : Sensitivité et Spécificité pour le modèle « réseau de neurone» .......................... 13 Annexe 9 : Comparer les trois meilleures modèles.......................................................................... 14
  • 3. Motivation: Le but de ce projet est de prédire sous la base des modèles d’apprentissage supervisés si un client restera fidèle avec une grande compagnie téléphonique mobile en Amérique du nord ou il la quittera. Description de la base de données: Dans ce travail, on se servira des données d’une grande compagnie téléphonique mobile en Amérique du nord contenant 50 000 observations sur 173 variables. Il y a trois types de variables explicatives dans la base de données: variables de comportement comme le nombre de minutes utilisées, le type d’équipement; interaction avec la compagnie comme les appels au service à la clientèle; et des données démographiques. Objectifs: Nous allons donc utiliser les outils statistiques comme les arbres de classification, les méthodes d’ensemble et les réseaux de neurones sur le fichier de données «churn» et parmi elles, nous choisirons celle qui présente le meilleur modèle selon le taux de bonne classification, la sensitivité et la spécificité. La variable cible est appelée « churn » dans ce fichier de données. De plus, nous diviserons notre base de données en deux parties, un échantillon d’apprentissage (60%) et un échantillon de validation (40%) sur lequel nous testerons nos modèles. Ensuite, nous allons évaluer la performance de notre meilleur modèle avec le fichier « churn_test » qui contient également 50 000 observations.
  • 4. Préparation des données : Premièrement nous allons nettoyer le jeu de données « churn » et nous allons effectuer la même tâche pour le jeu de données « churn_test » également. En effet, certaines variables possèdent des valeurs manquantes par manque d'informations ou pour une raison inconnue et d’autres peuvent être corrigéesen analysant un peu plus la signification de la valeur manquante. Nous allons donc faire la distinction entre ces types de valeurs manquantes et nous allons supprimer toutes les variables ayant plus de 65% de valeurs manquantes et transformer toutes les variables pour lesquelles la valeur est tout simplement non disponible dans une nouvelle catégorie. Nous avons bien séparé ces types de variables dans l’annexe 1. Modélisation : 1-Arbre de décision Tout d’abord on ajuste le modèle d’arbres de décision sur les données nettoyées dans la partie précédente. Les critères que nous avons considérés sont les suivants : Critères de sélection possible pour la variable cible: • P-value associée au test du khi-deux • Entropie • Gini Seuil de significativité: • 0.2 • 0.5 Profondeur maximale: • 10 • 20 Taille des feuilles: • 25 • 50
  • 5. Nous commencerons la procédure en fixant le seuil de la significativité à 0.2, la profondeur maximale à 10 et la taille des feuilles à 25. On fait compiler le modèle trois fois en utilisant les trois critères de sélection possibles cités plus haut pour la variable cible. A chaque fois on note le taux de mauvaise classification du jeu d’entrainement, le taux de mauvaise classification du jeu de la validation, la spécificité, la sensitivité et le taux de bonne classification. En comparant les paramètres des trois critères de sélection possibles pour la variable cible, nous allons choisir le meilleur arbre à chaque exécution et nous le mettons dans l’environnement SAS EM. A l’étape suivante, nous changeons la profondeur maximale à 20 et on note également les valeurs des paramètres mentionnés dans l’étape précédente (i.e. pour une profondeur de 10) pour les trois critères de sélection possibles pour la variable cible et nous choisirons le meilleur modèle. Nous allons continuer cette procédure lorsque nous aurons testé tous les cas possibles des paramètres. Les valeurs pour tous les cas possibles sont notées en Annexes 2. Nous obtenons 8 meilleurs arbres et nous allons comparer leurs valeurs avec le nœud «model comparaison» fourni avec SAS EM (Annexe 3). Le tableau suivant présente le meilleur résultat avec les différents paramètres ajustés : Critère de sélection pour variable Seuil de signific ativté Profon deur maxi male Taille des feuilles Train: Taux de mauv aise classificatio n Valid ation: taux de mauv aise classificatio n Spécific ité Sensitivi té Taux de bonne classific ation Valid: ROC index Train: ROC index Gini .2 20 25 33.64% 37.81% 60.96% 63.41% 62.17% .72 .639 2-Méthodes d’ensembles Le « Bagging » consiste en la création d’un ensemble de modèles utilisant le même algorithme sur différents sous ensemble de données génèrés avec
  • 6. échantillonnage aléatoire simple de taille n avec remise à partir de l’échantillon « bootsrap ». De même, « Boosting » procède de façon séquentielle en sur-échantillonnant les observations mal classifiées par les modèles précédents. Nous allons tester des générations de 25, 50 et 100 échantillons pour Bagging et 10, 20 et 50 pour Boosting avec le meilleur arbre que nous avons obtenu ci haut. De plus, nous testerons des «forêts aléatoires» et un «gradient boosting». Nous avons fait le gradient boosting avec N=1000, shrinkage=0.05, train=80% et la profondeur maximale=20. Vous pouvez voir quelques méthodes d’ensembles utilisées en Annexe 5. En comparant ces modèles avec le nœud «model comparaison». Nous avons obtenu le meilleur résultat avec le modèle «gradient boosting». La table ci- dessous montre le meilleur résultat obtenu : Nom de modèle Train: Taux de mauvaise classification Validation: taux de mauvaise classification Spécificité Sensitivité Taux de bonne classification Valid: ROC index Train: ROC index Gradient Boosting 32.80% 36.63% 62.40% 64.35% 63.36% .736 .682 3-Réseaux de neurones Les réseaux de neurones sont des outils statistiques permettant de détecter des relations non linéaires complexes dans des données. L’algorithme le plus largement répandu dans la pratique est la rétro-propagation du gradient qui consiste à suivre la ligne de plus grande pente de la surface d’erreur, qui doit logiquement conduire à un minimum. En effet, le principe de l'algorithme est de remonter couche par couche, des neurones de sortie vers les neurones d'entrées et de modifier les poids synaptiques en amont de chaque couche, de manière à diminuer l'erreur commise en sortie.
  • 7. En raison d’améliorer la rapidité de l’apprentissage du réseau et diminuer les variables explicatives qui ne discriminent pas beaucoup la variable cible, et aussi afin d’éviter le sur-apprentissage, nous ajoutons le nœud de régression avec une régression logistique pas à pas de type stepwise avant le nœud réseau de neurone et nous les exécutons avec 2,3, 5 et 6 et 7 neurones. De plus, nous ajoutons le nœud de sélection de variables mais aussi un nœud de l’arbre avec les paramètres du meilleur arbre que nous avons obtenu ci-haut avant le nœud réseau de neurone. Nous avons utilisé un nœud de neurones automatiques pour avoir une idée du nombre de neurones optimal aussi (n=2) (Annexe 7). La table suivante montre le meilleur résultat que nous avons obtenu avec le nœud comparaison de modèle. Nom de modèle Train: Taux de mauvaise classification Validation: taux de mauvaise classification Spécificité Sensitivité Taux de bonne classification Valid: ROC index Train: ROC index Réseau de neurone avec n=6 38.04% 38.72% 62.47% 60.05% 61.26% .672 .655 Évaluation: Maintenant on crée un diagramme dans SAS EM pour comparer les trois meilleurs modèles que nous avons obtenus dans la partie précédente (Annexe 9). Donc, nous somme arrivé au modèle «Gradient boosting» avec les paramètres N=1000, shrinkage=.05, train=80% et la profondeur maximale 20.
  • 8. Déploiement : Finalement nous allons prédire les 50 000 clients sur le fichier churn_test pour lesquels ils resteront avec la compagnie ou ils la quitteront en utilisant le meilleur modèle que nous avons obtenu dans la partie précédente. Nous remarquons d’après les prédictions contenues dans le tableau suivant que ceux qui veulent rester avec la compagnie sont plus nombreux que ceux qui veulent la quitter. Prédiction pour CHURN Classification EM fréquence Pourcentage 0 23213 46.426% 1 26787 53.574%
  • 9. Annexes Annexe 1 : Table de préparation des données Variables à supprimer Variables à transformer KID3_5 INFOBASE KID16_17 MAILFLAG proptype MTRCYCLE KID11_15 MARITAL RMMOU CSA wrkwoman CREDITCD RETDAYS INCOME KID0_2 PRIZM_SOCIAL_ONE crtcount FORGNTVL educ1 RV occu1 CAR_BUY children DWLLSIZE cartype DWLLTYPE Mailresp HHSTATIN KID6_10 MAILORDR RMREV SOLFLAG div_type REF_QTY pcowner OWNRENT RMCALLS NUMBCARS AREA TRUCK ETHNIC TOT_RET
  • 10. Annexe 2: Table de les valeurs de 24 arbres pour choisi les meilleur 8 arbre Critère de sélec tion pour variable Seuil de signifi cativité Profon deur maxi male Taille des feuilles Train: Taux de mauv aise classifi c ation Valid ation: taux de mauv aise classific ation Spécifi cité Sensitivité % obs bien classées Gini .2 10 25 36.28% 38.73% 60.11% 62.43% 61.25% Entropie .2 10 25 36.16% 38.86% 61.48% 60.80% 61.13% chi2 .2 10 25 37.91% 39.16% 65.21% 56.37% 60.82% Gini .2 20 25 33.64% 37.81% 60.96% 63.41% 62.17% Entropie .2 20 25 33.57% 37.88% 61.18% 63.04% 62.09% chi2 .2 20 25 37.91% 39.16% 65.21% 56.37% 60.82% Gini .2 10 50 37.30% 39.01% 57.37% 64.65% 60.97% Entropie .2 10 50 37.04% 39.01% 61.81% 60.20% 60.97% chi2 .2 10 50 38.04% 39.22% 60.72% 60.83% 60.76% Gini .2 20 50 35.11% 38.27% 59.63% 63.84% 61.71% Entropie .2 20 50 35.42% 38.82% 59.82% 63.75% 61.77% chi2 .2 20 50 38.04% 39.22% 62.93% 58.58% 60.76% Gini .5 10 25 36.28% 38.73% 60.11% 62.43% 61.25% Entropie .5 10 25 36.16% 38.85% 61.48% 60.80% 61.13% chi2 .5 10 25 37.49% 39.03% 63.00% 58.88% 60.95% Gini .5 20 25 33.64% 37.81% 60.96% 63.41% 62.17% Entropie .5 20 25 33.57% 37.88% 61.18% 63.04% 62.09% chi2 .5 20 25 37.49% 39.38% 63.00% 58.88% 60.95% Gini .5 10 50 37.30% 39.01% 57.37% 64.65% 60.97% Entropie .5 10 50 37.04% 39.01% 59.20% 62.78% 60.97% chi2 .5 10 50 37.78% 39.16% 62.15% 59.48% 60.82% Gini .5 20 50 35.11% 38.27% 59.63% 63.84% 61.71% Entropie .5 20 50 35.42% 38.22% 39.82% 63.75% 61.77% chi2 .5 20 50 37.78% 39.16% 62.15% 59.48% 60.82%
  • 11. Annexe 3 : Modèle d’arbre de décision Annexe 4 : Sensitivité et Spécificité pour le modèle « arbre de décision 2»
  • 12. Annexe 5 : Les méthodes d’ensembles Annexe 6 : Sensitivité et Spécificité pour le modèle «gradient boosting»
  • 13. Annexe 7 : Les réseaux de neurones Annexe 8 : Sensitivité et Spécificité pour le modèle « réseau de neurone»
  • 14. Annexe 9 : Comparer les trois meilleures modèles