Importance des prédicteurs dans la régression multiple: partiel vs coefficients standardisés

21

Je me demande quelle est la relation exacte entre le partiel et les coefficients dans un modèle linéaire et si je ne devrais utiliser qu'un seul ou les deux pour illustrer l'importance et l'influence des facteurs.R2

Pour autant que je sache, avec summaryj'obtiens des estimations des coefficients, et avec anovala somme des carrés pour chaque facteur - la proportion de la somme des carrés d'un facteur divisée par la somme de la somme des carrés plus les résidus est partielle (le code suivant est dedans ).R2R

library(car)
mod<-lm(education~income+young+urban,data=Anscombe)
    summary(mod)

Call:
lm(formula = education ~ income + young + urban, data = Anscombe)

Residuals:
    Min      1Q  Median      3Q     Max 
-60.240 -15.738  -1.156  15.883  51.380 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept) -2.868e+02  6.492e+01  -4.418 5.82e-05 ***
income       8.065e-02  9.299e-03   8.674 2.56e-11 ***
young        8.173e-01  1.598e-01   5.115 5.69e-06 ***
urban       -1.058e-01  3.428e-02  -3.086  0.00339 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1

Residual standard error: 26.69 on 47 degrees of freedom
Multiple R-squared:  0.6896,    Adjusted R-squared:  0.6698 
F-statistic: 34.81 on 3 and 47 DF,  p-value: 5.337e-12

anova(mod)
Analysis of Variance Table

Response: education
          Df Sum Sq Mean Sq F value    Pr(>F)    
income     1  48087   48087 67.4869 1.219e-10 ***
young      1  19537   19537 27.4192 3.767e-06 ***
urban      1   6787    6787  9.5255  0.003393 ** 
Residuals 47  33489     713                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1

La taille des coefficients pour «jeunes» (0,8) et «urbains» (-0,1, environ 1/8 des premiers, sans tenir compte de «-») ne correspond pas à la variance expliquée («jeunes» ~ 19500 et «urbaine» ~ 6790, soit environ 1/3).

J'ai donc pensé que j'aurais besoin de mettre à l'échelle mes données parce que je supposais que si la plage d'un facteur est beaucoup plus large que la plage d'un autre facteur, leurs coefficients seraient difficiles à comparer:

Anscombe.sc<-data.frame(scale(Anscombe))
mod<-lm(education~income+young+urban,data=Anscombe.sc)
summary(mod)

Call:
lm(formula = education ~ income + young + urban, data = Anscombe.sc)

Residuals:
     Min       1Q   Median       3Q      Max 
-1.29675 -0.33879 -0.02489  0.34191  1.10602 

Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept)  2.084e-16  8.046e-02   0.000  1.00000    
income       9.723e-01  1.121e-01   8.674 2.56e-11 ***
young        4.216e-01  8.242e-02   5.115 5.69e-06 ***
urban       -3.447e-01  1.117e-01  -3.086  0.00339 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1

Residual standard error: 0.5746 on 47 degrees of freedom
Multiple R-squared:  0.6896,    Adjusted R-squared:  0.6698 
F-statistic: 34.81 on 3 and 47 DF,  p-value: 5.337e-12

anova(mod)
Analysis of Variance Table

Response: education
          Df  Sum Sq Mean Sq F value    Pr(>F)    
income     1 22.2830 22.2830 67.4869 1.219e-10 ***
young      1  9.0533  9.0533 27.4192 3.767e-06 ***
urban      1  3.1451  3.1451  9.5255  0.003393 ** 
Residuals 47 15.5186  0.3302                      
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1    

Mais cela ne fait pas vraiment de différence, le partiel et la taille des coefficients (ce sont maintenant des coefficients standardisés ) ne correspondent toujours pas:R2

22.3/(22.3+9.1+3.1+15.5)
# income: partial R2 0.446, Coeff 0.97
9.1/(22.3+9.1+3.1+15.5)
# young:  partial R2 0.182, Coeff 0.42
3.1/(22.3+9.1+3.1+15.5)
# urban:  partial R2 0.062, Coeff -0.34

Est-il donc juste de dire que «jeune» explique trois fois plus de variance que «urbain» parce que partiel pour «jeune» est trois fois supérieur à «urbain»? R2Pourquoi le coefficient de «jeune» n'est-il pas alors trois fois supérieur à celui de «urbain» (en ignorant le signe)?

Je suppose que la réponse à cette question me donnera également la réponse à ma question initiale: Dois-je utiliser des partiels ou des coefficients pour illustrer l'importance relative des facteurs? (Ignorant la direction de l'influence - signe - pour le moment.)R2

Éditer:

L'éta-carré partiel semble être un autre nom pour ce que j'ai appelé partiel . etasq {heplots} est une fonction utile qui produit des résultats similaires:R2

etasq(mod)
          Partial eta^2
income        0.6154918
young         0.3576083
urban         0.1685162
Residuals            NA
robert
la source
Qu'essayez-vous de faire ou de montrer exactement? L'influence estimée? L'importance?
IMA
Oui, je connais les tests t et F. Je voudrais montrer l'influence estimée, pour laquelle les tests afaik t et F ne conviennent pas.
robert
1
Ma question est la suivante: dois-je utiliser le R² partiel ou les coefficients pour montrer l'influence de chaque facteur sur le résultat? Je supposais que les deux pointaient dans la même direction. Vous dites que ce n'est pas vrai parce qu'il y a une multicolinéarité dans les données. Très bien, donc quand je veux faire une déclaration telle que le facteur «jeune» influence le résultat x fois plus / est x fois plus important que le facteur «urbain», est-ce que je regarde le R² partiel ou les coefficients?
robert
1
Je ne suis pas d'accord avec @IMA. Le R partiel au carré est directement lié à la corrélation partielle, ce qui est une bonne façon d'étudier les relations ajustées à la confusion entre iv et dv.
Michael M
1
J'ai modifié votre question pour qu'elle apparaisse à nouveau sur la première page. Je serais très intéressé par une bonne réponse; si aucun n'apparaît, je pourrais même offrir une prime. Soit dit en passant, les coefficients de régression après standardisation de tous les prédicteurs sont appelés «coefficients standardisés». J'ai mis ce terme dans votre question, pour que ce soit plus clair.
amibe dit Réintégrer Monica

Réponses:

10

En bref , je n'utiliserais pas à la fois le partiel et les coefficients standardisés dans la même analyse, car ils ne sont pas indépendants. Je dirais qu'il est généralement probablement plus intuitif de comparer les relations à l'aide des coefficients normalisés, car ils se rapportent facilement à la définition du modèle (c.-à-d. Y = β X ). La partie R 2 , à son tour, est essentiellement la proportion de la variance commune unique entre le prédicteur et la variable dépendante (dv) (donc pour la première prédiction est le carré de la corrélation partielle r x 1 y . X 2 . . . X nR2Y=βXR2rx1y.x2...xn). De plus, pour un ajustement avec une très petite erreur, tous les partiels des coefficients ont tendance à 1, ils ne sont donc pas utiles pour identifier l'importance relative des prédicteurs.R2


Les définitions de la taille de l'effet

  • coefficient standardisé, - les coefficients β obtenus en estimant un modèle sur les variables standardisées (moyenne = 0, écart-type = 1).βstdβ
  • partiel - La proportion de variation résiduelle expliquée par l'ajout du prédicteur au modèle contraint (le modèle complet sans le prédicteur). Pareil que:R2

    • le carré de la corrélation partielle entre le prédicteur et la variable dépendante, en contrôlant tous les autres prédicteurs du modèle. .Rpartial2=rxiy.Xxi2
    • partiel - la proportion des sommes de carrés de type III du prédicteur à la somme des carrés attribués au prédicteur et à l'erreur SS effect / ( SS effect + SS error )η2SSeffet/(SSeffet+SSErreur)
  • - Différence de R 2 entre le modèle contraint et le modèle complet. Égal à:ΔR2R2

    • corrélation semipartiale au carré rxi(y.Xxi)2
    • pour la somme des carrés de type III effet SS / SS total - ce que vous calculiez comme R 2 partieldans la question.η2SSeffect/SStotalR2

Tous ces éléments sont étroitement liés, mais ils diffèrent quant à la façon dont ils gèrent la structure de corrélation entre les variables. Pour mieux comprendre cette différence, supposons que nous avons 3 variables standardisées (moyenne = 0, sd = 1) dont les corrélations sont r x y , r x z , r y z . Nous prendrons x comme variable dépendante et y et zx,y,zrxy,rxz,ryzxyzcomme prédicteurs. Nous allons exprimer tous les coefficients de taille d'effet en termes de corrélations afin que nous puissions voir explicitement comment la structure de corrélation est gérée par chacun. D'abord, nous énumérerons les coefficients dans le modèle de régression estimés en utilisant OLS. La formule des coefficients: β y = r x y - r y z r z xx=βyY+βzZ La racine carrée duR2partielpour les prédicteurs sera égale à:

βy=rXy-ryzrzX1-ryz2βz=rXz-ryzryX1-ryz2,
Rpartiel2

RXy.z2=rXy-ryzrzX(1-rXz2)(1-ryz2)RXz.y2=rXz-ryzryX(1-rXy2)(1-ryz2)

le est donné par:ΔR2

RXyz2-RXz2=ry(X.z)=rXy-ryzrzX(1-ryz2)RXzy2-RXy2=rz(X.y)=rXz-ryzryX(1-ryz2)

βΔR2Rpartiel2βst

anovaR2lm

AnovacarFtF(1,n)=t2(n)anova(mod)Anova(mod, type = 2)options(contrasts = c("contr.sum","contr.poly"))Anova(mod,type=3)R2etasq()pR2


Crédit

Chris Novak
la source
β=(XX)Xy
1
Vous avez raison, je voulais dire que les tests SS et t de type III pour les coefficients donnent essentiellement le même test F et la même valeur p.
Chris Novak
2
@amoeba après avoir fait quelques calculs, j'ai modifié ma réponse pour inclure vos suggestions, clarifier un peu les différences entre les deux tailles d'effet et mieux répondre à la réponse de l'OP.
Chris Novak
1
ΔR2R2R2R2
1
ΔR2Rp2ΔR2Rp2R21
amibe dit Réintégrer Monica le
8

Comme déjà expliqué dans plusieurs autres réponses et commentaires, cette question était basée sur au moins trois confusions:

  1. anova()tAnova()car

  2. R2βst

  3. R2SSeffet/(SSeffet+SSErreur)SSeffet/SStotalR2SSeffet

Une fois ces confusions clarifiées, la question demeure de savoir quelles sont les mesures les plus appropriées de l'ampleur ou de l'importance de l'effet prédictif.


Dans R, il existe un package relaimpoqui fournit plusieurs mesures d'importance relative.

library(car)
library(relaimpo)
mod <- lm(education~income+young+urban, data=Anscombe)
metrics <- calc.relimp(mod, type = c("lmg", "first", "last", "betasq", "pratt", "genizi", "car"))

En utilisant le même Anscombeensemble de données que dans votre question, cela donne les métriques suivantes:

Relative importance metrics: 

              lmg      last      first    betasq       pratt     genizi        car
income 0.47702843 0.4968187 0.44565951 0.9453764  0.64908857 0.47690056 0.55375085
young  0.14069003 0.1727782 0.09702319 0.1777135  0.13131006 0.13751552 0.13572338
urban  0.07191039 0.0629027 0.06933945 0.1188235 -0.09076978 0.07521276 0.00015460

Certaines de ces mesures ont déjà été discutées:

  • betasqsont des coefficients standardisés au carré, les mêmes valeurs que celles obtenues avec lm().
  • firstSSeffet/SStotalSSeffetanova()
  • lastR2SSeffet/SStotalSSeffetR2anova()

R2

Il y a quatre autres mesures relaimpo- et une autre (cinquième) est disponible si le package relaimpoest installé manuellement: la version CRAN exclut cette mesure en raison d'un conflit potentiel avec son auteur qui, aussi fou que cela puisse paraître, possède un brevet américain sur sa méthode . J'exécute R en ligne et n'y ai pas accès, donc si quelqu'un peut installer manuellement relaimpo, veuillez ajouter cette mesure supplémentaire à ma sortie ci-dessus pour être complet.

Deux mesures prattpeuvent être négatives (mauvaises) et genizic'est assez obscur.

Deux approches intéressantes sont lmget car.

SSeffet/SStotalSSeffet

Le second est introduit dans (Zuber & Strimmer, 2011) et possède de nombreuses propriétés théoriques attrayantes; il s'agit de coefficients standardisés au carré après que les prédicteurs ont d'abord été standardisés puis blanchis avec une transformation ZCA / Mahalanobis (c'est-à-dire blanchis tout en minimisant l'erreur de reconstruction).

2:1lmg878:1car

Bibliographie:

  1. Références sur l'importance relative sur le site d' Ulrike Grömping - dont elle est l'auteur relaimpo.

  2. Grömping, U. (2006). Importance relative de la régression linéaire dans R: The Package relaimpo . Journal of Statistical Software 17, numéro 1.

  3. Grömping, U. (2007). Estimateurs de l'importance relative dans la régression linéaire basée sur la décomposition de la variance . The American Statistician 61, 139-147.

  4. Zuber, V. et Strimmer, K. (2010). Régression haute dimension et sélection de variables à l'aide des scores CAR . Applications statistiques en génétique et biologie moléculaire 10.1 (2011): 1-27.

  5. Grömping, U. (2015). Importance variable dans les modèles de régression . Wiley Interdisciplinary Reviews: Computational Statistics, 7 (2), 137-152. (derrière le mur de paye)

amibe dit réintégrer Monica
la source
Très joli résumé avec des informations supplémentaires sur les différents coefficients d'importance. BTW, utilisez-vous en ligne ce moteur R pbil.univ-lyon1.fr/Rweb ou un autre?
ttnphns
1
J'utilise r-fiddle.org , mais je n'ai jamais rien essayé d'autre et je ne sais pas comment cela se compare. Il a l'air plutôt élégant.
amibe dit Réintégrer Monica le
Résumé très clair et informations supplémentaires sur les tailles d'effet (+1)
Chris Novak
4

Tu as écrit:

Ma question est la suivante: dois-je utiliser le R² partiel ou les coefficients pour montrer l'influence de chaque facteur sur le résultat?

Il est important de ne pas confondre deux choses ici. Il y a d'abord la question de la spécification du modèle. L'algorithme lm suppose que les hypothèses OLS sont remplies. Cela signifie entre autres que pour les estimations non biaisées, AUCUNE variable significative ne peut être manquante dans le modèle (sauf lorsqu'elle n'est pas corrélée à tous les autres régresseurs, rare).
Ainsi, dans la recherche d'un modèle, l'influence supplémentaire sur R² ou R² ajusté est bien sûr intéressante. On pourrait penser qu'il convient d'ajouter des régresseurs jusqu'à ce que le R² ajusté cesse de s'améliorer, par exemple. Il existe des problèmes intéressants avec les procédures de régression pas à pas comme celle-ci, mais ce n'est pas le sujet. En tout cas, je suppose qu'il y avait une raison pour laquelle vous avez choisi votre modèle.

CEPENDANT: cette influence supplémentaire sur le R² n'est pas identique à l'influence réelle ou totale du régresseur sur la variable indépendante, précisément à cause de la multicollinarité: si vous supprimez le régresseur, une partie de son influence sera désormais attribuée aux autres régresseurs qui y sont corrélés. Alors maintenant, la véritable influence n'est pas correctement montrée.

Et il y a un autre problème: les estimations ne sont valables que pour le modèle complet avec tous les autres régresseurs présents. Soit ce modèle n'est pas encore correct et donc la discussion sur l'influence n'a pas de sens - soit il est correct et alors vous ne pouvez pas éliminer un régresseur et continuer à utiliser les méthodes OLS avec succès.

Alors: votre modèle et l'utilisation d'OLS sont-ils appropriés? Si c'est le cas, les estimations répondent à votre question - elles sont votre meilleure estimation littérale de l'influence des variables sur la régression et la variable dépendante.
Sinon, votre premier travail consiste à trouver un modèle correct. Pour cela, l'utilisation de R² partiel peut être un moyen. Une recherche sur la spécification du modèle ou la régression pas à pas produira de nombreuses approches intéressantes dans ce forum. Ce qui fonctionne dépendra de vos données.

IMA
la source
1
Merci quatre votre réponse! Je ne suis pas sûr que votre affirmation selon laquelle "cette influence supplémentaire sur le R² n'est pas identique à l'influence réelle ou totale du régresseur sur la variable indépendante" n'est pas controversée. Le package relaimpo cran.r-project.org/web/packages/relaimpo/relaimpo.pdf utilise par exemple R² partiel "pour évaluer l'importance relative dans les modèles linéaires".
robert
1
Pensez-vous que vous pourriez fournir une référence pour votre avis que le R² ne devrait être utilisé que pour la sélection du modèle?
robert
1
@robert: La raison d'être de relaimpoest de fournir des alternatives au R ^ 2 partiel, exactement pour la raison que l'IMA donne!
Scortchi - Réintégrer Monica
1
@Scortchi: Wow, après avoir regardé dans le manuel du relaimpopackage, j'ai réalisé qu'il existe tout un monde d'approches différentes pour quantifier l'importance relative des prédicteurs dans la régression linéaire. Je suis actuellement en train de feuilleter des articles qui y sont liés ( cette préimpression de 2010 semble assez bonne jusqu'à présent), et c'est un bordel! Je ne savais pas que ce problème est si compliqué, quand j'ai offert ma prime. Il ne semble pas avoir été correctement discuté sur CV. Est-ce un sujet obscur? Si oui, pourquoi?
amibe dit Réintégrer Monica
2
@amoeba: Une réponse immédiate est que "l'importance relative des prédicteurs" n'est pas si importante pour la plupart des cas. Si vous avez un modèle qui vous convient, vous pouvez l'utiliser pour dire des choses comme fumer une cigarette par jour équivaut à manger cinq hamburgers en termes de risque de crise cardiaque - l'importance vient de l'interprétation substantielle de ce que vous modélisez; si vous comparez des modèles, vous comparez des modèles entiers - disons ceux avec et sans une paire de prédicteurs coûteux à mesurer - et n'avez pas à vous soucier de la façon dont le pouvoir prédictif pourrait être assez divisé.
Scortchi - Réintégrer Monica
3

En ce qui concerne la différence entre le coefficient de régression linéaire et la corrélation partielle, vous pouvez lire ceci , par exemple.

Cependant, la confusion exprimée dans la question semble être d'une autre nature. Il semble s'agir du type par défaut de sommes de carrés utilisées par tel ou tel progiciel statistique (sujet, discuté à plusieurs reprises sur notre site). La régression linéaire utilise ce qu'on appelle dans le calcul ANOVA Type III SS. Dans de nombreux programmes ANOVA, c'est également l'option par défaut. En Rfonction anova, il me semble (je ne suis pas un utilisateur R, donc je le suppose) que le calcul par défaut est de type I SS (un "SS séquentiel" qui dépend de l'ordre dans lequel les prédicteurs sont spécifiés dans le modèle). Ainsi, l'écart que vous avez observé et qui n'a pas disparu lorsque vous avez standardisé ("mis à l'échelle") vos variables est dû au fait que vous avez spécifié l'ANOVA avec l'option Type I par défaut.

Voici les résultats obtenus dans SPSS avec vos données:

entrez la description de l'image ici entrez la description de l'image ici entrez la description de l'image ici entrez la description de l'image ici

Vous pouvez choisir dans ces impressions que les paramètres (coefficients de régression) sont les mêmes quel que soit le type de calcul SS. Vous pouvez également remarquer que Eta partiel au carré [qui est SSeffet / (SSeffet + SSerror) et = partiel R au carré dans notre cas parce que les prédicteurs sont des covariables numériques] est entièrement identique dans le tableau des effets et des coefficients uniquement lorsque le type SS est III. Lorsque le type SS est I, seul le dernier des 3 prédicteurs, "urbain", conserve la même valeur (0,169); c'est parce que dans la séquence d'entrée des prédicteurs c'est le dernier. Dans le cas de SS de type III, l'ordre d'entrée n'a pas d'importance, comme dans la régression. Soit dit en passant, l'écart est également observé dans les valeurs de p. Bien que vous ne le voyiez pas dans mes tableaux car il n'y a que 3 chiffres décimaux dans la colonne "Sig",

Vous voudrez peut-être en savoir plus sur les différents "types de SS" dans le modèle ANOVA / linéaire. Conceptuellement, les SS de type III ou de "régression" sont fondamentaux et primordiaux. D'autres types de SS (I, II, IV, il en existe encore plus) sont des dispositifs spéciaux pour estimer les effets de manière plus complète et moins inutile que les paramètres de régression ne le permettent dans la situation des prédicteurs corrélés.

Généralement, les tailles des effets et leurs valeurs de p sont plus importantes à déclarer que les paramètres et leurs valeurs de p, à moins que l'objectif de l'étude ne soit de créer un modèle pour l'avenir. Les paramètres vous permettent de prédire, mais «influence» ou «effet» peut être un concept plus large que «force de prédiction linéaire». Pour rendre compte de l'influence ou de l'importance, d'autres coefficients sont possibles en plus de l'Eta partiel au carré. L'un est le coefficient d'abandon: l'importance d'un prédicteur est la somme résiduelle des carrés avec le prédicteur retiré du modèle, normalisé de sorte que les valeurs d'importance pour tous les prédicteurs soient égales à 1.

ttnphns
la source
+1, merci d'avoir rejoint la discussion. J'ai une question terminologique. «R partiel au carré» est défini comme SSeffet / (SSeffet + SSerror). Quel est le nom de SSeffect / SStotal? Si je comprends bien (corrigez-moi si je me trompe), si nous utilisons la décomposition SS de type III, alors ce SSeffect / SStotal sera égal à la corrélation partielle au carré entre la réponse et ce prédicteur (en contrôlant tous les autres prédicteurs). Cette quantité a-t-elle un nom? Le R2 partiel est analogue au eta carré partiel, mais pourquoi n'y a-t-il pas de nom pour l'analogue du eta carré lui-même? Je suis confus par cela.
amibe dit Réintégrer Monica
Oups, je pense que j'ai écrit un non-sens ci-dessus: la corrélation partielle au carré est SSeffect / (SSeffect + SSerror), c'est-à-dire exactement R2 partiel, correct? Pourtant, la question de savoir comment appeler SSeffect / SStotal (ce que OP a essayé de calculer dans sa question d'origine!) Reste. Faut-il simplement l'appeler eta au carré? Ou "R2 partitionné" (sachant bien entendu que pour les SS de type III, ces "partitions" ne résumeront pas au total R2)?
amibe dit Réintégrer Monica
1
Oui, SSeffect / SStotal est simplement eta au carré. Il est eta au carré du prédicteur dans ce modèle spécifique (à ne pas confondre avec eta carré marginal = eta au carré lorsque le prédicteur n'est qu'un dans le modèle = Pearson r ^ 2 d'ordre zéro, dans notre cas de prédicteurs continus).
ttnphns
1
Exactement. La corrélation des parties est (une instance spécifique de) eta. Je pense qu'il est bon donc appeler eta dans le modèle partie eta. Je ne me souviens juste d'aucun texte où je rencontre le terme "partie" ou "semi-partielle" eta. Si vous le découvrez, faites-le moi savoir.
ttnphns
1
Oui; pourquoi, je pense de la même façon. Mais r, r partiel, r semi-partiel sont des cas particuliers de l'éta correspondant. La distinction terminologique importante entre les deux, cependant, survient dans le contexte où, en outre, l'effet catégorique (factice) «non linéaire» global, nous ajoutons un effet linéaire (ou polynomial) du prédicteur comme s'il était codé numériquement. Ici, nous affichons 3 effets: Etasq combiné = Rsq linéaire + déviation par rapport à la linéarité.
ttnphns du