stepAIC

Postez ici vos questions, réponses, commentaires ou suggestions - Les sujets seront ultérieurement répartis dans les archives par les modérateurs

Modérateur : Groupe des modérateurs

Marianne Robert
Messages : 108
Enregistré le : 21 Juil 2008, 07:38

stepAIC

Messagepar Marianne Robert » 08 Déc 2011, 11:24

Bonjour a tous

je souhaite tester l effet de 2 variables qualitatives (Type de banc et sexe) et leur interactions sur une variable quantitative (PL)

J'ai donc construit un modèle linéaire.
En appliquant la procédure stepAIC, je souhaite trouver le modèle le plus parcimonieux.


Code : Tout sélectionner

> PL <-stepAIC (lm(list_lip$PL~list_lip$Type_Banc+ list_lip$Sexe +list_lip$Type_Banc:list_lip$Sexe ),direction = c("both") )
Start:  AIC=-22.87
list_lip$PL ~ list_lip$Type_Banc + list_lip$Sexe + list_lip$Type_Banc:list_lip$Sexe

                                   Df Sum of Sq     RSS     AIC
<none>                                           16.065 -22.867
- list_lip$Type_Banc:list_lip$Sexe  1     1.321  17.386 -21.944



> PL$anova
Stepwise Model Path
Analysis of Deviance Table

Initial Model:
list_lip$PL ~ list_lip$Type_Banc + list_lip$Sexe + list_lip$Type_Banc:list_lip$Sexe

Final Model:
list_lip$PL ~ list_lip$Type_Banc + list_lip$Sexe + list_lip$Type_Banc:list_lip$Sexe


  Step Df Deviance Resid. Df Resid. Dev       AIC
1                         33   16.06542 -22.86720




EN spécifiant direction = both, je pensais que la procédure allait enlever tt les variables une par une et comparer les AIC entre tt les combinaisons (et ordre) possibles.

Hors, il semble qu'elle ne retire que l'interaction puis la procédure s' arrête, car au premier pas l' AIC est plus grand sans l interaction.
Mais je n ai donc pas d info sur le modèle banc+ interaction (sans le sexe), ou sexe + interaction (sans la variable banc).

Code : Tout sélectionner

> summary(PL)

Call:
lm(formula = list_lip$PL ~ list_lip$Type_Banc + list_lip$Sexe +
    list_lip$Type_Banc:list_lip$Sexe)

Residuals:
    Min      1Q  Median      3Q     Max
-1.0489 -0.5580 -0.1189  0.2811  1.9411

Coefficients:
                                   Estimate Std. Error t value Pr(>|t|)   
(Intercept)                          1.6000     0.2104   7.605 9.42e-09 ***
list_lip$Type_BancO                  0.9657     0.3373   2.863  0.00724 **
list_lip$Sexem                       0.5589     0.3136   1.782  0.08393 . 
list_lip$Type_BancO:list_lip$Sexem  -0.7666     0.4654  -1.647  0.10900   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.6977 on 33 degrees of freedom
Multiple R-squared: 0.2353,     Adjusted R-squared: 0.1658
F-statistic: 3.386 on 3 and 33 DF,  p-value: 0.0295





Le stepAIC favorise le modèle complet alors que Les variables sexe et interaction sexe:banc ont des p-values > a 0.05. Leurs effets n'est donc pas "significatif". Ces informations ne sont t elle pas antagonistes ?

le R² est tres petit, mon modèle ne semble donc pas expliquer une part importante de la variance ?

Quel serait la conséquence de retirer l'estimation de l 'intercepte ? quel est la signification de ce paramètre ?

matthieu faron
Messages : 586
Enregistré le : 16 Fév 2011, 11:23

Messagepar matthieu faron » 08 Déc 2011, 17:42

Bonjour,

Pour moi les règles "hiérarchiques" interdisent d'enlever un terme qui est pris dans une interaction avec une autre variable...

Il faut vérifier dans l'aide mais je pensais que Nothomb etait un Lux de forward et backward et donc qu il essayait de rentrer une des variables sorties aux étapes précédentes. Ce qui ne fonctionne pas du une seule variable est sortie du modèle.

Dans un modèle linéaire l'intercept représente la mot ne de la variable réponse pour un sujet ayant toutes les covariables à zéro (ça peut ne pas avoir de sens si les variables sont numériques et n'ont pas été centrées).

Sinon il reste la possibilité de le faire à la main en comparant les modèles emboités.
Matthieu FARON

matthieu faron
Messages : 586
Enregistré le : 16 Fév 2011, 11:23

Messagepar matthieu faron » 08 Déc 2011, 17:47

Par ailleurs il faut estimer la significativité de la première variable après retrait de l interaction qui sort à la première étape et le stepAIC de base sur le critère d'Akaike pas que sur le p.

En espérant avoir aidé un peu.
Matthieu FARON

Marianne Robert
Messages : 108
Enregistré le : 21 Juil 2008, 07:38

Messagepar Marianne Robert » 08 Déc 2011, 18:11

Le AIC est le plus faible pour le modèle complet cad avec interaction ( c'est aussi ce que dit la ligne final modèle). donc je ne comprend pas votre remarque

"par ailleurs il faut estimer la significativité de la première variable après retrait de l interaction qui sort à la première étape "


Il m'apparait encore confus la différences entre le modèle sélectionne par le step AIC et la non significativité des l interaction ....


si j ai bien compris votre remarque :
en définissant les contrastes (constraint. ...) dans les paramètres de la fonction lm, je peux donc définir comme je le souhaite (cad avec une certaines interprétation) l’intercepte ?


oui je peux le faire à la main mais si la procédure stepAIC permettait de le faire directement ....

matthieu faron
Messages : 586
Enregistré le : 16 Fév 2011, 11:23

Messagepar matthieu faron » 08 Déc 2011, 18:43

Moi je lirais les sorties de step AIC de façon différente :
première ligne si on enlève rien AIC = -22,8
deuxième ligne si on enlève l'interaction : l'AIC augmente donc le modèle est moins bon.

Donc il s'arrête la car ne pouvant retirer l'interaction il ne peut pas retirer les composantes individuelles de cette interaction et le modèle final est donc le modèle complet.

Par ailleurs autre piège en présence d'interaction, il n'y a plus un mais deux OR associé à une variable. Un pour le sexe male et la classe1 et un pour le sexe male et la classe2. L'un peut être significativement différent de zéro l'autre non, en fonction du codage de l'interaction on voit au premier abord l'un ou l'autre.

L'interaction non significative = coef beta du paramètre d'interaction pas significativement différent de zéro.
Ne sort pas en stepAIC = - 2 * vraisemblance penalisé par le nombre de paramètre plus bas avec l'interaction que sans.

Ce n'est donc pas exactement pareil ce n'est pas le même test.

Par ailleurs de quel type sont vos variables ? Si ce sont 2 facteurs à 2 classes il n'y a donc que 4 valeurs différentes prédites par le modèle ce qui peut expliquer que ça ne représente pas bien une valeur continue....

Pour l’interprétation de l'intercept imaginez une régression du poids en fonction de la taille. L'intercept représente le poids moyen pour une personne de taille = 0. Ceci ne veut rien dire en pratique sans modification.
En revanche si vous faites : taille2 <- taille - 170
Et la regression avec taille2 à la place de taille, l'intercept est alors le poids moyen pour une personne de taille 170cm.
Matthieu FARON

Nicolas Péru
Messages : 1408
Enregistré le : 07 Aoû 2006, 08:13

Messagepar Nicolas Péru » 11 Déc 2011, 21:48

Bonsoir,

Je me permet quelques remarques sur le fond pour éviter des pertes de temps inutiles.

En appliquant la procédure stepAIC, je souhaite trouver le modèle le plus parcimonieux.

Première erreur...la sélection sur critère d'information n'a pas pour but de trouver le modèle le plus parcimonieux. Il s'agit de trouver le modèle qui correspond le mieux aux données. La limitation du nombre de paramètre intervient dans un second temps, car c'est souvent une qualité que l'on reconnait dans toutes sélection de modèle, AIC ou pas.
première ligne si on enlève rien AIC = -22,8
deuxième ligne si on enlève l'interaction : l'AIC augmente donc le modèle est moins bon.

Ce n'est pas ce que dit la sélection de modèle par AIC. En fait, les deux modèles ne sont pas discernables selon les données. On ne peut pas conclure sur l'intérêt de l'inclusion ou non d'une interaction dans ce modèle. La raison étant que l'écart entre les deux modèles est inférieur à 2, ce qui en théorie de l'information n'est pas grand chose.

La procédure stepAIC n'a pas beaucoup de sens en elle même et elle en a encore moins dans ton cas car tu as très peu de variables et tu ferais mieux de poser les modèles qui correspondent à tes hypothèses sur tes données et de faire une listes des AIC. Une lecture au moins rapide du livre de Burnham et Anderson apparait toujours souhaitable quand on veut manipuler les indices comme l'AIC.
Vu les résultats fournis, il faudrait :
-utiliser l'AICc,
-fournir une vraie liste de modèles candidats,
-calculer les différences d'AIC par rapport au meilleur modèle candidat,

avec ça on peut déjà juger de la pertinence des modèles.

Si on part sur le principe d'une sélection de modèle sur critère d'information alors le calcul des p-value sur les paramètres, perd tout son sens : l'approche choisie n'est plus la même.

Nicolas


Retourner vers « Questions en cours »

Qui est en ligne

Utilisateurs parcourant ce forum : Bertrand Vassor, Google [Bot] et 1 invité