Vous êtes sur la page 1sur 2

M2 Pro Ingnierie Mathmatique

Universit d'Angers, Universit de Nantes

Anne 2011-2012

Diagnostics et choix du modle de rgression sous R


Exercice 1 : Donnes ozone

Nous expliquons le pic d'ozone "max03" par 6 variables : la teneur en ozone maximale la veille
"max03v", la temprature prvu par Mto France 9h "T9", midi "T12", une variable synthtique (la projection du vent sur l'axe est-ouest note "Vx12"), et enn la nbulosit prvue midi
"Ne12" et 15h "Ne15". Nous voulons valider le modle de rgression linaire multiple suivant :

max03 = 0 + 1 max03v + 2 T 9 + 3 T 12 + 4 V x12 + 5 N e12 + 6 N e15 + .


1. Reprsenter les rsidus studentiss en fonction du numro de l'observation :

>reg6v<-lm(max03$\sim$max03v+T9+T12+Vx12+Ne12+Ne15,data=ozone)
>abline(h=c(-2,2))
> lines(lowess(rstudent(reg6v)))
Commenter la sortie graphique. Qu'en dduire notamment sur l'existence de donnes aberrantes et sur l'autocorrlation des rsidus ?
2. Tracer le QQ-plot des rsidus grce la commande :

> plot(reg6v,which=2)
Retrouver les points aberrants du graphique prcdent.

NB : Ces points sont mal expliqus par le modle de rgression propos, et une analyse
compmentaire sur ces journes peut tre entreprise pour mieux les comprendre : sont-ils du
une erreur de mesure, une journe exceptionelle ou autre ? Ces points mals prdits ne sont
pas forcment inuents et ne faussent pas forcment le modle de rgression. Il n'y a donc
pas lieu de les liminer pour le moment.
3. On recherche prsent les points leviers, c'est--dire ayant une inuence considrable sur les
EMC, et pouvant fausser le rsultat de la procdure des moindres carrs. Pour cela, on peut
procder la main en calculant la matrice chapeau, matrice de l'application qui Y associe
l'estimateur Y . Calculer la matrice H = X(X 0 X)1 X 0 . Reprer les lments diagonaux
hii > 2(p+1)
.
n
4. On peut aussi tracer les distances de Cook de chaque observation, qui mesure l'eet de la
suppression de l'observation sur l'EMC, grce la commande :

>reg6v<-lm(max03$\sim$max03v+T9+T12+Vx12+Ne12+Ne15,data=ozone)
> plot(cooks.distance(reg6v),type="h",ylab="Distance de Cook")
> lines(lowess(rstudent(reg6v)))
Commenter la sortie graphique.
5. Nous avons vu dans le graphique d'ajustement global des rsidus studentiss (question 1.),
une lgre dcroissance. Cela peut tre du une autocorrlation des rsidus, phnomne
trs frquent lorsque nos observations sont ranges par date de mesure. Mais cela peut aussi
s'expliquer par une mauvaise modlisation. Pour cela, on peut tracer les rsidus partiels par
rapport chacune des variables explicatives, obtenu par les commandes suivantes :

>
>
>
>
>

prov<-loess(respartiels[,"Vx12"]$\sim$ozone[,"Vx12"])
ordre<-order(ozone[,"Vx12"])
plot(ozone[,"Vx12"],respartiels[,"Vx12"],pch=".")
matlines(ozone[,"Vx12"][ordre],predict(prov)[ordre])
abline(lsfit(ozone[,"Vx12"],respartiels[,"Vx12"]),lty=2)

NB : Les graphiques des rsidus partiels de chaque variable explicative montrent si une transformation est ncessaire pour amliorer le modle. Si les rsidus partiels sont rpartis le long
de la droite ajuste (en pointills), il y a adquation avec le modle et aucune transformation
n'est ncessaire. Par contre, pour les variables o apparat une tendance dirente de la droite
ajuste, on peut aner la rgression en ajoutant une transformation de ces variables.

Exercice 2 : Esprance de vie

On tudie la relation entre l'esprance de vie et le nombre d'habitants par TV de 38 pays du


monde (chier "lifeexp.txt", TP de corrlation). Diagnostiquer le modle de rgression linaire
simple Lif eExp = 0 + 1 P eople.per.T V + , et proposer par consquent des amliorations
signicatives de ce dernier.

Exercice 3 : TV advertisements

Ces donnes, paru dans le Wall Street Journal, sont bases sur une sondage tlphonique sur
l'impact commercial de campagnes publicitaires la TV de 20 rmes amricaines. La variable
MilImp contient en millions, le nombre de personnes ayant vu et apprci une publicit de la rme
la TV dans la semaine du sondage. La variable Spend reprsente la part du budget publicitaire
de la rme ddie la TV. La relation entre ces deux variables est-elle linaire ?

Exercice 4 : Slection de variables

Un problme essentiel de la rgression linaire est le choix des variables explicatives conserver. Ce choix va dpendre des objectifs de la rgression (description des donnes, estimation des
paramtres, prvision de nouvelles valeurs). Selon l'objectif de la rgression, le choix du critre de
slection sera dirent (cf cours).
1. Critre classique pour choisir le modle
Le logiciel R permet d'eectuer une recherche exhaustive lorsque ce nombre de variables n'est
pas trop important. Pour cela, le graphique est l'outil le plus appropri. On propose d'tudier
4 critres de choix : le BIC, le Cp , le Ra2 et le R2 . Noter que ces critres ncessitent la librarie
leaps :

>library(leaps)
> recherche.ex<-regsubsets(maxO3~maxO3~T9+T12+T15+Ne9+Ne12+Ne15+Vx9+Vx12+Vx15
+maxO3v,int=T,nbest=1,nvmax=10,method="exhaustive",really.big=T,data=ozone)
Pour les 4 critres, prciser et commenter le modle retenu l'aide du graphique :
 Minimisation du BIC :
>plot(recherche.ex,scale="bic")
 Minimisation du Cp de Mallows :
>plot(recherche.ex,scale="Cp")
 Maximisation du Ra2 :
>plot(recherche.ex,scale="adjr2")
 Minimisation du R2 :
>plot(recherche.ex,scale="r2")
2. Choix du modle la main
On peut procder diremment et choisir la main les variables conserver. Il existe trois
types de procdures direntes :
 A partir du modle complet, on peut proposer chaque pas d'liminer la variable pour
laquelle le test de Student est le moins signicatif, jusqu' une p-valeur seuil (procdure
descendante dite backward ). On peut mixer cette procdure un critre de choix type
Cp ou autre, en retirant chaque pas la variable dont le retrait du modle conduit la
diminution la plus grande du critre.
 A partir du modle constant, chaque pas on ajoute la variable dont la p-valeur du test
de Fisher qui compare les deux modles est la plus petite, jusqu' une p-valeur seuil.
On peut aussi utiliser un critre de choix en ajoutant la variable qui maximise ce critre
jusqu' obtenir un maximum. On appelle ces procdures procdures de type ascendante
(ou forward ).
 On peut aussi, partir du modle constant, faire une procdure ascendante en liminant
des variables introduites au pralable et qui ne sont plus signicatives aprs l'introduction
de nouvelles variables. On appelle ces mthodes mthodes progressives (stepwise selection ).
Tester ces direntes procdures sur les donnes du TP. Quels modles retenez-vous ?