Version DRAFT d'une formation Data Scientist que j'ai conçue à partir de sources diverses (voir références bibliographiques à la fin de chaque diapositive).
La formation est destinée aux personnes possédant des bases (~BAC+2) en statistiques et programmation (j'utilise R).
Je reste ouvert à tout commentaire, critique et correction. Je continuerai à mettre à jour les diapositives et à en ajouter d'autres si j'ai le temps.
2. Objectifs
Comprendre la relation additive et linéaire entre variables
Comprendre la fonction de coût
Avoir une notion sur les méthodes de minimisation de la fonction de coût
Savoir interpréter l’affichage summary de R d’un modèle de régression linéaire
Savoir interpréter les mesures de qualité RSE et R2 d’un modèle de régression linéaire
Comprendre la notion d’interaction entre variables
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 2
3. Sommaire
• Relation linéaire
• Régression Linéaire Simple
• Régression Linéaire Multiple
• Bibliographie
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 3
4. Relation linéaire
• Soit les observations enregistrées dans le
tableau.
• nombre lamantins décédés
• nombre de bateaux enregistrés
• Le graphique montre une relation
croissante et presque linéaire:
• le nombre de lamantins décédés augmente
quand le nombre de bateaux enregistrés
augmente
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 4
Nombre de lamantins décédés par des bateaux à moteur (en
milliers) le long des côtes de la Floride, entre 1981 et 1990
source [2] Bibliographie
5. Relation linéaire
• Soit un individu « omniscient » qui connaît
tout ce qui se passe entre les bateaux, les
lamantins et l’environnement.
• Cet individu stipule un modèle f(X) linéaire
dont les valeurs des paramètres sont
• β0 = -49
• β1 = 0.25
• Comme il sait tout, il enregistre les erreurs
sur le nombre de lamantins décédés dues
• à l’environnement (présence de crocodiles),
• aux mauvaises imputations
• à la présence d’un élément au hasard
• …
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 5
Modèle linéaire stipulé par l’individu « omniscient »
6. Relation linéaire
• Par contre, nous, on ne connaît ni le modèle
linéaire de l’individu « omniscient » ni les
erreurs qu’il a enregistrées.
• On ne connaît que nos observations
• On va tenter manuellement de proposer des
estimations des paramètres β0 et β1
• 𝜷0 = -39, 𝜷 𝟏 = 0.23
• 𝜷0 = -57, 𝜷 𝟏 = 0.26
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 6
quel est le
meilleur ?
7. Relation linéaire
• Il faut comparer les deux propositions
d’estimation de paramètres suivantes:
• 𝜷0 = -39, 𝜷 𝟏 = 0.23
• 𝜷0 = -57, 𝜷 𝟏 = 0.26
• … selon quel critère ?
• on peut faire la somme des erreurs
respectives
• en prenant le carré afin d’additionner
uniquement des nombres positifs
• ensuite on sélectionnera le minimum
• C’est la méthode des moindre carrés
• RSS*: somme des carrés des résidus
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 7
RSS = 195.46 RSS = 211.79
(*) residual sum of squares ou somme des carrés résiduelle (SCR)
Important: pour les méthodes ou modèles basés sur
les moindres carrées (least squares) assurez vous que
le nombre de variables soit inférieur que le nombre
d’observations (n > p)
8. Relation linéaire
• Supposons le modèle linéaire f(X) tel que
Y = f(X) + 𝜖
• La somme des carrés des erreurs s’écrit
• Les valeurs des paramètres 𝜷0 et 𝜷 𝟏 qui
minimisent RSS par la méthode des moindres
carrés:
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 8
9. Relation linéaire
• Version « machine learning »
• notation β = Ɵ
• m observations x n variables
• X[., 1] = 𝒙 𝟎
(𝒊)
= 1 variable dummy
• መ𝑓=> fonction hypothèse h(X) = ƟT X
• Fonction de coût à minimiser
avec l’algorithme du gradient
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 9
n+1 colonnes
cas d’une régression linéaire simple
𝜖 ℝ
versions
vectorisées
source [3] Bibliographie
10. Relation linéaire
• Droite des moindres carrés
• Calculer le modèle avec R:
• Interpértation:
• A chaque enregistrement d’un milliers de bateaux, le nombre
moyen de lamantins décédés augmente de 0.24
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 10
pente
ordonnée à l’origine
መ𝑓(X) = 0.24 X – 45.17
> model <- lm(nb_lamantins~nb_bateaux, data = lamantins)
> model$coefficients
(Intercept) nb_bateaux
-45.1796424 0.2402433
droite des moindres carrés
መ𝛽0 𝑖𝑛𝑡𝑒𝑟𝑐𝑒𝑝𝑡
n’a aucune interprétation
(pas de sens) lorsque X=0
11. Régression linéaire simple
• Simple = une seule variable X
• On ajuste la droite avec une fonction de coût
quadratique
• On aurait pu utiliser une fonction de coût en
valeur absolue, plus robuste
• voir ligne noire (pas pointillée!) sur le figure
• Malgré cela, le coût quadratique est le coût le
plus souvent utilisé
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 11
source [5] Bibliographie
12. Régression linéaire simple
• Point aberrants (outliers)
• Ne pas les éliminer systématiquement, il faut
s’assurer si mauvaise imputation, etc. et le placer
correctement dans le contexte de l’étude
• Alternative: utiliser une méthode plus robuste …
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 12
n’affecte pas la direction
de la droite ajustée
affecte la direction de
la droite ajustée
rlm() du package MASS
source [4] Bibliographie
source [4] Bibliographie
Coursera, Data Analysis and Statistical Inference MOOC, Duke University
13. Régression linéaire simple
• Estimation des valeurs des coefficients β
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 13
መ𝑓(X) = 0.24 X – 45.17
summary(model)
Call:
lm(formula = nb_lamantins ~ nb_bateaux, data = lamantins)
Residuals:
Min 1Q Median 3Q Max
-6.3566 -3.7237 0.1971 4.2178 5.1751
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -45.17964 12.54392 -3.602 0.00696 **
nb_bateaux 0.24024 0.02052 11.710 2.58e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 4.868 on 8 degrees of freedom
Multiple R-squared: 0.9449, Adjusted R-squared: 0.938
F-statistic: 137.1 on 1 and 8 DF, p-value: 2.583e-06
14. Régression linéaire simple
• Estimation des valeurs des coefficients β
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 14
summary(model)
Call:
lm(formula = nb_lamantins ~ nb_bateaux, data = lamantins)
Residuals:
Min 1Q Median 3Q Max
-6.3566 -3.7237 0.1971 4.2178 5.1751
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -45.17964 12.54392 -3.602 0.00696 **
nb_bateaux 0.24024 0.02052 11.710 2.58e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 4.868 on 8 degrees of freedom
Multiple R-squared: 0.9449, Adjusted R-squared: 0.938
F-statistic: 137.1 on 1 and 8 DF, p-value: 2.583e-06
erreur irréductible
• Std. Error:
• estimation ෝ𝝈2 = RSE avec
15. Régression linéaire simple
• Conditions sur les résidus
• distribution ~gaussienne de moyenne 0
• variance constante (homoscédasticité)
• ne montrent pas de schéma (pattern) particulier
(indépendance)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 15
Coursera, Data Analysis and Statistical Inference MOOC, Duke University
16. Régression linéaire simple
• Conditions sur les résidus
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 16
summary(model)
Call:
lm(formula = nb_lamantins ~ nb_bateaux, data = lamantins)
Residuals:
Min 1Q Median 3Q Max
-6.3566 -3.7237 0.1971 4.2178 5.1751
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -45.17964 12.54392 -3.602 0.00696 **
nb_bateaux 0.24024 0.02052 11.710 2.58e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 4.868 on 8 degrees of freedom
Multiple R-squared: 0.9449, Adjusted R-squared: 0.938
F-statistic: 137.1 on 1 and 8 DF, p-value: 2.583e-06
df = n – 2 = 10 obs. – 2 = 8
1ère mesure de qualité: la réponse se dévie, en
moyenne, de la vraie droite de régression de RSE
17. Régression linéaire simple
• Test d’hypothèse sur መ𝛽1
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 17
summary(model)
Call:
lm(formula = nb_lamantins ~ nb_bateaux, data = lamantins)
Residuals:
Min 1Q Median 3Q Max
-6.3566 -3.7237 0.1971 4.2178 5.1751
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -45.17964 12.54392 -3.602 0.00696 **
nb_bateaux 0.24024 0.02052 11.710 2.58e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 4.868 on 8 degrees of freedom
Multiple R-squared: 0.9449, Adjusted R-squared: 0.938
F-statistic: 137.1 on 1 and 8 DF, p-value: 2.583e-06
• H0: pas de relation entre Y et X (β1 = 0, null value)
• H1: il y a une relation entre Y et X (β1 ≠ 0)
On veut savoir à combien d’écart-type se trouve notre
estimation 𝛽1 de la null value β1 = 0; appliqué à une
distribution de « Student » ou « t »:
t value = (Estimate – 0) / Std. Error
= (0.24024 – 0) / 11.710
= 11.710
p-value: la probabilité d’observer toute valeur ≥ |t| sachant
que H0 est vraie.
p-value petite: il est peu probable d’observer une
relation importante entre Y et X due au hasard,
sachant qu’il n’existe pas de relation entre les deux
(H0 vraie). Alors on rejette H0.
18. Régression linéaire simple
• Intervalle de confiance à 95% de መ𝛽1
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 18
summary(model)
Call:
lm(formula = nb_lamantins ~ nb_bateaux, data = lamantins)
Residuals:
Min 1Q Median 3Q Max
-6.3566 -3.7237 0.1971 4.2178 5.1751
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -45.17964 12.54392 -3.602 0.00696 **
nb_bateaux 0.24024 0.02052 11.710 2.58e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 4.868 on 8 degrees of freedom
Multiple R-squared: 0.9449, Adjusted R-squared: 0.938
F-statistic: 137.1 on 1 and 8 DF, p-value: 2.583e-06
• degrés de liberté: df = n – 2 = 8
• t*8 = 2.03
• CI95 = 𝛽1 ± t*8 x SE( 𝛽1)
= Estimate ± 2.03 x Std. Error
= 0.24024 ± 2.03 x 0.02052
= (0.19 , 0.28)
On est à 95% sûr que la vraie valeur de β1 se
trouve dans l’intervalle [0.19 , 0.28]
qt(p = 0.025, df = 8)
[1] -2.306004
source [4] Bibliographie
19. Régression linéaire simple
• 2e mesure de qualité du modèle: R2
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 19
summary(model)
Call:
lm(formula = nb_lamantins ~ nb_bateaux, data = lamantins)
Residuals:
Min 1Q Median 3Q Max
-6.3566 -3.7237 0.1971 4.2178 5.1751
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -45.17964 12.54392 -3.602 0.00696 **
nb_bateaux 0.24024 0.02052 11.710 2.58e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 4.868 on 8 degrees of freedom
Multiple R-squared: 0.9449, Adjusted R-squared: 0.938
F-statistic: 137.1 on 1 and 8 DF, p-value: 2.583e-06
Coefficient de corrélation 𝑹 = Cov(X,Y) / 𝑉𝑎𝑟 𝑋 𝑉𝑎𝑟(𝑌)
ou
𝑹 = 𝛽1 𝑉𝑎𝑟 𝑋 /𝑉𝑎𝑟(𝑌)
Cov(X,Y)
Var(X)
Comment interpréter R2 ?
Coursera, Data Analysis and Statistical Inference MOOC, Duke University
20. Régression linéaire simple
• (cont.) 2e mesure de qualité du modèle: R2
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 20
summary(model)
Call:
lm(formula = nb_lamantins ~ nb_bateaux, data = lamantins)
Residuals:
Min 1Q Median 3Q Max
-6.3566 -3.7237 0.1971 4.2178 5.1751
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -45.17964 12.54392 -3.602 0.00696 **
nb_bateaux 0.24024 0.02052 11.710 2.58e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 4.868 on 8 degrees of freedom
Multiple R-squared: 0.9449, Adjusted R-squared: 0.938
F-statistic: 137.1 on 1 and 8 DF, p-value: 2.583e-06
• On souhaite expliquer pourquoi le nombre
de lamantins décédés varie d’une année à
l’autre: on veut expliquer les variations de la
variable Y.
• On propose comme explication les
variations de la variable X.
• Le coefficient R2 est tout simplement le
rapport entre la variance expliquée et la
variance initiale:
… et le reste de variance alors … ?
21. Régression linéaire simple
• (cont.) 2e mesure de qualité du modèle: R2
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 21
summary(model)
Call:
lm(formula = nb_lamantins ~ nb_bateaux, data = lamantins)
Residuals:
Min 1Q Median 3Q Max
-6.3566 -3.7237 0.1971 4.2178 5.1751
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -45.17964 12.54392 -3.602 0.00696 **
nb_bateaux 0.24024 0.02052 11.710 2.58e-06 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 4.868 on 8 degrees of freedom
Multiple R-squared: 0.9449, Adjusted R-squared: 0.938
F-statistic: 137.1 on 1 and 8 DF, p-value: 2.583e-06
0
22. Régression linéaire simple
• Cas des variables catégorielles
• Y = niv_pauvreté et X = region4 catégorielle
region4 = {« northeast », « midwest », « west », « south »}
• La modalité « northeast » est la modalité de référence
niv_pauvreté = 9.50 + 0.03 region4:midwest + 1.79 region4:west + 4.16 region4:south
• Prévision du niveau de pauvreté pour la région « northeast » est 9.50
• Prévision du niveau de pauvreté pour la région « west » est 9.50 + 1.79 = 11.29
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 22
Coursera, Data Analysis and Statistical Inference MOOC, Duke University
23. Régression linéaire multiple
• On considère toujours une relation additive et linéaire entre Y et les variables X
• Additive:
• l’effet d’un changement d’une variable Xj sur la réponse Y est indépendant des valeurs des autres
variables
• Linéaire:
• si l’on varie X1 d’une unité, alors Y varie en moyenne de β1 unités,
• la présence de X2 ou d’une autre Xj (j≠1) n’affecte pas cette déclaration
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 23
24. Régression linéaire multiple
• Interprétation des valeurs des coefficients
• Un coefficient βj estime la variation (en moyenne) de Y
par unité de variation de sa variable Xj, en fixant tous les
autres variables explicatives.
• Cas idéal: toutes les variables sont non corrélées
• Usuellement, les variables tendent à varier ensemble …
• Quand il y a corrélation entre les variables
• la variance des coefficients augmente
• les interprétations risquent d’être hasardeuses
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 24
25. Régression linéaire multiple
• Exercice « The Marketing Plan »
• fichier advertising_data.txt (200 x 4)
• source [1], voir Bibliographie
1. Y a-t-il une relation entre le budget de publicité et les
ventes ?
2. Quelle est la "force" de cette relation ?
3. Quel média contribue aux ventes ?
4. Dans quelle mesure chaque média contribue-t-il aux
ventes?
5. Comment prédire les futures ventes avec le plus
d'exactitude possible ?
6. La relation est-elle linéaire ?
7. Y a-t-il une synergie entre les média ?
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 25
réponse
James and al., An introduction to Statistical Learning, ISBN 9781461471370, Springer, 2014
26. Régression linéaire multiple
• Exercice « The Marketing Plan »
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 26
summary(modele)
Call:
lm(formula = Sales ~ ., data = data)
Residuals:
Min 1Q Median 3Q Max
-8.8277 -0.8908 0.2418 1.1893 2.8292
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.938889 0.311908 9.422 <2e-16 ***
TV 0.045765 0.001395 32.809 <2e-16 ***
Radio 0.188530 0.008611 21.893 <2e-16 ***
Newspaper -0.001037 0.005871 -0.177 0.86
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.686 on 196 degrees of freedom
Multiple R-squared: 0.8972, Adjusted R-squared: 0.8956
F-statistic: 570.3 on 3 and 196 DF, p-value: < 2.2e-16
27. Régression linéaire multiple
1. Y a-t-il une relation entre le budget de publicité et les ventes ?
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 27
summary(modele)
Call:
lm(formula = Sales ~ ., data = data)
Residuals:
Min 1Q Median 3Q Max
-8.8277 -0.8908 0.2418 1.1893 2.8292
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.938889 0.311908 9.422 <2e-16 ***
TV 0.045765 0.001395 32.809 <2e-16 ***
Radio 0.188530 0.008611 21.893 <2e-16 ***
Newspaper -0.001037 0.005871 -0.177 0.86
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.686 on 196 degrees of freedom
Multiple R-squared: 0.8972, Adjusted R-squared: 0.8956
F-statistic: 570.3 on 3 and 196 DF, p-value: < 2.2e-16
• Notion de la statistique F (F-statistic)
• Test d’hypothèse
• H0: β1 = β2 = β3 = … = βp = 0
• H1: au moins un βj est non nul
Ici F = 570 >> 1 alors on rejette H0
Pour répondre à la question, il ne faut pas regarder
individuellement les p-value de chaque coefficient. Voir
question 3. plus loin.
somme des carrés totale
(SCT)
il s’ajuste au nombre de variables, ici p
28. Régression linéaire multiple
2. Quelle est la "force" de cette relation ?
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 28
summary(modele)
Call:
lm(formula = Sales ~ ., data = data)
Residuals:
Min 1Q Median 3Q Max
-8.8277 -0.8908 0.2418 1.1893 2.8292
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.938889 0.311908 9.422 <2e-16 ***
TV 0.045765 0.001395 32.809 <2e-16 ***
Radio 0.188530 0.008611 21.893 <2e-16 ***
Newspaper -0.001037 0.005871 -0.177 0.86
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.686 on 196 degrees of freedom
Multiple R-squared: 0.8972, Adjusted R-squared: 0.8956
F-statistic: 570.3 on 3 and 196 DF, p-value: < 2.2e-16
Mesures de qualité du modèle:
• RSE = 1.686
• la moyenne de Sales est 14.022
• donc une erreur de RSE / 𝑆𝑎𝑙𝑒𝑠 = 12%
• R2
• 89.7% de la variance totale est expliquée par le
modèle.
• Adjusted R2
• ajoute une pénalité sur le nombre de variables
• R2 augmente si on ajoute une variable, mais si la variable
n’apporte aucune nouvelle information l’Adjusted R2
n’augmentera pas
SSE = SST – SSR SCE = SCT - SCR
SS: sum of squares SC: somme des carrées
E=Explained, T=Total, R=Residual
29. Régression linéaire multiple
3. Quel média contribue aux ventes?
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 29
summary(modele)
Call:
lm(formula = Sales ~ ., data = data)
Residuals:
Min 1Q Median 3Q Max
-8.8277 -0.8908 0.2418 1.1893 2.8292
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.938889 0.311908 9.422 <2e-16 ***
TV 0.045765 0.001395 32.809 <2e-16 ***
Radio 0.188530 0.008611 21.893 <2e-16 ***
Newspaper -0.001037 0.005871 -0.177 0.86
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.686 on 196 degrees of freedom
Multiple R-squared: 0.8972, Adjusted R-squared: 0.8956
F-statistic: 570.3 on 3 and 196 DF, p-value: < 2.2e-16
• Rappel: Pr(>|t|) = p-value doit être
inférieur au seuil de signification (5%) ou
probabilité d’erreur de type I
• Les valeurs de p-value respectives
suggèrent que seuls les médias TV et
Radio sont liées aux ventes (Sales)
Note: si le nombre de variables p est grand, on risque
de faire des mauvaises interprétations: on pourrait
avoir quelques p-values < 0.05 par hasard
Dans ce cas, et pour répondre à cette question, une
méthode de « sélection de modèle » (expliquée plus
loin dans ce cours) est préférable.
30. Régression linéaire multiple
4. Dans quelle mesure chaque média contribue-t-il aux ventes?
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 30
summary(modele)
Call:
lm(formula = Sales ~ ., data = data)
Residuals:
Min 1Q Median 3Q Max
-8.8277 -0.8908 0.2418 1.1893 2.8292
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.938889 0.311908 9.422 <2e-16 ***
TV 0.045765 0.001395 32.809 <2e-16 ***
Radio 0.188530 0.008611 21.893 <2e-16 ***
Newspaper -0.001037 0.005871 -0.177 0.86
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.686 on 196 degrees of freedom
Multiple R-squared: 0.8972, Adjusted R-squared: 0.8956
F-statistic: 570.3 on 3 and 196 DF, p-value: < 2.2e-16
Première approche: R2
• Vous pouvez effectuer une régression
linéaire simple pour chaque variable:
TV, Radio et Newspaper.
• Comparez les R2 respectifs
• TV: R2 = 0.61
• Radio: R2 = 0.33
• Newspaper: R2 = 0.05
• Il y a évidence d’une association plutôt
« molle » entre Newspaper et les ventes,
lorsque l’on ignore TV et Radio !
31. Régression linéaire multiple
4. Dans quelle mesure chaque média contribue-t-il aux ventes?
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 31
summary(modele)
Call:
lm(formula = Sales ~ ., data = data)
Residuals:
Min 1Q Median 3Q Max
-8.8277 -0.8908 0.2418 1.1893 2.8292
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.938889 0.311908 9.422 <2e-16 ***
TV 0.045765 0.001395 32.809 <2e-16 ***
Radio 0.188530 0.008611 21.893 <2e-16 ***
Newspaper -0.001037 0.005871 -0.177 0.86
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.686 on 196 degrees of freedom
Multiple R-squared: 0.8972, Adjusted R-squared: 0.8956
F-statistic: 570.3 on 3 and 196 DF, p-value: < 2.2e-16
Deuxième approche: les IC
• Utilisez les Std. Error pour
construire les intervalles de confiance à
95% respectifs
• TV: CI95 = (0.043, 0.049)
• Radio: CI95 = (0.172, 0.206)
• Newspaper: CI95 = (-0.013, 0.011)
• Le IC à 95% de Newspaper inclut le zéro: la
variable n’est pas significative statistiquement
… peut être dû à la multicolinéarité ? vérifiez:
>library(car)
>vif(modele) # Facteur d'inflation de la variance
TV Radio Newspaper
1.004611 1.144952 1.145187
32. Régression linéaire multiple
5. Comment prédire les futures ventes avec le plus d'exactitude possible?
• Attention: ici on évalue la prévision du modèle avec l’ensemble de données d’apprentissage
• Intervalle de confiance des prévisions (Y = f(X) + 𝜖)
>ICpred <- predict(object = modele, newdata = data, interval = "pred", level = 0.95)
>head(ICpred)
fit lwr upr
1 20.52397 17.158283 23.88967
2 12.33785 8.981672 15.69404
3 12.30767 8.919038 15.69630
...
• Intervalle de confiance de la droite ajustée (E(Y))
>ICdte <- predict(object = modele, newdata = data, interval = "conf", level = 0.95)
head(ICdte)
fit lwr upr
1 20.52397 19.99627 21.05168
2 12.33785 11.87465 12.80106
3 12.30767 11.64932 12.96602
…
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 32
les ICpred seront toujours plus large que les ICdte
car ils tiennent compte de l’incertitude ou erreur
irréductible 𝜖
33. Régression linéaire multiple
5. La relation est-elle linéaire?
• Afficher les résidus … commentez
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 33
34. Régression linéaire multiple
5. Y a-t-il une synergie entre les média?
• Il se peut que la relation entre Y et les
variables TV et Radio ne soit pas additive !
• il y a interaction entre ces 2 variables
• les résidus positifs restent autour de la ligne
de 45° où les budgets de TV et de Radio sont
répartis de façon presque égale
• les résidus négatifs (difficile à voir dans la
figure) sont éloignés de cette ligne
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 34
terme d’intéraction
James and al., An introduction to Statistical Learning, ISBN 9781461471370, Springer, 2014
35. Régression linéaire multiple
• Cas des variables catégorielles
• Fonction R: model.matrix()
model.matrix(object = ~ ., data = Credit )
convertir en data.frame si vous utilisez lm()
vous pouvez lancer lm() avec la colonne (Intercept)
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 35
36. Bibliographie
James and al., An introduction to Statistical Learning, ISBN 9781461471370, Springer, 2014
Lafont G., Leçon 4 Corrélations, Module EAR206, CNAM de Paris, 2013
Ng A., Machine Learning MOOC, Coursera – Stanford University
Coursera, Data Analysis and Statistical Inference MOOC, Coursera – Duke University
Cornillon P., Matzner-LØber E., Régression avec R, ISBN 9782817801834, Springer, 2011
6/30/2016 BORIS GUARISMA - FORMATION DATA SCIENTIST - PARTIE 5 - RÉGRESSION LINÉAIRE 36