B-Splines VS polynômes d'ordre supérieur en régression


10

Je n'ai pas d'exemple ou de tâche spécifique en tête. Je suis juste nouveau sur l'utilisation des b-splines et je voulais mieux comprendre cette fonction dans le contexte de régression.

Supposons que nous voulons évaluer la relation entre la variable de réponse et certains prédicteurs . Les prédicteurs incluent certaines variables numériques ainsi que certaines variables catégorielles.yx1,x2,...,xp

Disons qu'après l'ajustement d'un modèle de régression, l'une des variables numériques, par exemple est significative. Une étape logique par la suite consiste à évaluer si des polynômes d'ordre supérieur, par exemple: et sont nécessaires afin d'expliquer correctement la relation sans surajustement.x1x12x13

Mes questions sont:

  1. À quel moment choisissez-vous entre des b-splines ou un simple polynôme d'ordre supérieur. par exemple dans R:

    y ~ poly(x1,3) + x2 + x3
    

    contre

     y ~ bs(x1,3) + x2 + x3
    
  2. Comment pouvez-vous utiliser des tracés pour informer votre choix entre ces deux et ce qui se passe si ce n'est pas vraiment clair à partir des tracés (par exemple: en raison de quantités massives de points de données)

  3. Comment évalueriez-vous les termes d'interaction bidirectionnelle entre et disonsx2x3

  4. Comment les changements ci-dessus pour différents types de modèles

  5. Envisageriez-vous de ne jamais utiliser de polynômes d'ordre élevé et de toujours ajuster des b-splines et de pénaliser la grande flexibilité?



Étant donné le niveau de développement mgcv, pourquoi ne pas utiliser des modèles additifs (généralisés). La sélection de la fluidité est automatique et les méthodes inférentielles sont bien développées.
generic_user

Réponses:


17

Je ne considère généralement que les splines plutôt que les polynômes. Les polynômes ne peuvent pas modéliser les seuils et sont souvent indésirables à l'échelle mondiale, c'est-à-dire que les observations à une plage du prédicteur ont une forte influence sur ce que le modèle fait à une plage différente ( Magee, 1998, The American Statistician et Frank Harrell's Regression Modeling Strategies ). Et bien sûr, les splines restreintes qui sont linéaires en dehors des nœuds extrêmes sont meilleures pour l'extrapolation, ou même l'intrapolation à des valeurs extrêmes des prédicteurs.

Un cas où vous voudrez peut-être envisager des polynômes est quand il est important d'expliquer votre modèle à un public non technique. Les gens comprennent mieux les polynômes que les splines. (Edit: Matthew Drury souligne que les gens peuvent penser qu'ils comprennent mieux les polynômes que les splines. Je ne prendrai pas parti sur cette question.)

Les tracés ne sont souvent pas très utiles pour décider entre différentes manières de traiter la non-linéarité. Mieux vaut faire une validation croisée. Cela vous aidera également à évaluer les interactions ou à trouver une bonne pénalisation.

Enfin, ma réponse ne change pas avec le type de modèle, car les points ci-dessus sont valables pour tout modèle statistique ou ML.


Merci beaucoup pour votre réponse, elle a été très utile. Juste une question de suivi rapide. Existe-t-il un moyen "à la pointe de la technologie" pour trouver les nœuds? Ma meilleure supposition serait de 1) Utiliser l'intuition, par exemple: si la variable représente le temps en termes de mois, utilisez des nœuds tous les 6 ou 12? 2) introduire une séquence qui parcourt la plage de la variable et utiliser la validation croisée pour trouver les nœuds optimaux peut-être?
Vasilis Vasileiou

8
Les gens pensent qu'ils comprennent mieux les polynômes que les splines.
Matthew Drury

3
Concernant le placement des nœuds: la validation croisée est une approche, mais pour être honnête, je pense que les résultats seront assez insensibles pour connaître le placement, tant que les nœuds sont placés de manière raisonnable et ne se regroupent pas trop. Frank Harrell a un tableau avec des emplacements de nœuds heuristiques en termes de quantiles de la distribution des prédicteurs dans les stratégies de modélisation de régression .
Stephan Kolassa

1
Bien que votre réponse soit totalement valable dans ce contexte, votre affirmation est très forte étant donné que de nombreux processus du monde réel peuvent être mieux modélisés par des polynômes.
koalo

6

Dans la section 7.4.5 de "Les éléments de l'apprentissage statistique", il est dit que les splines donnent souvent des résultats supérieurs à la régression polynomiale, car:

  • Il produit des ajustements flexibles;
  • Produit des estimations plus stables;
  • Les polynômes peuvent produire des résultats indésirables aux limites.
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.