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.
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.
Mes questions sont:
À 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
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)
Comment évalueriez-vous les termes d'interaction bidirectionnelle entre et disons
Comment les changements ci-dessus pour différents types de modèles
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é?
la source
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.Réponses:
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.
la source
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:
la source