Supériorité de LASSO sur la sélection vers l'avant / l'élimination vers l'arrière en termes d'erreur de prédiction de validation croisée du modèle

10

J'ai obtenu trois modèles réduits à partir d'un modèle complet original en utilisant

  • sélection avant
  • élimination en arrière
  • Technique de pénalisation L1 (LASSO)

Pour les modèles obtenus en utilisant la sélection vers l'avant / l'élimination vers l'arrière, j'ai obtenu l'estimation de validation croisée de l'erreur de prédiction en utilisant le CVlmpackage DAAGdisponible en R. Pour le modèle sélectionné via LASSO, j'ai utilisé cv.glm.

L'erreur de prédiction pour LASSO était inférieure à celles obtenues pour les autres. Le modèle obtenu via LASSO semble donc meilleur en termes de capacité prédictive et de variabilité. Est-ce un phénomène général qui se produit toujours ou est-ce un problème spécifique? Quel est le raisonnement théorique pour cela s'il s'agit d'un phénomène général?

user41512
la source
3
Assurez-vous que vous n'utilisez pas une règle de notation de précision incorrecte telle que la proportion classée correcte, car cela récompense les prédictions / modèles inappropriés. Et comparer avec la norme L2. Je parie que ce sera mieux que les 3 approches que vous avez essayées.
Frank Harrell

Réponses:

16

La sélection de modèles LASSO et avant / arrière ont tous deux des avantages et des limites. Aucune recommandation radicale ne peut être faite. La simulation peut toujours être explorée pour résoudre ce problème.

Les deux peuvent être compris dans le sens de la dimensionnalité: se référant à le nombre de paramètres du modèle et le nombre d'observations. Si vous pouviez ajuster des modèles en utilisant la sélection de modèle en arrière , vous n'aviez probablement pas . Dans ce cas, le modèle "le mieux adapté" est celui utilisant tous les paramètres ... lorsqu'il est validé en interne! C'est simplement une question de sur-ajustement.n p npnpn

Le surajustement est corrigé en utilisant la validation croisée d'échantillons fractionnés (CV) pour l'évaluation du modèle. Puisque vous ne l'avez pas décrit, je suppose que vous ne l'avez pas fait. Contrairement à la sélection pas à pas du modèle, LASSO utilise un paramètre de réglage pour pénaliser le nombre de paramètres dans le modèle. Vous pouvez corriger le paramètre de réglage ou utiliser un processus itératif compliqué pour choisir cette valeur. Par défaut , LASSO fait ce dernier. Cela se fait avec CV afin de minimiser le MSE de prédiction. Je ne suis au courant d'aucune mise en œuvre d'une sélection de modèle par étapes qui utilise des techniques aussi sophistiquées, même le BIC en tant que critère souffrirait d'un biais de validation interne. D'après mon compte, cela donne automatiquement à LASSO un effet de levier sur la sélection de modèle pas à pas "prête à l'emploi".

Enfin, la sélection de modèle pas à pas peut avoir différents critères pour inclure / exclure différents régresseurs. Si vous utilisez les valeurs de p pour le test Wald des paramètres du modèle spécifique ou le modèle résultant R ^ 2, vous ne réussirez pas bien, principalement en raison du biais de validation interne (encore une fois, pourrait être corrigé avec CV). Je trouve surprenant que ce soit toujours la façon dont ces modèles ont tendance à être mis en œuvre. L'AIC ou le BIC sont de bien meilleurs critères pour la sélection des modèles.

Il y a un certain nombre de problèmes avec chaque méthode. Les problèmes de sélection de modèle pas à pas sont bien mieux compris et bien pires que ceux de LASSO. Le principal problème que je vois avec votre question est que vous utilisez des outils de sélection de fonctionnalités pour évaluer la prédiction . Ce sont des tâches distinctes. LASSO est préférable pour la sélection de fonctionnalités ou la sélection de modèles clairsemés. La régression de crête peut donner une meilleure prédiction car elle utilise toutes les variables.

La grande force de LASSO est qu'il peut estimer des modèles dans lesquels , comme cela peut être le cas par régression pas à pas vers l'avant (mais pas vers l'arrière). Dans les deux cas, ces modèles ne peuvent être efficaces pour la prédiction que s'il existe une poignée de prédicteurs très puissants. Si un résultat est mieux prédit par de nombreux prédicteurs faibles, alors la régression de crête ou l'ensachage / renforcement surclassera à la fois la régression pas à pas vers l'avant et LASSO de loin. LASSO est beaucoup plus rapide que la régression pas à pas en avant.pn

Il y a évidemment beaucoup de chevauchement entre la sélection des fonctionnalités et la prédiction, mais je ne vous dis jamais à quel point une clé sert de marteau. En général, pour la prédiction avec un nombre clairsemé de coefficients de modèle et , je préférerais LASSO à la sélection de modèle pas à pas vers l'avant.pn

AdamO
la source
4

Vous souhaitez choisir un sous-ensemble de prédicteurs selon certains critères. Peut-être un AIC dans l'échantillon ou un R ^ 2 ajusté, ou une validation croisée, peu importe.

Vous pouvez tester chaque combinaison de sous-ensembles de prédicteurs et choisir le meilleur sous-ensemble. toutefois

  • Très longue en raison de l'explosion combinatoire des paramètres.
  • Fonctionne si vous avez plus de paramètres que d'observations dans le sens où vous testez toutes les combinaisons de prédicteurs qui donnent une solution

Vous pouvez utiliser la sélection pas à pas vers l'avant

  • Moins de temps, mais peut ne pas obtenir la meilleure combinaison absolue, en particulier. lorsque les prédicteurs sont corrélés (peut choisir un prédicteur et être incapable d'obtenir une amélioration supplémentaire lorsque l'ajout de 2 autres prédicteurs aurait montré une amélioration)
  • Fonctionne même lorsque vous avez plus de paramètres que d'observations

Vous pouvez utiliser l'élimination vers l'arrière

  • Ne fonctionne pas si vous avez plus de paramètres que d'observations, pas de bon point de départ unique (en théorie, vous pouvez partir de tous les points de départ valides, travailler en arrière, choisir le meilleur, mais ce n'est pas ce que l'on entend normalement par élimination en arrière)
  • Comme vers l'avant pas à pas, moins de temps que tous les sous-ensembles, mais peut ne pas obtenir la meilleure combinaison absolue, en particulier. lorsque les prédicteurs sont corrélés

Vous pouvez utiliser LASSO

  • Fonctionne même lorsque vous avez plus de paramètres que d'observations
  • Efficacité CPU lorsque vous avez de nombreux paramètres et explosion combinatoire de sous-ensembles
  • Ajoute la régularisation

Quant à votre question de savoir pourquoi LASSO fonctionne mieux sur vos données dans CV

  • Une possibilité est la dépendance au chemin décrite ci-dessus - LASSO peut trouver un meilleur sous-ensemble. Peut-être qu'il a eu de la chance, peut-être que LASSO en général / obtient parfois de meilleurs sous-ensembles, je ne suis pas sûr. Il existe peut-être de la littérature sur le sujet.
  • Une autre possibilité (plus probable) est que la régularisation LASSO empêche le sur-ajustement, donc LASSO fonctionne mieux en CV / hors échantillon.

En bout de ligne, LASSO vous offre une régularisation et une sélection efficace des sous-ensembles, surtout lorsque vous avez beaucoup de prédicteurs.

BTW vous pouvez faire LASSO et sélectionner votre modèle en utilisant CV (le plus courant) mais aussi en utilisant AIC ou un autre critère. Exécutez votre modèle avec régularisation L1 et sans contrainte, puis resserrez progressivement la contrainte jusqu'à ce que AIC atteigne une erreur minimale, ou CV, ou le critère de votre choix. Voir http://scikit-learn.org/stable/auto_examples/linear_model/plot_lasso_model_selection.html

Rocky McNuts
la source