On a mesuré pour 41 villes américaines, la pollution au SO2 ainsi que la population dans la ville
library(coursesdata)data(usdata)
On a mesuré pour 41 villes américaines, la pollution au SO2 ainsi que la population dans la ville
library(coursesdata)data(usdata)
La taille d'une ville est elle liée à la pollution en SO2 ?
On étudie le lien entre
Les données peuvent être visualisées à l'aide d'un nuage de points.
On étudie le lien entre
Les données peuvent être visualisées à l'aide d'un nuage de points.
La variable x permet elle d'expliquer la variabilité de la variable Y ?
Une visualisation graphique du modèle d'analyse de régression simple
Comment imagine-t-on le processus aléatoire qui a conduit à nos données ?
Lequel de ces mécanismes est le plus crédible au vu des donées ?
Yk=β0+β1xk+Ek,Ekind∼N(0,σ2), avec
β1 la pente de la droite, mesure de l'effet de la variable x
σ2 la variance.
Ykind∼N(β0+β1xk,σ2).
Yk=β0+β1xk+Ek,Ekind∼N(0,σ2), avec
β1 la pente de la droite, mesure de l'effet de la population sur la pollution.
σ2 la variance.
Y=Xθ+E
Y=(Y1Y2⋮Yk⋮Yn),X=β0β1(1x11x2⋮⋮1xk⋮⋮1xn),θ=(β0β1),E=(E1E2⋮Ek⋮En)
Détailler le modèle sous forme matricielle pour l'exemple de la pollution (écrire les 3 premières lignes de la matrice `X` )
Détailler le modèle sous forme matricielle pour l'exemple de la pollution (écrire les 3 premières lignes de la matrice X )
Attention, la réponse est dans la slide qui suit !Mpop <- lm(SO2 ~ pop , data = usdata)model.matrix(Mpop) %>% head(n = 3)
(Intercept) pop1 1 5822 1 1323 1 716
Le modèle sous forme matricielle s'écrit
Y=Xθ+E.
Le modèle sous forme matricielle s'écrit
Y=Xθ+E.
ˆθ=(X⊺
Le modèle sous forme matricielle s'écrit
\bf{Y = X\theta + E}.
\hat{\theta} = (X^\intercal X )^{-1} X^\intercal Y_{obs}.
T = (X^\intercal X )^{-1} X^\intercal Y.
Le modèle sous forme matricielle s'écrit
\bf{Y = X\theta + E}.
\hat{\theta} = (X^\intercal X )^{-1} X^\intercal Y_{obs}.
T = (X^\intercal X )^{-1} X^\intercal Y.
T \sim \mathcal{N}_{I}\left(\theta, \sigma^2 (X^\intercal X )^{-1}\right).
La somme des carrés résiduelles s'écrit sous la forme
RSS = || Y- X \hat{\theta} ||^2
S^2 =\frac{1}{DF_{res}} RSS, est un estimateur sans bias de \sigma^2 .
Dans le cas du modèle de régression simple DF_{res}=n-2 (n observations et 2 paramètres de moyennes à estimer, le nombre de composantes dans le vecteur \theta)
La somme des carrés résiduelles s'écrit sous la forme
RSS = || Y- X \hat{\theta} ||^2
S^2 =\frac{1}{DF_{res}} RSS, est un estimateur sans bias de \sigma^2 .
Dans le cas du modèle de régression simple DF_{res}=n-2 (n observations et 2 paramètres de moyennes à estimer, le nombre de composantes dans le vecteur \theta)
\hat{\sigma}^2 =\frac{1}{n-2} RSS_{obs}.
X <- model.matrix(Mpop)XXprimemoinsUn <- solve(t(X)%*%X)XXprimemoinsUn %*% t(X) %*% matrix(usdata$SO2, ncol =1)
[,1](Intercept) 17.86831630pop 0.02001359
summary(Mpop)$coefficients
Estimate Std. Error t value Pr(>|t|)(Intercept) 17.86831630 4.713843676 3.790604 0.0005093514pop 0.02001359 0.005643813 3.546111 0.0010349968
X <- model.matrix(Mpop)XXprimemoinsUn <- solve(t(X)%*%X)XXprimemoinsUn %*% t(X) %*% matrix(usdata$SO2, ncol =1)
[,1](Intercept) 17.86831630pop 0.02001359
summary(Mpop)$coefficients
Estimate Std. Error t value Pr(>|t|)(Intercept) 17.86831630 4.713843676 3.790604 0.0005093514pop 0.02001359 0.005643813 3.546111 0.0010349968
summary(Mpop)$sigma^2 * XXprimemoinsUn # sigma2 Xt X
(Intercept) pop(Intercept) 22.22032220 -1.938582e-02pop -0.01938582 3.185262e-05
sqrt(diag(summary(Mpop)$sigma^2 * XXprimemoinsUn ))
(Intercept) pop 4.713843676 0.005643813
Il est fréquent d'utiliser un modèle de régression pour prédire.
\beta_0+\beta_1 x.
\hat{\beta}_0+\hat{\beta}_1 x.
predict(Mpop, newdata=data.frame(pop=333))
1 24.53284
\hat{\beta}_0+\hat{\beta}_1 x.
predict(Mpop, newdata=data.frame(pop=333), interval = 'confidence')
fit lwr upr1 24.53284 17.28453 31.78115
Il est fréquent d'utiliser un modèle de régression pour prédire.
predict(Mpop, newdata=data.frame(pop=333), interval = 'prediction')
fit lwr upr1 24.53284 -17.90225 66.96793
Plusieurs variables sont potentiellement liées à la pollution en SO2
Quelles sont les variables liées à la pollution en SO2 ?
Y_{k} = \beta_0 +\beta_1 x_{k}^{1} + \beta_2 x_{k}^{2} + \ldots + \beta_p x_{k}^{p} + E_{k},\quad E_{k}\overset{ind}{\sim}\mathcal{N}(0, \sigma^2), avec
Y_{k} \overset{ind}{\sim}\mathcal{N}(\beta_0 +\beta_1 x_{k}^{1} + \beta_2 x_{k}^{2} + \ldots + \beta_p x_{k}^{p} , \sigma^2).
\bf{Y = X\theta + E}
Y=\begin{pmatrix} Y_{1}\\ Y_{2}\\ \vdots\\ Y_{k}\\ \vdots\\ Y_{n}\end{pmatrix}, \quad {\bf{X}} =\overset{\color{gray}{\begin{matrix}\beta_0 && \beta_1&& \beta_2&&\ldots &&\beta_l\end{matrix}}}{\begin{pmatrix} 1 & x_1^{1} & x_1^{2} & \ldots &x_1^{l}\\ 1 & x_2^{1} & x_2^{2} & \ldots &x_2^{l}\\ \vdots & \vdots& \vdots && \vdots\\ 1 & x_k^{1} & x_k^{2} & \ldots &x_k^{l}\\ \vdots & \vdots& \vdots && \vdots\\ 1 & x_n^{1} & x_n^{2} & \ldots &x_n^{l}\\ \end{pmatrix}},\quad {\bf{\theta}} =\begin{pmatrix} \beta_0\\ \beta_1\\ \beta_2\\ \vdots\\ \beta_l\\ \end{pmatrix}, \quad{\bf{E}} = \overset{}{\begin{pmatrix} E_{1}\\ E_{2}\\ \vdots\\ E_{k}\\ \vdots\\ E_{n}\\ \end{pmatrix}}
Mcomp <- lm(SO2 ~ temp + manuf + pop + wind + precip + days, data = usdata) #Mcomp <- lm(SO2 ~ . - City , data = usdata) # toutes les variables sauf Citymodel.matrix(Mcomp) %>% head(n = 3)
(Intercept) temp manuf pop wind precip days1 1 70.3 213 582 6.0 7.05 362 1 61.0 91 132 8.2 48.52 1003 1 56.7 453 716 8.7 20.66 67
Le modèle sous forme matricielle s'écrit
\bf{Y = X\theta + E}.
Le modèle sous forme matricielle s'écrit
\bf{Y = X\theta + E}.
\hat{\theta} = (X^\intercal X )^{-1} X^\intercal Y_{obs}.
Le modèle sous forme matricielle s'écrit
\bf{Y = X\theta + E}.
\hat{\theta} = (X^\intercal X )^{-1} X^\intercal Y_{obs}.
T = (X^\intercal X )^{-1} X^\intercal Y.
Le modèle sous forme matricielle s'écrit
\bf{Y = X\theta + E}.
\hat{\theta} = (X^\intercal X )^{-1} X^\intercal Y_{obs}.
T = (X^\intercal X )^{-1} X^\intercal Y.
T \sim \mathcal{N}_{I}\left(\theta, \sigma^2 (X^\intercal X )^{-1}\right).
La somme des carrés résiduelles s'écrit sous la forme
RSS = || Y- X \hat{\theta} ||^2
S^2 =\frac{1}{DF_{res}} RSS, est un estimateur sans bias de \sigma^2 .
Dans le cas du modèle de régression simple DF_{res}=n-l-1 (n observations et 2 paramètres de moyennes à estimer, le nombre de composantes dans le vecteur \theta)
La somme des carrés résiduelles s'écrit sous la forme
RSS = || Y- X \hat{\theta} ||^2
S^2 =\frac{1}{DF_{res}} RSS, est un estimateur sans bias de \sigma^2 .
Dans le cas du modèle de régression simple DF_{res}=n-l-1 (n observations et 2 paramètres de moyennes à estimer, le nombre de composantes dans le vecteur \theta)
\hat{\sigma}^2 =\frac{1}{n-l-1} RSS_{obs}.
X <- model.matrix(Mcomp)XXprimemoinsUn <- solve(t(X)%*%X)XXprimemoinsUn %*% t(X) %*% matrix(usdata$SO2, ncol =1)
[,1](Intercept) 111.72848064temp -1.26794109manuf 0.06491817pop -0.03927674wind -3.18136579precip 0.51235896days -0.05205019
summary(Mcomp)$coefficients
Estimate Std. Error t value Pr(>|t|)(Intercept) 111.72848064 47.31810073 2.361221 0.0240867374temp -1.26794109 0.62117952 -2.041183 0.0490557189manuf 0.06491817 0.01574825 4.122245 0.0002277862pop -0.03927674 0.01513274 -2.595482 0.0138461970wind -3.18136579 1.81501910 -1.752800 0.0886503978precip 0.51235896 0.36275507 1.412410 0.1669175999days -0.05205019 0.16201386 -0.321270 0.7499724652
summary(Mcomp)$coefficients
Estimate Std. Error t value Pr(>|t|)(Intercept) 111.72848064 47.31810073 2.361221 0.0240867374temp -1.26794109 0.62117952 -2.041183 0.0490557189manuf 0.06491817 0.01574825 4.122245 0.0002277862pop -0.03927674 0.01513274 -2.595482 0.0138461970wind -3.18136579 1.81501910 -1.752800 0.0886503978precip 0.51235896 0.36275507 1.412410 0.1669175999days -0.05205019 0.16201386 -0.321270 0.7499724652
sqrt(diag(summary(Mcomp)$sigma^2 * XXprimemoinsUn ))
(Intercept) temp manuf pop wind precip 47.31810073 0.62117952 0.01574825 0.01513274 1.81501910 0.36275507 days 0.16201386
La pollution en SO2 dans les villes américaines est elles liées à l'une au moins des variables caractérisiques des villes ?
La pollution en SO2 dans les villes américaines est elles liées à l'une au moins des variables caractérisiques des villes ?
On va à la pêche ....
Le modèle Mcomp est il plus pertinent que le modèle M0 ?
On va donc opposer une hypothèse de travail H_0 contre une hypothèse alternative H_1. H_0 peut donc prendre différentes formes:
\begin{align} H_0 & =\left \lbrace \mbox{Auncune variable n'est liée à la pollution en SO2}\right\rbrace\\ & =\left \lbrace \mbox{pour tout }p\geq 1, \beta_p =0 \right\rbrace\\ & =\left \lbrace M_{comp} \mbox{ est équivalent à } M0 \right\rbrace. \end{align}
H_1 prend les formes équivalentes suivantes
\begin{align} H_1 & =\left \lbrace \mbox{Au moins 1 variable est liée à la pollution en SO2}\right\rbrace\\ & =\left \lbrace \mbox{Il existe un } p, \beta_p \ne 0 \right\rbrace\\ & =\left \lbrace M_{comp} \mbox{ est préférable à } M0 \right\rbrace. \end{align}
On va donc opposer une hypothèse de travail H_0 contre une hypothèse alternative H_1. H_0 peut donc prendre différentes formes:
\begin{align} H_0 & =\left \lbrace \mbox{Auncune variable n'est liée à la pollution en SO2}\right\rbrace\\ & =\left \lbrace \mbox{pour tout }p\geq 1, \beta_p =0 \right\rbrace\\ & =\left \lbrace M_{comp} \mbox{ est équivalent à } M0 \right\rbrace. \end{align}
H_1 prend les formes équivalentes suivantes
\begin{align} H_1 & =\left \lbrace \mbox{Au moins 1 variable est liée à la pollution en SO2}\right\rbrace\\ & =\left \lbrace \mbox{Il existe un } p, \beta_p \ne 0 \right\rbrace\\ & =\left \lbrace M_{comp} \mbox{ est préférable à } M0 \right\rbrace. \end{align}
Sous H_0, F= \frac{\frac{SS_{M_{comp}}}{l}}{\frac{RSS}{n-l-1}} \underset{H_0}{\sim}\mathcal{F}(l, n-l-1)
Sous H_0 la loi de distribution de F est
Tester la nullité du paramètre \beta_l revient à tester si la variable x^{l} et la variable Y sont liées.
Tester la nullité du paramètre \beta_l revient à tester si la variable x^{l} et la variable Y sont liées.
Ce test est similaire au test de comparaison entre le modèle complet et le modèle complet privé de la variable x^{l}.
Estimate Std. Error t value Pr(>|t|)(Intercept) 111.72848064 47.31810073 2.361221 0.0240867374temp -1.26794109 0.62117952 -2.041183 0.0490557189manuf 0.06491817 0.01574825 4.122245 0.0002277862pop -0.03927674 0.01513274 -2.595482 0.0138461970wind -3.18136579 1.81501910 -1.752800 0.0886503978precip 0.51235896 0.36275507 1.412410 0.1669175999days -0.05205019 0.16201386 -0.321270 0.7499724652
Analysis of Variance TableModel 1: SO2 ~ temp + manuf + wind + precip + daysModel 2: SO2 ~ temp + manuf + pop + wind + precip + days Res.Df RSS Df Sum of Sq F Pr(>F) 1 35 8726.3 2 34 7283.3 1 1443.1 6.7365 0.01385 *---Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
res <- summary(Mcomp)$coefficientsres[,"t value"]^2
(Intercept) temp manuf pop wind precip 5.5753634 4.1664282 16.9929075 6.7365251 3.0723084 1.9949026 days 0.1032144
Estimate Std. Error t value Pr(>|t|)(Intercept) 111.72848064 47.31810073 2.361221 0.0240867374temp -1.26794109 0.62117952 -2.041183 0.0490557189manuf 0.06491817 0.01574825 4.122245 0.0002277862pop -0.03927674 0.01513274 -2.595482 0.0138461970wind -3.18136579 1.81501910 -1.752800 0.0886503978precip 0.51235896 0.36275507 1.412410 0.1669175999days -0.05205019 0.16201386 -0.321270 0.7499724652
Estimate Std. Error t value Pr(>|t|)(Intercept) 111.72848064 47.31810073 2.361221 0.0240867374temp -1.26794109 0.62117952 -2.041183 0.0490557189manuf 0.06491817 0.01574825 4.122245 0.0002277862pop -0.03927674 0.01513274 -2.595482 0.0138461970wind -3.18136579 1.81501910 -1.752800 0.0886503978precip 0.51235896 0.36275507 1.412410 0.1669175999days -0.05205019 0.16201386 -0.321270 0.7499724652
library(ggfortify)autoplot(Mcomp)
Le levier lev_i pour l'observation i est défini par H=X (X^\intercal X)^{-1}X^\intercal; \quad lev_{i}= H_{ii},
Le levier lev_i pour l'observation i est défini par H=X (X^\intercal X)^{-1}X^\intercal; \quad lev_{i}= H_{ii},### D'où viennt cette matrice H ?
\hat{Y} = H Y
Le levier lev_i pour l'observation i est défini par H=X (X^\intercal X)^{-1}X^\intercal; \quad lev_{i}= H_{ii},### D'où viennt cette matrice H ?
\hat{Y} = H Y### Sur l'exemple de la régression simple
h.us.lm <- hatvalues(Mpop)h.us.lm
1 2 3 4 5 6 7 0.02444303 0.04132345 0.02524994 0.02504346 0.03952636 0.04521998 0.02603168 8 9 10 11 12 13 14 0.02486268 0.02997079 0.02531882 0.59239806 0.02579734 0.03677543 0.03258749 15 16 17 18 19 20 21 0.02440841 0.02896059 0.03093873 0.08536149 0.02575668 0.02515988 0.02440361 22 23 24 25 26 27 28 0.02949202 0.03430016 0.04247944 0.02597074 0.02619528 0.02590162 0.02474115 29 30 31 32 33 34 35 0.15851954 0.02497554 0.03814844 0.02440790 0.02631315 0.02852063 0.05345225 36 37 38 39 40 41 0.03834126 0.03112651 0.03153591 0.02483924 0.04593530 0.02526602
Les différentes espèces de chauve souris ont des tailles de cerveau très variables, ce qui conduit à des volumes variables de la partie auditive.
Quel modèle pouvez vous proposer pour étudier l’influence du régime sur la part du cerveau dédiée à l’audition, compte tenu de la taille total du cerveau ?
Quel test pourrait permettre d’étudier cette influence ?
Prenons une petite pause !!! Correction en TP
Keyboard shortcuts
↑, ←, Pg Up, k | Go to previous slide |
↓, →, Pg Dn, Space, j | Go to next slide |
Home | Go to first slide |
End | Go to last slide |
Number + Return | Go to specific slide |
b / m / f | Toggle blackout / mirrored / fullscreen mode |
c | Clone slideshow |
p | Toggle presenter mode |
t | Restart the presentation timer |
?, h | Toggle this help |
Esc | Back to slideshow |