SlideShare a Scribd company logo
1 of 25
Régression Logistique
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 1
Objectifs
 xxx.

6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 2
Sommaire
•
• Bibliographie
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 3
Régression logistique
• L'objectif est de prédire et/ou expliquer une variable catégorielle Y à partir d'une collection de
descripteurs ou variables explicatives X = (X1, X2, … ,Xp).
• Soit Y une variable catégorielle à deux modalités: Y = {y1 = 0, y2 = 1}
• On souhaite prédire la probabilité d'un individu ou observation d’appartenir à la classe yk
sachant les valeurs prises par les p descripteurs.
• Considérons p = 1 par exemple, peut-on modéliser avec une régression linéaire ?
• Non, pour quoi ?
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 4
Régression logistique
• Afin que p(X) soit comprise entre 0 et 1, on utilise la
fonction logistique
• L’estimation des coefficients β sera effectuée avec la
méthode du maximum de vraisemblance
• Après manipulation on retrouve le rapport de
chances (odds):
• un individu avec un odds P(Y=1|X) / P(Y=0|X) = 2 a deux
fois plus de chance d‘appartenir à la classe Y=1 qu’à la
classe Y=0.
• Et finalement la fonction logit (log-odds), linéaire et
additive
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 5
appelée également score et
notée ො𝜋(𝜔)
Régression logistique
• Soit les données « Credit ». On souhaite prédire
la probabilité de défaut de paiement (Y=1)
sachant les valeurs d’une variable explicative X1
ou « Balance »
• On suppose que l’on a construit le modèle avec
la fonction R glm(), d’où les résultats suivants
• Calculer la probabilité de défaut pour Balance=
1000 dollars: P(Y=1|X1=1000)
• Calculer la probabilité de défaut pour Balance=
2000 dollars: P(Y=1|X1=2000)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 6
Régression logistique
• Calculer la probabilité de défaut pour Balance=
2000 dollars: P(Y=1|X1=2000)
• Calculer le rapport de chances correspondant:
• 0.586 / (1 - 0.586) = 1.41
• 1.41 ~ 4/3 => « 3 contre 4 »
◦ 3 chances de ne pas faire défaut (3 chances de « perdre »)
◦ 4 chances de faire défaut (4 chances de « gagner »)
• Quelle valeur de Balance donne une probabilité
de défaut de paiement de 50% ?
• log(0.5 / (1 – 0.5)) = -10.6513 + 0.0055 X
• X = 1936.6 dollars
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 7
Régression logistique
• Interprétation de la fonction logit ou log-odds
• lorsque X varie d’une unité le log-odds varie de 𝛽1
• et pas p(X) !!
• On constate quand même que la relation entre
p(X) et X n’est pas une ligne droite
• La variation de p(X) due à la variation d’une
unité de X dépend de la valeur de X
• Cependant, quelque soit la valeur de X
• si 𝜷 𝟏> 0 alors une augmentation de la valeur de X
entraîne une augmentation de p(X)
• si 𝜷 𝟏< 0 alors une augmentation de la valeur de X
entraîne une diminution de p(X)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 8
Régression logistique
Cas des variables catégorielles
• On souhaite prédire la probabilité de défaut de
paiement (Y=1) sachant les valeurs d’une
variable explicative X1, ici « Student »
• On suppose que l’on a construit le modèle avec
la fonction R glm(), d’où les résultats suivants
• Calculer la probabilité de défaut pour un
étudiant: P(Y=1|X1=Yes)
• Calculer la probabilité de défaut pour non-
étudiant: P(Y=1|X1=No)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 9
après codage en student[Yes] = {0, 1}
Régression logistique
• Données HEART: 270 obs x 13 colonnes
• Train (70%) : 189 observations dont 80 réellement positifs (42.3%)
• Test (30%) : 91 observations
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 10
risque de maladie
le modèle NULL c’est celui qui retournera toujours
la moyenne des positifs comme la meilleure
estimation de la probabilité d’être positif.
Régression logistique
fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 11
Lecture des informations analogue à celle de la
régression linéaire.
Remarquez que l’on effectue le calcul d’une
statistique Z au lieu d’une statistique t ou Student.
Comme pour la régression linéaire, les prédictions
peuvent être bonnes en présence de variables
corrélées mais ces corrélations peuvent avoir un
effet négatif lors de l’interprétation et les conseils à
donner pour la prise de décision.
Régression logistique
fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 12
𝜋 = 𝑃 𝑌 = 𝑇𝑅𝑈𝐸 𝑋)
1 - 𝜋 = 𝑃 𝑌 = 𝐹𝐴𝐿𝑆𝐸 𝑋)
pour une observation 𝜔 la probabilité P[Y(𝜔)|X(𝜔)]
suit une loi binomiale 𝓑(𝟏, 𝝅)
Comment sont calculés les coefficients ? (1/4)
Régression logistique
fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 13
Comment sont calculés les coefficients ? (2/4)
La vraisemblance (L ou likelihood) d’un échantillon
ou d’un ensemble d’observations sera alors égale au
produit des probabilités P[Y(𝜔)|X(𝜔)]
on simplifie l’écriture
Régression logistique
fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 14
Comment sont calculés les coefficients ? (3/4)
On préfère utiliser la log-vraisemblance (LL ou log-
likelihood)
fonction négative, elle varie entre −∞ et 0 !!
Ce sont les coefficients qui maximisent LL
méthode de « maximum de vraisemblance »
Régression logistique
fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 15
Comment sont calculés les coefficients ? (4/4)
On peut également dire que l’on cherche à estimer les
valeurs des coefficients qui minimisent la déviance D:
fonction positive,
appelée aussi residual deviance
• La fonction LL est convexe: il existe une solution unique,
mais pas de solution analytique; il faut passer par des
heuristiques.
• Les logiciels s’appuient sur l’algorithme de Newton-Ralph
ou de ses variantes (Fisher Scoring)
Régression logistique
fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 16
D0 = -2 LL0 est la null deviance, calculée sur le modèle
uniquement composé de la constante.
• peut être interprétée comme la variance des données
autour de la proportion d’individus positifs.
DM = -2 LLM est la residual deviance, calculée sur le
modèle obtenu.
• peut être interprétée comme la variance des données
autour du modèle.
La réduction de la déviance est-elle
significative ou due au hasard ?
on doit effectuer un test chi-2
Il faut connaître les degrés de liberté du modèle NULL et
du modèle obtenu
• df.null = nb obs. – 1 = 189 – 1 = 188
• df.model = nb obs. – nb de coefficients = 189 – 19 = 170
Régression logistique
fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 17
D0 = -2 LL0 est la null deviance, calculée sur le modèle
uniquement composé de la constante.
• peut être interprétée comme la variance des données
autour de la proportion d’individus positifs.
DM = -2 LLM est la residual deviance, calculée sur le
modèle obtenu.
• peut être interprétée comme la variance des données
autour du modèle.
Le Pseudo R2 de McFadden
Analogue au R2 de la régression linéaire, elle
mesure combien (%) de déviance est expliquée par
le modèle
si elle est basse alors on peut dire que le modèle n’est pas
très prédictif, on n’a pas encore identifié toutes les facteurs
qui prédisent le risque de maladie
Régression logistique
fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 18
AIC d’Akaike
Pour effectuer une sélection de modèle: trouver un sous-
ensemble de variables qui minimise un critère qui ne peut
pas être la déviance, car elle diminue si l’on rajoute des
variables. C’est un critère qui comptabilise la qualité de
l’ajustement, par un indicateur qui comptabilise la
complexité du modèle.
Fisher scoring iterations
La méthode Fisher scoring est une optimisation itérative
semblable à la méthode de Newton utilisée dans glm()
afin de trouver les coefficients du modèle. Il devrait
converger en moins de 9 itérations, sinon peut être qu’elle
n’a pas convergée et que le modèle n’est pas valide.
nb de variables
Régression logistique
df.train$pred <- predict(fit.glm, newdata = df.train, type="response")
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 19
retourne les probabilités
distribution des deux classes, on
cherche à ce qu’elles soient séparées
ggplot(data = df.train, aes(x = pred, color=class, lineType=class)) +
geom_density()
si les distributions sont bien séparées
alors on peut choisir UN SEUIL dans
« la vallée » entre les deux pics.
Régression logistique
• Matrice de confusion
• Précision et Rappel
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 20
VRAI
PREDICTION
a: vrais positifs b: faux négatifs
c: faux positifs d: vrais négatifs
à partir des données d’apprentissage, on cherche UN SEUIL DE PROBABILITE à partir
duquel on classera positif un individu, et ainsi, pour les données de test, on pourra
construire la matrice de confusion et en extraire la précision et le rappel du classifieur
compromis
Régression logistique
• Déterminer le seuil
• On calcule le score ො𝜋(𝜔) de chaque
observation de l’ensemble
d’apprentissage à l’aide du modèle
de prédiction.
• Pour toutes les valeurs de seuil
possibles (entre 0 et 1) on génère
une matrice de confusion et on en
extrait la précision et le rappel.
• On affiche respectivement la
précision et le rappel en fonction des
valeurs de seuil possibles.
• Ensuite, c’est le métier (la
responsabilité) qui décide du niveau
de précision et de rappel acceptable
afin de déterminer le seuil.
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 21
une précision juste au-dessus de
80%, donc un ratio de de vrais
positifs sur tous les réellement
positifs est-il acceptable ?
un rappel de 75%, donc un ratio
de vrais positifs sur tous les
positifs classés par le modèle
est-il acceptable ?
si oui, voici le seuil à prendre
pour valider le modèle
Régression logistique
• Courbe ROC / AUC
• La courbe ROC met en relation le taux de vrais positifs TVP et le taux de faux positifs TFP dans un
graphique nuage de points. Ci-dessous deux situations extrêmes:
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 22
• Le critère AUC (area under the curve)
caractérise numériquement la courbe ROC en
calculant la surface située sous la courbe.
• Elle exprime la probabilité de placer un
individu positif devant un négatif.
Rakotomalala R., Pratique de la Régression Logistique, Université Lumière de Lyon 2, 2014
Régression logistique
• Construction de la courbe ROC
1. On calcule le score ො𝜋(𝜔) de chaque observation 𝜔
à l’aide du modèle de prédiction
2. Trier les scores calculées précédemment dans
l’ordre décroissant
3. Chaque valeur du score peut être potentiellement
un seuil s. Pour toutes les observations dont le
score est supérieur à s (donc la partie haute du
tableau), on compte le nombre de positifs n+(s) et
le nombre de négatifs n-(s) .
4. On en déduit
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 23
vraie classe
prédiction
(triée)
n+(s)=6, n-(s)=14
RakotomalalaR.,PratiquedelaRégressionLogistique,UniversitéLumièredeLyon2,2014
Régression logistique
• Construction de la courbe ROC
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 24
vraie classe
prédiction
(triée)
RakotomalalaR.,PratiquedelaRégressionLogistique,UniversitéLumièredeLyon2,2014
Rakotomalala R., Pratique de la Régression Logistique, Université Lumière de Lyon 2, 2014
Bibliographie
[1] James and al., An introduction to Statistical Learning, ISBN 9781461471370, Springer, 2014
[2] Hastle T., Qian J., Glmnet vignette, Stanford, 18 février 2015
[3] Rakotomalala R., Pratique de la Régression Logistique, Université Lumière de Lyon 2, février
2014
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 25

More Related Content

What's hot

Regression lineaire simple
Regression lineaire simpleRegression lineaire simple
Regression lineaire simpleMehdi Rajawi
 
Cours acp mehdi_aman
Cours acp mehdi_amanCours acp mehdi_aman
Cours acp mehdi_amanMehdi Aman
 
Cours Statistique descriptive pr Falloul
Cours Statistique descriptive pr FalloulCours Statistique descriptive pr Falloul
Cours Statistique descriptive pr FalloulProfesseur Falloul
 
Cours de gestion de portefeuille et des risques Pr Falloul
Cours de gestion de portefeuille et des risques Pr Falloul Cours de gestion de portefeuille et des risques Pr Falloul
Cours de gestion de portefeuille et des risques Pr Falloul Professeur Falloul
 
Les arbres de décisions
Les arbres de décisionsLes arbres de décisions
Les arbres de décisionsMariem Chaaben
 
La Regression lineaire
La Regression lineaireLa Regression lineaire
La Regression lineaireFIKRIMAIL
 
La synthèse
La synthèseLa synthèse
La synthèseEdeh4x
 
Analyse de données avec SPSS (1).pdf
Analyse de données avec SPSS (1).pdfAnalyse de données avec SPSS (1).pdf
Analyse de données avec SPSS (1).pdfImadSa
 
Intelligence artificielle et soin.pptx
Intelligence artificielle et soin.pptxIntelligence artificielle et soin.pptx
Intelligence artificielle et soin.pptxArnaud Depil-Duval
 
La maitrise des risques du crédit bancaire (1)
La maitrise des risques du crédit bancaire (1)La maitrise des risques du crédit bancaire (1)
La maitrise des risques du crédit bancaire (1)Intissar Abada
 
Soutenance emna-chbinou-finale-finale
Soutenance emna-chbinou-finale-finaleSoutenance emna-chbinou-finale-finale
Soutenance emna-chbinou-finale-finaleHbyboun Hwita
 
Introduction to Machine learning
Introduction to Machine learningIntroduction to Machine learning
Introduction to Machine learningQuentin Ambard
 
5.1 K plus proches voisins
5.1 K plus proches voisins5.1 K plus proches voisins
5.1 K plus proches voisinsBoris Guarisma
 
Data mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes PrincipalesData mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes PrincipalesMohamed Heny SELMI
 
S3.echantillonnage estimation-s3
S3.echantillonnage estimation-s3S3.echantillonnage estimation-s3
S3.echantillonnage estimation-s3Jamal Yasser
 

What's hot (20)

Regression lineaire simple
Regression lineaire simpleRegression lineaire simple
Regression lineaire simple
 
Cours acp mehdi_aman
Cours acp mehdi_amanCours acp mehdi_aman
Cours acp mehdi_aman
 
Analyse de données avec spss,
Analyse de données avec spss,Analyse de données avec spss,
Analyse de données avec spss,
 
Cours Statistique descriptive pr Falloul
Cours Statistique descriptive pr FalloulCours Statistique descriptive pr Falloul
Cours Statistique descriptive pr Falloul
 
Cours de gestion de portefeuille et des risques Pr Falloul
Cours de gestion de portefeuille et des risques Pr Falloul Cours de gestion de portefeuille et des risques Pr Falloul
Cours de gestion de portefeuille et des risques Pr Falloul
 
Les arbres de décisions
Les arbres de décisionsLes arbres de décisions
Les arbres de décisions
 
La Regression lineaire
La Regression lineaireLa Regression lineaire
La Regression lineaire
 
Soutenance memoire simon (2017)
Soutenance memoire simon (2017)Soutenance memoire simon (2017)
Soutenance memoire simon (2017)
 
La synthèse
La synthèseLa synthèse
La synthèse
 
Cours econométrie des séries temporelles (1)
Cours econométrie des séries temporelles (1)Cours econométrie des séries temporelles (1)
Cours econométrie des séries temporelles (1)
 
Stat8 Anova
Stat8  AnovaStat8  Anova
Stat8 Anova
 
Regression logistque
Regression  logistqueRegression  logistque
Regression logistque
 
Analyse de données avec SPSS (1).pdf
Analyse de données avec SPSS (1).pdfAnalyse de données avec SPSS (1).pdf
Analyse de données avec SPSS (1).pdf
 
Intelligence artificielle et soin.pptx
Intelligence artificielle et soin.pptxIntelligence artificielle et soin.pptx
Intelligence artificielle et soin.pptx
 
La maitrise des risques du crédit bancaire (1)
La maitrise des risques du crédit bancaire (1)La maitrise des risques du crédit bancaire (1)
La maitrise des risques du crédit bancaire (1)
 
Soutenance emna-chbinou-finale-finale
Soutenance emna-chbinou-finale-finaleSoutenance emna-chbinou-finale-finale
Soutenance emna-chbinou-finale-finale
 
Introduction to Machine learning
Introduction to Machine learningIntroduction to Machine learning
Introduction to Machine learning
 
5.1 K plus proches voisins
5.1 K plus proches voisins5.1 K plus proches voisins
5.1 K plus proches voisins
 
Data mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes PrincipalesData mining - ACP Analyse en Composantes Principales
Data mining - ACP Analyse en Composantes Principales
 
S3.echantillonnage estimation-s3
S3.echantillonnage estimation-s3S3.echantillonnage estimation-s3
S3.echantillonnage estimation-s3
 

Viewers also liked

Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4jBoris Guarisma
 
03 Apprentissage statistique
03 Apprentissage statistique03 Apprentissage statistique
03 Apprentissage statistiqueBoris Guarisma
 
5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoiresBoris Guarisma
 
04 Introduction au logiciel R
04 Introduction au logiciel R04 Introduction au logiciel R
04 Introduction au logiciel RBoris Guarisma
 
Introduction à la Data Science l data business
Introduction à la Data Science l data businessIntroduction à la Data Science l data business
Introduction à la Data Science l data businessVincent de Stoecklin
 
05 Sélection de modèle linéaire
05 Sélection de modèle linéaire05 Sélection de modèle linéaire
05 Sélection de modèle linéaireBoris Guarisma
 
Microsoft Technologies for Data Science 201612
Microsoft Technologies for Data Science 201612Microsoft Technologies for Data Science 201612
Microsoft Technologies for Data Science 201612Mark Tabladillo
 
Music recommendations API with Neo4j
Music recommendations API with Neo4jMusic recommendations API with Neo4j
Music recommendations API with Neo4jBoris Guarisma
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4jBoris Guarisma
 
Artificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep LearningArtificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep LearningSujit Pal
 
Cours Génie Logiciel 2016
Cours Génie Logiciel 2016Cours Génie Logiciel 2016
Cours Génie Logiciel 2016Erradi Mohamed
 

Viewers also liked (20)

Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4j
 
03 Apprentissage statistique
03 Apprentissage statistique03 Apprentissage statistique
03 Apprentissage statistique
 
5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires5.4 Arbres et forêts aléatoires
5.4 Arbres et forêts aléatoires
 
04 Introduction au logiciel R
04 Introduction au logiciel R04 Introduction au logiciel R
04 Introduction au logiciel R
 
5.5 Clustering
5.5 Clustering5.5 Clustering
5.5 Clustering
 
Introduction à la Data Science l data business
Introduction à la Data Science l data businessIntroduction à la Data Science l data business
Introduction à la Data Science l data business
 
05 Sélection de modèle linéaire
05 Sélection de modèle linéaire05 Sélection de modèle linéaire
05 Sélection de modèle linéaire
 
Microsoft Technologies for Data Science 201612
Microsoft Technologies for Data Science 201612Microsoft Technologies for Data Science 201612
Microsoft Technologies for Data Science 201612
 
Music recommendations API with Neo4j
Music recommendations API with Neo4jMusic recommendations API with Neo4j
Music recommendations API with Neo4j
 
Base de données graphe et Neo4j
Base de données graphe et Neo4jBase de données graphe et Neo4j
Base de données graphe et Neo4j
 
log
loglog
log
 
Slides 2040-4
Slides 2040-4Slides 2040-4
Slides 2040-4
 
Slides act2040-a2013-2
Slides act2040-a2013-2Slides act2040-a2013-2
Slides act2040-a2013-2
 
Artificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep LearningArtificial Intelligence, Machine Learning and Deep Learning
Artificial Intelligence, Machine Learning and Deep Learning
 
Workflow Foundation - Cours 5
Workflow Foundation - Cours 5Workflow Foundation - Cours 5
Workflow Foundation - Cours 5
 
Présentation cloud journée azure
Présentation cloud   journée azurePrésentation cloud   journée azure
Présentation cloud journée azure
 
Cours Génie Logiciel 2016
Cours Génie Logiciel 2016Cours Génie Logiciel 2016
Cours Génie Logiciel 2016
 
Introduction aux technologies mobiles
Introduction aux technologies mobilesIntroduction aux technologies mobiles
Introduction aux technologies mobiles
 
Méthodes Agiles - Généralités
Méthodes Agiles - GénéralitésMéthodes Agiles - Généralités
Méthodes Agiles - Généralités
 
Le Manifeste Agile
Le Manifeste AgileLe Manifeste Agile
Le Manifeste Agile
 

Similar to 5.3 Régression logistique

fr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
fr_Tanagra_Naive_Bayes_Classifier_Explained.pdffr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
fr_Tanagra_Naive_Bayes_Classifier_Explained.pdfSidiAbdallah1
 
regression_multiple_pour_le_classement.pdf
regression_multiple_pour_le_classement.pdfregression_multiple_pour_le_classement.pdf
regression_multiple_pour_le_classement.pdfSidiAbdallah1
 
Cours gestion-actifs-r1-part-2b
Cours gestion-actifs-r1-part-2bCours gestion-actifs-r1-part-2b
Cours gestion-actifs-r1-part-2bArthur Charpentier
 
analyse_discriminante.pdf
analyse_discriminante.pdfanalyse_discriminante.pdf
analyse_discriminante.pdfSidiAbdallah1
 
Calage sur bornes minimales
Calage sur bornes minimalesCalage sur bornes minimales
Calage sur bornes minimalesAntoine Rebecq
 
logistic_regression_ml.pdf
logistic_regression_ml.pdflogistic_regression_ml.pdf
logistic_regression_ml.pdfSidiAbdallah1
 
Apprentissage_Supervise.pdf
Apprentissage_Supervise.pdfApprentissage_Supervise.pdf
Apprentissage_Supervise.pdfSidiAbdallah1
 
Data Mining (Partie 3).pdf
Data Mining (Partie 3).pdfData Mining (Partie 3).pdf
Data Mining (Partie 3).pdfOuailChoukhairi
 
Cours_sur_les_Regression-Logistique-23-24.pdf
Cours_sur_les_Regression-Logistique-23-24.pdfCours_sur_les_Regression-Logistique-23-24.pdf
Cours_sur_les_Regression-Logistique-23-24.pdfMouhamedFall30
 
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
 
resampling_evaluation.pdf
resampling_evaluation.pdfresampling_evaluation.pdf
resampling_evaluation.pdfSidiAbdallah1
 
Ch6 Introduction à la Science de Données.pdf
Ch6 Introduction à la Science de Données.pdfCh6 Introduction à la Science de Données.pdf
Ch6 Introduction à la Science de Données.pdfnesrinetaamallah
 

Similar to 5.3 Régression logistique (14)

fr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
fr_Tanagra_Naive_Bayes_Classifier_Explained.pdffr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
fr_Tanagra_Naive_Bayes_Classifier_Explained.pdf
 
regression_multiple_pour_le_classement.pdf
regression_multiple_pour_le_classement.pdfregression_multiple_pour_le_classement.pdf
regression_multiple_pour_le_classement.pdf
 
Cours gestion-actifs-r1-part-2b
Cours gestion-actifs-r1-part-2bCours gestion-actifs-r1-part-2b
Cours gestion-actifs-r1-part-2b
 
analyse_discriminante.pdf
analyse_discriminante.pdfanalyse_discriminante.pdf
analyse_discriminante.pdf
 
Calage sur bornes minimales
Calage sur bornes minimalesCalage sur bornes minimales
Calage sur bornes minimales
 
logistic_regression_ml.pdf
logistic_regression_ml.pdflogistic_regression_ml.pdf
logistic_regression_ml.pdf
 
Apprentissage_Supervise.pdf
Apprentissage_Supervise.pdfApprentissage_Supervise.pdf
Apprentissage_Supervise.pdf
 
Slides act6420-e2014-partie-2
Slides act6420-e2014-partie-2Slides act6420-e2014-partie-2
Slides act6420-e2014-partie-2
 
Data Mining (Partie 3).pdf
Data Mining (Partie 3).pdfData Mining (Partie 3).pdf
Data Mining (Partie 3).pdf
 
Cours_sur_les_Regression-Logistique-23-24.pdf
Cours_sur_les_Regression-Logistique-23-24.pdfCours_sur_les_Regression-Logistique-23-24.pdf
Cours_sur_les_Regression-Logistique-23-24.pdf
 
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
 
resampling_evaluation.pdf
resampling_evaluation.pdfresampling_evaluation.pdf
resampling_evaluation.pdf
 
Ch6 Introduction à la Science de Données.pdf
Ch6 Introduction à la Science de Données.pdfCh6 Introduction à la Science de Données.pdf
Ch6 Introduction à la Science de Données.pdf
 
Slides udm-080910
Slides udm-080910Slides udm-080910
Slides udm-080910
 

5.3 Régression logistique

  • 1. Régression Logistique 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 1
  • 2. Objectifs  xxx.  6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 2
  • 3. Sommaire • • Bibliographie 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 3
  • 4. Régression logistique • L'objectif est de prédire et/ou expliquer une variable catégorielle Y à partir d'une collection de descripteurs ou variables explicatives X = (X1, X2, … ,Xp). • Soit Y une variable catégorielle à deux modalités: Y = {y1 = 0, y2 = 1} • On souhaite prédire la probabilité d'un individu ou observation d’appartenir à la classe yk sachant les valeurs prises par les p descripteurs. • Considérons p = 1 par exemple, peut-on modéliser avec une régression linéaire ? • Non, pour quoi ? 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 4
  • 5. Régression logistique • Afin que p(X) soit comprise entre 0 et 1, on utilise la fonction logistique • L’estimation des coefficients β sera effectuée avec la méthode du maximum de vraisemblance • Après manipulation on retrouve le rapport de chances (odds): • un individu avec un odds P(Y=1|X) / P(Y=0|X) = 2 a deux fois plus de chance d‘appartenir à la classe Y=1 qu’à la classe Y=0. • Et finalement la fonction logit (log-odds), linéaire et additive 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 5 appelée également score et notée ො𝜋(𝜔)
  • 6. Régression logistique • Soit les données « Credit ». On souhaite prédire la probabilité de défaut de paiement (Y=1) sachant les valeurs d’une variable explicative X1 ou « Balance » • On suppose que l’on a construit le modèle avec la fonction R glm(), d’où les résultats suivants • Calculer la probabilité de défaut pour Balance= 1000 dollars: P(Y=1|X1=1000) • Calculer la probabilité de défaut pour Balance= 2000 dollars: P(Y=1|X1=2000) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 6
  • 7. Régression logistique • Calculer la probabilité de défaut pour Balance= 2000 dollars: P(Y=1|X1=2000) • Calculer le rapport de chances correspondant: • 0.586 / (1 - 0.586) = 1.41 • 1.41 ~ 4/3 => « 3 contre 4 » ◦ 3 chances de ne pas faire défaut (3 chances de « perdre ») ◦ 4 chances de faire défaut (4 chances de « gagner ») • Quelle valeur de Balance donne une probabilité de défaut de paiement de 50% ? • log(0.5 / (1 – 0.5)) = -10.6513 + 0.0055 X • X = 1936.6 dollars 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 7
  • 8. Régression logistique • Interprétation de la fonction logit ou log-odds • lorsque X varie d’une unité le log-odds varie de 𝛽1 • et pas p(X) !! • On constate quand même que la relation entre p(X) et X n’est pas une ligne droite • La variation de p(X) due à la variation d’une unité de X dépend de la valeur de X • Cependant, quelque soit la valeur de X • si 𝜷 𝟏> 0 alors une augmentation de la valeur de X entraîne une augmentation de p(X) • si 𝜷 𝟏< 0 alors une augmentation de la valeur de X entraîne une diminution de p(X) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 8
  • 9. Régression logistique Cas des variables catégorielles • On souhaite prédire la probabilité de défaut de paiement (Y=1) sachant les valeurs d’une variable explicative X1, ici « Student » • On suppose que l’on a construit le modèle avec la fonction R glm(), d’où les résultats suivants • Calculer la probabilité de défaut pour un étudiant: P(Y=1|X1=Yes) • Calculer la probabilité de défaut pour non- étudiant: P(Y=1|X1=No) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 9 après codage en student[Yes] = {0, 1}
  • 10. Régression logistique • Données HEART: 270 obs x 13 colonnes • Train (70%) : 189 observations dont 80 réellement positifs (42.3%) • Test (30%) : 91 observations 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 10 risque de maladie le modèle NULL c’est celui qui retournera toujours la moyenne des positifs comme la meilleure estimation de la probabilité d’être positif.
  • 11. Régression logistique fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 11 Lecture des informations analogue à celle de la régression linéaire. Remarquez que l’on effectue le calcul d’une statistique Z au lieu d’une statistique t ou Student. Comme pour la régression linéaire, les prédictions peuvent être bonnes en présence de variables corrélées mais ces corrélations peuvent avoir un effet négatif lors de l’interprétation et les conseils à donner pour la prise de décision.
  • 12. Régression logistique fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 12 𝜋 = 𝑃 𝑌 = 𝑇𝑅𝑈𝐸 𝑋) 1 - 𝜋 = 𝑃 𝑌 = 𝐹𝐴𝐿𝑆𝐸 𝑋) pour une observation 𝜔 la probabilité P[Y(𝜔)|X(𝜔)] suit une loi binomiale 𝓑(𝟏, 𝝅) Comment sont calculés les coefficients ? (1/4)
  • 13. Régression logistique fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 13 Comment sont calculés les coefficients ? (2/4) La vraisemblance (L ou likelihood) d’un échantillon ou d’un ensemble d’observations sera alors égale au produit des probabilités P[Y(𝜔)|X(𝜔)] on simplifie l’écriture
  • 14. Régression logistique fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 14 Comment sont calculés les coefficients ? (3/4) On préfère utiliser la log-vraisemblance (LL ou log- likelihood) fonction négative, elle varie entre −∞ et 0 !! Ce sont les coefficients qui maximisent LL méthode de « maximum de vraisemblance »
  • 15. Régression logistique fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 15 Comment sont calculés les coefficients ? (4/4) On peut également dire que l’on cherche à estimer les valeurs des coefficients qui minimisent la déviance D: fonction positive, appelée aussi residual deviance • La fonction LL est convexe: il existe une solution unique, mais pas de solution analytique; il faut passer par des heuristiques. • Les logiciels s’appuient sur l’algorithme de Newton-Ralph ou de ses variantes (Fisher Scoring)
  • 16. Régression logistique fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 16 D0 = -2 LL0 est la null deviance, calculée sur le modèle uniquement composé de la constante. • peut être interprétée comme la variance des données autour de la proportion d’individus positifs. DM = -2 LLM est la residual deviance, calculée sur le modèle obtenu. • peut être interprétée comme la variance des données autour du modèle. La réduction de la déviance est-elle significative ou due au hasard ? on doit effectuer un test chi-2 Il faut connaître les degrés de liberté du modèle NULL et du modèle obtenu • df.null = nb obs. – 1 = 189 – 1 = 188 • df.model = nb obs. – nb de coefficients = 189 – 19 = 170
  • 17. Régression logistique fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 17 D0 = -2 LL0 est la null deviance, calculée sur le modèle uniquement composé de la constante. • peut être interprétée comme la variance des données autour de la proportion d’individus positifs. DM = -2 LLM est la residual deviance, calculée sur le modèle obtenu. • peut être interprétée comme la variance des données autour du modèle. Le Pseudo R2 de McFadden Analogue au R2 de la régression linéaire, elle mesure combien (%) de déviance est expliquée par le modèle si elle est basse alors on peut dire que le modèle n’est pas très prédictif, on n’a pas encore identifié toutes les facteurs qui prédisent le risque de maladie
  • 18. Régression logistique fit.glm <- glm(formula = class ~ ., family = binomial(link="logit"), data = df.train) 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 18 AIC d’Akaike Pour effectuer une sélection de modèle: trouver un sous- ensemble de variables qui minimise un critère qui ne peut pas être la déviance, car elle diminue si l’on rajoute des variables. C’est un critère qui comptabilise la qualité de l’ajustement, par un indicateur qui comptabilise la complexité du modèle. Fisher scoring iterations La méthode Fisher scoring est une optimisation itérative semblable à la méthode de Newton utilisée dans glm() afin de trouver les coefficients du modèle. Il devrait converger en moins de 9 itérations, sinon peut être qu’elle n’a pas convergée et que le modèle n’est pas valide. nb de variables
  • 19. Régression logistique df.train$pred <- predict(fit.glm, newdata = df.train, type="response") 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 19 retourne les probabilités distribution des deux classes, on cherche à ce qu’elles soient séparées ggplot(data = df.train, aes(x = pred, color=class, lineType=class)) + geom_density() si les distributions sont bien séparées alors on peut choisir UN SEUIL dans « la vallée » entre les deux pics.
  • 20. Régression logistique • Matrice de confusion • Précision et Rappel 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 20 VRAI PREDICTION a: vrais positifs b: faux négatifs c: faux positifs d: vrais négatifs à partir des données d’apprentissage, on cherche UN SEUIL DE PROBABILITE à partir duquel on classera positif un individu, et ainsi, pour les données de test, on pourra construire la matrice de confusion et en extraire la précision et le rappel du classifieur compromis
  • 21. Régression logistique • Déterminer le seuil • On calcule le score ො𝜋(𝜔) de chaque observation de l’ensemble d’apprentissage à l’aide du modèle de prédiction. • Pour toutes les valeurs de seuil possibles (entre 0 et 1) on génère une matrice de confusion et on en extrait la précision et le rappel. • On affiche respectivement la précision et le rappel en fonction des valeurs de seuil possibles. • Ensuite, c’est le métier (la responsabilité) qui décide du niveau de précision et de rappel acceptable afin de déterminer le seuil. 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 21 une précision juste au-dessus de 80%, donc un ratio de de vrais positifs sur tous les réellement positifs est-il acceptable ? un rappel de 75%, donc un ratio de vrais positifs sur tous les positifs classés par le modèle est-il acceptable ? si oui, voici le seuil à prendre pour valider le modèle
  • 22. Régression logistique • Courbe ROC / AUC • La courbe ROC met en relation le taux de vrais positifs TVP et le taux de faux positifs TFP dans un graphique nuage de points. Ci-dessous deux situations extrêmes: 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 22 • Le critère AUC (area under the curve) caractérise numériquement la courbe ROC en calculant la surface située sous la courbe. • Elle exprime la probabilité de placer un individu positif devant un négatif. Rakotomalala R., Pratique de la Régression Logistique, Université Lumière de Lyon 2, 2014
  • 23. Régression logistique • Construction de la courbe ROC 1. On calcule le score ො𝜋(𝜔) de chaque observation 𝜔 à l’aide du modèle de prédiction 2. Trier les scores calculées précédemment dans l’ordre décroissant 3. Chaque valeur du score peut être potentiellement un seuil s. Pour toutes les observations dont le score est supérieur à s (donc la partie haute du tableau), on compte le nombre de positifs n+(s) et le nombre de négatifs n-(s) . 4. On en déduit 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 23 vraie classe prédiction (triée) n+(s)=6, n-(s)=14 RakotomalalaR.,PratiquedelaRégressionLogistique,UniversitéLumièredeLyon2,2014
  • 24. Régression logistique • Construction de la courbe ROC 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 24 vraie classe prédiction (triée) RakotomalalaR.,PratiquedelaRégressionLogistique,UniversitéLumièredeLyon2,2014 Rakotomalala R., Pratique de la Régression Logistique, Université Lumière de Lyon 2, 2014
  • 25. Bibliographie [1] James and al., An introduction to Statistical Learning, ISBN 9781461471370, Springer, 2014 [2] Hastle T., Qian J., Glmnet vignette, Stanford, 18 février 2015 [3] Rakotomalala R., Pratique de la Régression Logistique, Université Lumière de Lyon 2, février 2014 6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - RÉGRESSION LOGISTIQUE 25