Je suis un peu confus quant à savoir quand vous devez ou non ajouter des termes polynomiaux à un modèle de régression linéaire multiple. Je sais que les polynômes sont utilisés pour capturer la courbure des données, mais cela semble toujours être sous la forme de:
Et si vous savez qu'il existe une relation linéaire entre et , mais une relation non linéaire entre et ? Pouvez-vous utiliser un modèle sous la forme de:
Je suppose que ma question est la suivante: est-il valable de supprimer le terme et le terme , ou devez-vous suivre la forme générique d'un modèle de régression polynomiale?
Réponses:
En plus de l'excellente réponse de @ mkt, j'ai pensé que je pourrais vous fournir un exemple spécifique afin que vous puissiez développer une certaine intuition.
Générer des données pour l'exemple
Pour cet exemple, j'ai généré certaines données à l'aide de R comme suit:
Comme vous pouvez le voir ci-dessus, les données proviennent du modèley=β0+β1∗X1+β2∗X2+β3∗X22+ ϵ , où ϵ est un terme d'erreur aléatoire normalement distribué avec une moyenne 0 et variance inconnue σ2 . En outre,β0= 1 , β1= 10 , β2= 0,4 et β3= 0,8 , tandis que σ= 1 .
Visualisez les données générées via Coplots
Étant donné les données simulées sur la variable de résultat y et les variables prédictives x1 et x2, nous pouvons visualiser ces données à l'aide de coplots :
Les coplots résultants sont indiqués ci-dessous.
Le premier coplot montre des diagrammes de dispersion de y contre x1 lorsque x2 appartient à quatre plages différentes de valeurs observées (qui se chevauchent) et améliore chacun de ces diagrammes de dispersion avec un ajustement lisse, éventuellement non linéaire dont la forme est estimée à partir des données.
Le deuxième coplot montre des diagrammes de dispersion de y par rapport à x2 lorsque x1 appartient à quatre plages différentes de valeurs observées (qui se chevauchent) et améliore chacun de ces diagrammes de dispersion avec un ajustement lisse.
Le premier coplot suggère qu'il est raisonnable de supposer que x1 a un effet linéaire sur y lors du contrôle de x2 et que cet effet ne dépend pas de x2.
Le deuxième coplot suggère qu'il est raisonnable de supposer que x2 a un effet quadratique sur y lors du contrôle de x1 et que cet effet ne dépend pas de x1.
Ajuster un modèle correctement spécifié
Les coplots suggèrent d'adapter le modèle suivant aux données, ce qui permet un effet linéaire de x1 et un effet quadratique de x2:
Construire des tracés résiduels de Component Plus pour le modèle correctement spécifié
Une fois que le modèle correctement spécifié est ajusté aux données, nous pouvons examiner les graphiques des composantes et des résidus pour chaque prédicteur inclus dans le modèle:
Ces tracés de composantes et résiduels sont présentés ci-dessous et suggèrent que le modèle a été correctement spécifié car ils ne montrent aucune preuve de non-linéarité, etc. le prédicteur correspondant et la ligne magenta solide suggérant un effet non linéaire de ce prédicteur dans le modèle.
Ajuster un modèle mal spécifié
Jouons l'avocat du diable et disons que notre modèle lm () a en fait été mal spécifié (c'est-à-dire mal spécifié), en ce sens qu'il a omis le terme quadratique I (x2 ^ 2):
Construire des tracés résiduels du composant plus pour le modèle incorrectement spécifié
Si nous devions construire des parcelles composante plus résiduelle pour le modèle mal spécifié, nous verrions immédiatement une suggestion de non-linéarité de l'effet de x2 dans le modèle mal spécifié:
En d'autres termes, comme on le voit ci-dessous, le modèle mal spécifié n'a pas réussi à capturer l'effet quadratique de x2 et cet effet apparaît dans la composante plus le tracé résiduel correspondant au prédicteur x2 dans le modèle mal spécifié.
La mauvaise spécification de l'effet de x2 dans le modèle m.mis serait également apparente lors de l'examen des graphiques des résidus associés à ce modèle par rapport à chacun des prédicteurs x1 et x2:
Comme on le voit ci-dessous, le tracé des résidus associés à m.mis par rapport à x2 présente un modèle quadratique clair, suggérant que le modèle m.mis n'a pas réussi à capturer ce modèle systématique.
Augmentez le modèle incorrectement spécifié
Pour spécifier correctement le modèle m.mis, il faudrait l'augmenter pour qu'il inclue également le terme I (x2 ^ 2):
Voici les graphiques des résidus en fonction de x1 et x2 pour ce modèle correctement spécifié:
Notez que le motif quadratique précédemment observé dans le tracé des résidus par rapport à x2 pour le modèle m.mis mal spécifié a maintenant disparu du tracé des résidus par rapport à x2 pour le modèle m correctement spécifié.
Notez que l'axe vertical de toutes les parcelles de résidus par rapport à x1 et x2 montré ici doit être étiqueté comme "résiduel". Pour une raison quelconque, R Studio coupe cette étiquette.
la source
Oui, ce que vous proposez est bien. Il est parfaitement valable dans un modèle de traiter la réponse à un prédicteur comme linéaire et à un autre comme étant polynomial. Il est également tout à fait correct de ne supposer aucune interaction entre les prédicteurs.
la source
Vous devez prendre soin d'utiliser des polynômes orthogonaux si vous souhaitez ajouter des termes polynomiaux.
Pourquoi? Sans eux, vous avez un problème ressemblant à la colinéarité . Dans certaines régions,X2 ressemblera assez à X , et une parabole fera un travail décent pour ajuster une ligne droite.
Observer:
Ce sont des polynômes dex ,X2,X3 .
Entre 0 et 1,5, les trois courbes augmentent de façon monotone et bien qu'elles se courbent différemment les unes des autres, elles donneront des ajustements de qualité similaires lorsque x est positivement corrélé avec y. En utilisant les trois dans votre code
vous utilisez essentiellement des formes redondantes pour ajuster vos données.
Les polynômes orthogonaux vous offrent essentiellement une marge de manœuvre supplémentaire lors de l'ajustement, et chaque polynôme est essentiellement indépendant des autres.
Trois polynômes de degré 1, 2 et 3 générés par la fonction poly () dans R.
Peut-être qu'au lieu de les considérer explicitement comme des polynômes, vous les considérez plutôt comme des «composants de tendance» ou quelque chose:
Les polynômes orthogonaux impliquent beaucoup de calculs difficiles, mais heureusement, vous n'avez vraiment besoin de savoir que deux choses:
la source
poly
car, si vous essayezpredict
avec, il réajustera les polynômes sur l'échantillon de prédiction; c'est-à-dire que nous obtenons des ordures.Aucune règle ne dit que vous devez utiliser toutes vos variables. Si vous essayez de prédire le revenu, et que vos variables caractéristiques sont le SSN, les années de scolarité et l'âge, et que vous souhaitez supprimer le SSN parce que vous vous attendez à ce que toute corrélation entre celui-ci et le revenu soit fausse, c'est votre jugement à faire. Un modèle n'est pas invalide simplement parce qu'il existe d'autres variables que vous auriez pu théoriquement inclure, mais pas. Décider des termes polynomiaux à inclure n'est qu'une des nombreuses décisions concernant la sélection des fonctionnalités.
Bien que les modèles polynomiaux commencent souvent avec tous les termes inclus, c'est juste pour que tous puissent être évalués quant à la quantité qu'ils ajoutent au modèle. S'il semble qu'un terme particulier soit généralement surajusté, il peut être supprimé dans les itérations ultérieures du modèle. La régularisation, comme la régression au lasso, peut supprimer automatiquement des variables moins utiles. En règle générale, il est préférable de commencer avec un modèle qui contient trop de variables et de le réduire à celles qui sont les plus utiles, plutôt que de commencer uniquement avec les variables sur lesquelles le modèle devrait s'appuyer, et éventuellement de passer à côté d'une relation sur laquelle vous ne m'attendais pas.
la source