Les posteurs les plus actifs de la semaine
Eric Wajnberg
 
mvergnat
 
zezima
 
Florent Aubry
 
c@ssoulet
 
fmachou
 
adri6666
 
Nik
 
Aeelim
 
Kouakakou
 


Choix du modèle de régression linéaire et interprétation

Voir le sujet précédent Voir le sujet suivant Aller en bas

Choix du modèle de régression linéaire et interprétation

Message par MarlTarma le Ven 10 Mar 2017 - 18:54

Bonjour à tous,

Je rencontre un problème pour choisir entre deux modèles de régression linéaire. Les données sur lesquelles je travaille sont des captures de chauves-souris réalisées sur plusieurs années, chaque années à des mois différents (4 sessions de plusieurs nuits par an, pendant 5 ans, de sorte que tous les mois sont échantillonnés). Je cherche à faire un modèle de régression linéaire afin de déterminer quels facteurs influencent le nombre de captures par nuit. J'ai comme variables explicatives possibles : le nombre de filets ouverts pendant la nuit, la durée d'ouverture, la météo (ciel dégagé, couvert, pluie, orage), le mois où les captures ont été réalisées, et le lieu (deux lieux différents).

Sous R j'utilise la méthode de sélection du meilleur modèle via la méthode stepwise sur mon modèle avec les 5 variables explicatives, qui va soustraire et ajouter successivement des variables et sélectionner le modèle avec l'AIC le plus faible. J’obtiens ainsi le modèle avec le mois, la durée d'ouverture et la météo comme variables retenues. Cependant si je réalise une ANOVA de type 2 (fonction Anova{car}), je vois que l'effet de la variable météo sur le nombre de captures n'est pas significatif. Si j'enlève cette variable, le modèle a un AIC très légèrement supérieur au modèle précédent. Si je regarde le BIC par contre, le modèle sans la météo est meilleur que le modèle avec.

Comment choisir entre ces deux modèles? L'un a un meilleur AIC plus faible que l'autre mais un BIC plus élevé, et comporte une variable dont l'effet est apparemment non significatif, et l'autre a un AIC (légèrement) plus élevé, mais un BIC plus faible, et toutes les variables explicatives sont significatives. Si je fais un "Partial F-test" (fonction anova{stats}) pour voir la différence entre les deux modèles, j'obtiens que la différence n'est pas significative (p-value = 0.075), ce qui me pousserait à garder le modèle le plus parcimonieux, donc celui sans la météo.

Et ma deuxième question est à propos de l'interprétation : quel que soit le modèle que je garde, il comprendra la variable explicative "mois". Or dans R quand je demande un summary de mes modèles, j'obtiens que certains mois sont significatifs et d'autres non, et si je change de modalité de référence, ce ne sont pas les mêmes mois qui sont significatifs. Comment puis-je interpréter cela et comment choisir la bonne modalité de référence? Je serai tenté de choisir pour cela un mois avec des valeurs "moyennes" du nombre de captures, puis de dire que les mois ayant un coefficient négatif dans mon tableau de régression ont en moyenne un effet négatif sur le nombre de captures, et ceux ayant un coefficient positif, un effet positif. Mais puisque seul certains mois sont significatifs, faut-il que je dise pour chaque mois si c'est significatif ou non?

Je vous remercie par avance de vos réponses, vous me sauveriez car je ne trouve pas de réponse à ces questions !

MarlTarma

Nombre de messages : 8
Date d'inscription : 02/02/2017

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Choix du modèle de régression linéaire et interprétation

Message par Eric Wajnberg le Sam 11 Mar 2017 - 8:00

Le problème ici est qu'avec votre démarche actuelle, vous modélisez une variable (nombre de captures) qui est un comptage, et qui suit donc une distribution de Poisson, avec une ANOVA qui est une méthode faite pour analyser une variable dont la distribution est - en revanche - gaussienne. Il est très probable que les résultats que vous obtenez ne soient pas valide.

Je pense que vous devriez partir sur un GLM pour des données de comptage (Poisson). Donc une régression log-linéaire.

Par ailleurs, vous avez peu de variables explicatives, somme toute. Je ne suis pas sûr qu'une recherche du modèle le plus parcimonieux (e.g., avec le critère d'AIC) soit vraiment utile.

Pour votre dernière question sur l'effet mois. Les sorties de summary() sur un modèle vous donne les coefficients de régression calculés et leur SE, et également le test de la significativité de chacun d'eux (test de Wald). Ces tests ne sont ni puissants, ni pertinents, car ils considèrent chaque paramètre séparément. Par ailleurs, ces tests ne testent pas l'influence de chaque mois, mais la différence de chaque mois à un mois qui sert de référence (et qui n'apparait donc pas dans la liste que vous regardez).  Il faut rester sur le test global de l'effet mois, suivi ensuite - si ça vous intéresse et si l'effet mois est globalement significatif - par des comparaisons multiples. Et ce toujours dans le cadre d'un GLM, évidement.

Enfin, pour votre question de choisir la bonne modalité de référence, ça n'a aucune importance. Vous obtiendrez les mêmes résultats quelle que soit la modalité de référence choisie. Cette histoire de modalité de référence est juste un détail calculatoire car - par définition - le modèle d'ANOVA qui est derrière est surdimensionné, et on ne peut estimer autant de paramètres qu'il y a de modalités. Il en faut une qui serve de référence, et le df correspondant est donc - par construction - le nombre de modalités moins un.

HTH, Eric.
avatar
Eric Wajnberg

Nombre de messages : 664
Date d'inscription : 14/09/2012

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Choix du modèle de régression linéaire et interprétation

Message par MarlTarma le Dim 12 Mar 2017 - 4:08

Merci beaucoup de votre réponse Eric !

Je suis débutant en statistiques et j'étais complètement passé à côté du type de distribution de ma variable... J'ai fait des recherches sur les GLM pour des données de comptage, et je suis tombé sur le document "Aide-mémoire de statistique appliquée à la biologie" de Maxime Hervé où il détaille la démarche à suivre. J'ai donc suivi le guide en commençant par un glm basé sur une loi de Poisson avec les 5 variables explicatives, mais (si je comprends bien) les résidus sont surdispersés (déviance résiduelle de 256.09 pour 87 ddl). J'ai donc essayé avec une loi de quasipoisson mais cela donne exactement la même valeur de déviance résiduelle. J'ai donc essayé avec une loi binomiale négative (fonction glm.nb {MASS}) et cela me donne une déviance résiduelle de 113.37 pour 87 ddl. A ce stade j'ai deux questions : pourquoi la déviance résiduelle n'a pas changée entre le glm poisson et le glm quasi poisson? Est-ce que la surdispersion des résidus pour le modèle avec loi binomiale négative est toujours trop forte pour que le modèle soit valide? Et si oui, quelle méthode employer pour éviter cela?

Lorsque je fais une Anova de type 2 sur le modèle avec loi binomial négative pour avoir l'effet global de chacune des variables, j'obtiens que seul le mois, la durée d'ouverture et la météo sont significatif. Et c'est là que j'ai du mal à comprendre ce qu'il faut faire. Mon but n'est pas de faire des prédictions mais de déterminer quelles variables ont un effet significatif sur le nombre de captures, afin de pouvoir définir une stratégie pour maximiser l'efficacité de capture à l'avenir. Dois-je alors m'arrêter là et interpréter ce modèle qui contient des variables explicatives qui ne sont pas significatives, ou dois-je enlever ces variables?Car je vois que ça change quelque chose puisque si j'enlève les variables non significatives du modèle, les coefficients des variables restantes changent légèrement. Pour le cas présent ça ne changera pas grand chose à mon interprétation mais j'aimerai comprendre le rôle que peuvent avoir des variables non significatives dans un modèle (si elles peuvent avoir un rôle), et comment le fait de laisser ces variables change l'interprétation que l'on peut faire du modèle.

En ce qui concerne le choix de la modalité de référence, je vous remercie pour l'explication, je comprends mieux ce que signifient les valeurs du summary ! Si je veux savoir en quel mois ont une influence positive sur le nombre de captures, je ne couperai donc pas aux comparaisons multiples. Je suis très ignorant dans ce domaine, mais pouvez-vous me donner une piste sur quelle méthode employer pour cela?

D'autre part puisque j'étudie des données de comptage issues d'un même site échantillonné plusieurs fois au cours du temps, ne serai-je pas potentiellement en situation d'autocorrélation? Et comment vérifier cela? J'ai vu que certains utilisent les fonctions acf et pacf pour cela, est-ce approprié?

J'espère que mes questions sont assez claires. Je vous remercie d'avance pour vos réponses,

Cordialement
Marl





MarlTarma

Nombre de messages : 8
Date d'inscription : 02/02/2017

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Choix du modèle de régression linéaire et interprétation

Message par Eric Wajnberg le Dim 12 Mar 2017 - 6:51

MarlTarma a écrit:pourquoi la déviance résiduelle n'a pas changée entre le glm poisson et le glm quasi poisson?
Parce que le modèle passe au même endroit dans le nuage de points. De fait, les paramètres estimés du modèle sont les mêmes ! Mais ce sont leur SE qui ont changé, et donc la procédure de test pour chercher où sont les effets significatifs.
MarlTarma a écrit:Lorsque je fais une Anova de type 2 sur le modèle avec loi binomial négative pour avoir l'effet global de chacune des variables, j'obtiens que seul le mois, la durée d'ouverture et la météo sont significatif.
Je ne comprends pas trop ce que vous faites. Nous sommes dans le cas d'un GLM, et les procédures de test passent par des tests de rapport de vraisemblance. Qu'appelez-vous une ANOVA de type 2 dans ce cas ?
MarlTarma a écrit:Dois-je alors m'arrêter là et interpréter ce modèle qui contient des variables explicatives qui ne sont pas significatives, ou dois-je enlever ces variables?
Vous pouvez - oui - réjuster le modèle sans les variables non significatives.
MarlTarma a écrit:Car je vois que ça change quelque chose puisque si j'enlève les variables non significatives du modèle, les coefficients des variables restantes changent légèrement. Pour le cas présent ça ne changera pas grand chose à mon interprétation mais j'aimerai comprendre le rôle que peuvent avoir des variables non significatives dans un modèle (si elles peuvent avoir un rôle), et comment le fait de laisser ces variables change l'interprétation que l'on peut faire du modèle.
Les variables non significatives n'ont pas de rôle. Mais elle contribuent un peu - de manière non significative - à l'ajustement. Les enlever peut effectivement modifier la valeur des coefficients estimés par le modèle.
MarlTarma a écrit:Si je veux savoir en quel mois ont une influence positive sur le nombre de captures, je ne couperai donc pas aux comparaisons multiples. Je suis très ignorant dans ce domaine, mais pouvez-vous me donner une piste sur quelle méthode employer pour cela?
Il y en a plusieurs. La fonction glht() su package multcomp, par exemple, fait ceci. Il y a des discussions à ce sujet sur ce forum.
MarlTarma a écrit:D'autre part puisque j'étudie des données de comptage issues d'un même site échantillonné plusieurs fois au cours du temps, ne serai-je pas potentiellement en situation d'autocorrélation?
Oula! Si ! Toute la discussion ci-dessus devient erronée ! Vous êtes dans une procédure de données répétées. Il y a deux choix possibles. Soit partir sur un gee. Il y a un package geepack sous R qui ajuste ce genre de modèles. Soit partir sur un GLM mixte, avec le temps comme facteur aléatoire supplémentaire. Mais on part ici dans une tout autre discussion..

HTH, Eric.
avatar
Eric Wajnberg

Nombre de messages : 664
Date d'inscription : 14/09/2012

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Choix du modèle de régression linéaire et interprétation

Message par MarlTarma le Lun 13 Mar 2017 - 19:17

Je vous remercie beaucoup de votre réponse qui m'aide beaucoup, j'ai l'impression d'un peu mieux comprendre comment fonctionnent les modèles.

Lorsque je parlais d'ANOVA de Type 2, c'est une erreur de ma part : pour avoir l'effet global de chacune des variables explicatives du modèle j'utilise la fonction Anova du package {car}, qui réalise en fait des "Type 2 Wald chisquare tests". Est-ce un test approprié pour cette question? J'ai vu d'autre part que la fonction anova {stats} permet de faire un test de rapport de vraisemblance ("likelihood ratio test"), est-ce ce que vous vouliez dire par des tests de rapports de vraisemblance?

En ce qui concerne l'auto-corrélation, j'ai fais des recherches sur le sujet et, bien que je ne comprenne pas tout, je ne suis pas certain d'être en situation d'auto-corrélation : les données ont été acquises sans réelle réflexion sur la périodicité de l'échantillonnage, et donc chaque année ce sont des mois différents qui ont été échantillonnés, parfois des mois successifs, parfois à 2 ou 3 mois d'intervalle. Cependant chaque session de capture a consisté en 4 jours successifs de captures, et donc à ce niveau il y a peut-être plus de risque qu'il y ait auto-corrélation. Pour essayer de répondre à cette question, j'ai utilisé la fonction acf {stats} qui estime l’auto-corrélation des résidus aux différents niveaux de lag. Et je ne trouve rien de significatif (aucune barre ne dépasse le niveau où c'est jugé comme significatif), et il n'y a pas de structure logique de la fonction d'auto-corrélation. Cela permet-il de dire que bien qu'il y ait potentiellement de l'auto-corrélation étant donné la nature des données, aucune auto-corrélation n'est observée, et donc que l'on puisse utiliser un modèle ne prenant pas en compte le fait que l'on soit en situation de données répétées? Je ne sais pas en quelle mesure ma réflexion est recevable ou carrément bancale.

En ce qui concerne le GLM mixte, je peux mettre le temps en facteur aléatoire de deux manières différentes : soit la session de capture (groupement de 4 nuits successives), soit un identifiant de chaque nuit de capture (108 nuits au total). Tel que je comprends les choses il faut mettre l'identifiant de chaque nuit car si je mets la session il y aura une certaine redondance avec la variable fixe "mois" étant donné que selon les mois il y a eu d'une à 4 sessions de capture?

Je vous remercie en tout cas pour vos réponses qui m'ont déjà permises de ne pas complètement me tromper, ce qui n'aurait pas manqué sinon !

En vous remerciant,
Marl

MarlTarma

Nombre de messages : 8
Date d'inscription : 02/02/2017

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Choix du modèle de régression linéaire et interprétation

Message par Eric Wajnberg le Mar 14 Mar 2017 - 6:25

MarlTarma a écrit:JLorsque je parlais d'ANOVA de Type 2, c'est une erreur de ma part : pour avoir l'effet global de chacune des variables explicatives du modèle j'utilise la fonction Anova du package {car}, qui réalise en fait des "Type 2 Wald chisquare tests".
Des tests de Wald sont connus pour être peu puissants, et ne conviennent pas ici.
MarlTarma a écrit: J'ai vu d'autre part que la fonction anova {stats} permet de faire un test de rapport de vraisemblance ("likelihood ratio test"), est-ce ce que vous vouliez dire par des tests de rapports de vraisemblance?
oui
MarlTarma a écrit:En ce qui concerne l'auto-corrélation, j'ai fais des recherches sur le sujet et, bien que je ne comprenne pas tout, je ne suis pas certain d'être en situation d'auto-corrélation : les données ont été acquises sans réelle réflexion sur la périodicité de l'échantillonnage, et donc chaque année ce sont des mois différents qui ont été échantillonnés, parfois des mois successifs, parfois à 2 ou 3 mois d'intervalle. Cependant chaque session de capture a consisté en 4 jours successifs de captures, et donc à ce niveau il y a peut-être plus de risque qu'il y ait auto-corrélation. Pour essayer de répondre à cette question, j'ai utilisé la fonction acf {stats} qui estime l’auto-corrélation des résidus aux différents niveaux de lag. Et je ne trouve rien de significatif (aucune barre ne dépasse le niveau où c'est jugé comme significatif), et il n'y a pas de structure logique de la fonction d'auto-corrélation. Cela permet-il de dire que bien qu'il y ait potentiellement de l'auto-corrélation étant donné la nature des données, aucune auto-corrélation n'est observée, et donc que l'on puisse utiliser un modèle ne prenant pas en compte le fait que l'on soit en situation de données répétées? Je ne sais pas en quelle mesure ma réflexion est recevable ou carrément bancale.
Bancale, oui. La périodicité (ou non) n'est pas la question ici. Le problème est que ce sont les mêmes unités expérimentales qui sont suivies (périodiquement ou non) et qu'il y a nécessairement une structure d'autocorrélation, qu'il faut prendre en compte.
MarlTarma a écrit:
En ce qui concerne le GLM mixte, je peux mettre le temps en facteur aléatoire de deux manières différentes : soit la session de capture (groupement de 4 nuits successives), soit un identifiant de chaque nuit de capture (108 nuits au total). Tel que je comprends les choses il faut mettre l'identifiant de chaque nuit car si je mets la session il y aura une certaine redondance avec la variable fixe "mois" étant donné que selon les mois il y a eu d'une à 4 sessions de capture?
C'est à vous de voir. Vous pouvez même mettre plusieurs facteurs aléatoires dans le modèle.

HTH, Eric.
avatar
Eric Wajnberg

Nombre de messages : 664
Date d'inscription : 14/09/2012

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: Choix du modèle de régression linéaire et interprétation

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum