Comment vérifier si mon modèle de régression est bon

10

Une façon de trouver la précision du modèle de régression logistique à l'aide de «glm» consiste à trouver le tracé AUC. Comment vérifier la même chose pour le modèle de régression trouvé avec la variable de réponse continue (famille = «gaussienne»)?

Quelles méthodes sont utilisées pour vérifier dans quelle mesure mon modèle de régression correspond aux données?

user1140126
la source
Vous voudrez peut-être jeter un œil à l' r-squaredétiquette et à l' goodness-of-fitétiquette ..
Macro
2
La famille "gaussienne" avec un lien linéaire n'est qu'une régression des moindres carrés ordinaires (OLS); les méthodes pour vérifier de tels ajustements sont probablement discutées dans mille questions sur ce site (je n'exagère pas).
whuber
Ce fil est pertinent: stats.stackexchange.com/q/414349/121522
Rétablir Monica le

Réponses:

15

Je suggérerais une brève recherche sur les " diagnostics du modèle de régression linéaire " pour commencer. Mais voici quelques-unes que je vous suggère de vérifier:

Assurez-vous que les hypothèses sont satisfaites de manière satisfaisante

  • Utilisez le nuage de points ou la composante plus le graphique résiduel pour examiner la relation linéaire entre le ou les prédicteurs indépendants et la variable dépendante.

  • Composez un graphique avec une valeur résiduelle standardisée par rapport à la valeur prédite et assurez-vous qu'il n'y a pas de point extrême avec un résidu très élevé, et que la répartition du résidu est largement similaire le long de la valeur prédite, ainsi que la répartition largement égale au-dessus et en dessous de la moyenne du résidu, zéro.

  • Vous pouvez également changer l'axe des y en résiduel . Ce graphique permet d'identifier la variance inégale.2

  • Réexaminez la conception de l'étude pour vous assurer que l'hypothèse d'indépendance est raisonnable.

  • Récupérez le facteur d'inflation de la variance (VIF) ou les statistiques de tolérance pour examiner la colinéarité possible.

Examiner les points d'influence potentiels

  • Consultez les statistiques telles que Cook's D, DFits ou DF Beta pour savoir si un certain point de données modifie considérablement vos résultats de régression. Vous pouvez en trouver plus ici .

Examiner le changement dans les statistiques et ajustéR2R2

  • Étant le rapport de la somme de régression des carrés à la somme totale des carrés, peut vous dire combien de% de variabilité de votre variable dépendante sont expliqués par le modèle.R2
  • Le ajusté peut être utilisé pour vérifier si la somme supplémentaire des carrés provoquée par mes prédicteurs supplémentaires vaut vraiment les degrés de liberté qu'ils prendront.R2

Vérifier l'interaction nécessaire

  • S'il existe un prédicteur indépendant principal, avant de faire une interprétation de son effet indépendant, vérifiez s'il interagit avec d'autres variables indépendantes. L'interaction, si elle n'est pas ajustée, peut fausser votre estimation.

Appliquez votre modèle à un autre ensemble de données et vérifiez ses performances

  • Vous pouvez également appliquer la formule de régression à d'autres données distinctes et voir dans quelle mesure elles prédisent. Un graphique comme un nuage de points et des statistiques comme le pourcentage de différence par rapport à la valeur observée peuvent servir de bon début.
Penguin_Knight
la source
2
(+1): Réponse très complète! Si vous utilisez R, plot.lmpeut vous donner la plupart des graphiques de diagnostic mentionnés par Penguin_Knight.
Zach
4

J'aime effectuer une validation croisée de mes modèles de régression pour voir dans quelle mesure ils se généralisent aux nouvelles données. Ma métrique de choix est l'erreur absolue moyenne sur les données de validation croisée, mais l' erreur quadratique moyenne est plus courante et tout aussi utile.

Je ne trouve pas que R2 soit une bonne mesure de l'adéquation de votre modèle avec les données d'entraînement, car presque toutes les mesures d'erreur calculées sur les données d'entraînement seront sujettes à un ajustement excessif. Si vous devez calculer R2 sur l'ensemble d'entraînement, je vous suggère d'utiliser R2 ajusté .

Zach
la source
1

Vous pouvez utiliser pour examiner dans quelle mesure votre modèle correspond aux données d'entraînement. Cela vous indiquera quel pourcentage de la variance des données est expliqué par le modèle.R2

Je suggère d'utiliser RMSE (racine quadratique moyenne) de vos prédictions sur votre ensemble de test par rapport à la valeur réelle. Il s'agit d'une méthode standard pour signaler l'erreur de prédiction d'une variable continue.

BGreene
la source
1
@Macro Mais la question demandait à l'origine une métrique de performance pour une régression OLS avec des erreurs gaussiennes. Il vient d'une régression logistique.
Erik
@Erik, merci, j'ai mal lu. Quoi qu'il en soit, en ce qui concerne la première partie, je ne pense pas que , isolément, puisse être utilisé pour "vérifier si mon modèle de régression est bon", pour reprendre les termes de l'OP. Votre modèle pourrait échouer lamentablement à prédire efficacement sur la grande majorité des données tout en ayant un élevé . Voir ici pour un exemple - dans l'exemple (1), il n'y a presque pas de puissance prédictive mais est toujours élevé. R2R2R2
Macro
@Macro, je suis d'accord avec vos commentaires mais visais une explication simple pour pointer le PO dans la bonne direction
BGreene
0

J'ai l'habitude de vérifier la forme fonctionnelle de mon estimateur de paramètres en traçant une estimation non paramétrique (par exemple une régression du noyau) ou semi-paramétrique et en la comparant à la courbe ajustée paramétrique. Je pense que c'est dans la première étape souvent plus rapide (et peut-être plus perspicace) que d'inclure des termes d'interaction ou des termes d'ordre supérieur.

Le package R np fournit de nombreuses fonctions non paramétriques et semi-paramétriques, et sa vignette est bien écrite: http://cran.r-project.org/web/packages/np/vignettes/np.pdf

Arne Jonas Warnke
la source