Régression logistique par étapes et échantillonnage

13

J'ajuste une régression logistique pas à pas sur un ensemble de données dans SPSS. Dans la procédure, j'adapte mon modèle à un sous-ensemble aléatoire qui est d'env. 60% de l'échantillon total, soit environ 330 cas.

Ce que je trouve intéressant, c'est que chaque fois que je rééchantillonne mes données, différentes variables apparaissent et disparaissent dans le modèle final. Quelques prédicteurs sont toujours présents dans le modèle final, mais d'autres apparaissent et sortent en fonction de l'échantillon.

Ma question est la suivante. Quelle est la meilleure façon de gérer cela? J'espérais voir la convergence des variables prédictives, mais ce n'est pas le cas. Certains modèles ont un sens beaucoup plus intuitif d'un point de vue opérationnel (et seraient plus faciles à expliquer aux décideurs), et d'autres ajustent légèrement les données.

En bref, comme les variables se déplacent, comment recommanderiez-vous de gérer ma situation?

Merci d'avance.

Btibert3
la source

Réponses:

16

Si vous allez utiliser une procédure pas à pas, ne rééchantillonnez pas. Créez un sous-échantillon aléatoire une fois pour toutes. Effectuez votre analyse dessus. Validez les résultats par rapport aux données bloquées. Il est probable que la plupart des variables "significatives" ne seront pas significatives.

( Edit 12/2015: Vous pouvez en effet aller au-delà d'une approche aussi simple en rééchantillonnant, en répétant la procédure par étapes et en revalidant: cela vous mènera à une forme de validation croisée. Mais dans ce cas, des méthodes plus sophistiquées de variable sélection, comme la régression de crête, le Lasso et le filet élastique sont probablement préférables à la régression pas à pas.)

Concentrez-vous sur les variables qui ont du sens, pas celles qui correspondent un peu mieux aux données. Si vous avez plus d'une poignée de variables pour 330 enregistrements, vous courez un grand risque de sur-ajustement en premier lieu. Envisagez d'utiliser des critères d'entrée et de sortie assez sévères pour la régression pas à pas. Basez-le sur AIC ou au lieu des seuils pour les tests ou les tests .CpFt

(Je suppose que vous avez déjà effectué l'analyse et l'exploration pour identifier les ré-expressions appropriées des variables indépendantes, que vous avez identifié les interactions probables et que vous avez établi qu'il existe réellement une relation approximativement linéaire entre le logit de la variable dépendante et les régresseurs. Sinon, faites ce travail préliminaire essentiel et revenez ensuite à la régression pas à pas.)

Soyez prudent de suivre les conseils génériques comme je viens de le donner, d'ailleurs :-). Votre approche doit dépendre du but de l'analyse (prédiction? Extrapolation? Compréhension scientifique? Prise de décision?) Ainsi que de la nature des données, du nombre de variables, etc.

whuber
la source
2
+1 pour souligner l'importance de l'interprétation du modèle. Je n'ajouterai rien à propos de l'approche ML non informée (ou des méthodes d'ensemble) avec des schémas de validation croisée plus complexes, car je pense que vous avez déjà dit ce qui compte vraiment ici: (1) la sélection des fonctionnalités par rééchantillonnage est difficilement interprétable isolément (c.-à-d. en comparant un résultat après l'autre), et (2) tout dépend si l'on cherche un modèle prédictif ou explicatif.
chl
Merci pour votre perspicacité. J'ai fait un présélection pour réduire mon espace de recherche et je veux simplement trouver le meilleur modèle de prédiction avec le moins de variables. Je ne jette que 7 prédicteurs dans le modèle, ce qui, si je comprends bien, devrait être correct. Je comprends l'idée de m'en tenir à un échantillon, mais d'un autre côté, mon modèle était fondamentalement différent et montre que les résultats dépendent entièrement de l'échantillon, ce qui m'a fait faire une pause.
Btibert3
@ Btibert3 À droite: lorsque les résultats varient parmi des sous-ensembles aléatoires de vos données, vous pouvez prendre cela comme une preuve que les variables indépendantes ne sont pas des prédicteurs forts ou cohérents de la variable indépendante.
whuber
12

Une question importante est "pourquoi faire pourquoi voulez-vous un modèle avec le moins de variables possible?". Si vous voulez avoir le moins de variables possible pour minimiser le coût de la collecte de données pour l'utilisation opérationnelle de votre modèle, alors les réponses données par whuber et mbq sont un excellent début.

Si les performances prédictives sont ce qui est vraiment important, alors vous feriez probablement mieux de ne faire aucune sélection de fonctionnalités du tout et d'utiliser plutôt une régression logistique régularisée (cf. régression de crête). En fait, si la performance prédictive était ce qui était de première importance, j'utiliserais la régression logistique régularisée ensachée comme une sorte de stratégie «ceinture et bretelles» pour éviter de sur-ajuster un petit ensemble de données. Millar dans son livre sur la sélection de sous-ensembles dans la régression donne à peu près ce conseil en annexe, et je l'ai trouvé excellent pour les problèmes avec beaucoup de fonctionnalités et pas beaucoup d'observations.

Si la compréhension des données est importante, il n'est pas nécessaire que le modèle utilisé pour comprendre les données soit le même que celui utilisé pour faire des prédictions. Dans ce cas, je rééchantillonnerais les données plusieurs fois et regarderais les modèles des variables sélectionnées dans les échantillons pour trouver quelles variables étaient informatives (comme le suggère mbq, si la sélection des fonctionnalités est instable, un seul échantillon ne donnera pas l'image complète), mais j'utiliserais tout de même l'ensemble de modèles de régression logistique régularisé ensaché pour les prévisions.

Dikran Marsupial
la source
1
+1 pour le pointeur vers la régression logistique régularisée. Cependant, on ne sait pas comment on pourrait officiellement «examiner les modèles» lors du rééchantillonnage des «données plusieurs fois». Cela ressemble beaucoup à l'espionnage des données et semble donc susceptible de provoquer de la frustration et des erreurs.
whuber
5
La sélection de fonctionnalités lorsque la sélection est instable sera toujours une recette de frustration et d'erreur. L'utilisation d'un seul échantillon réduit la frustration, mais augmente la probabilité d'erreur car elle vous encourage à tirer des conclusions sur les caractéristiques pertinentes du problème en fonction de ce qui fonctionne le mieux sur l'échantillon particulier que vous regardez - qui est une forme de sur- raccord. Le rééchantillonnage vous donne une idée de l'incertitude dans la sélection des caractéristiques - ce qui est souvent tout aussi important. Dans ce cas, nous ne devons pas tirer de conclusions solides sur les fonctionnalités pertinentes car il n'y a pas suffisamment de données.
Dikran Marsupial
Bon point; Je déteste quand les gens ne comptent que la moyenne du rééchantillonnage, c'est un tel gaspillage.
10

En général, il y a deux problèmes de sélection des fonctionnalités:

  • optimal minimal , où vous recherchez le plus petit ensemble de variables qui vous donne la plus petite erreur
  • tous pertinents , où vous recherchez toutes les variables pertinentes dans un problème

La convergence de la sélection des prédicteurs est dans un domaine du problème le plus pertinent, qui est extrêmement difficile et nécessite donc des outils beaucoup plus puissants que la régression logistique, des calculs lourds et un traitement très soigné.

Mais il semble que vous posiez le premier problème, vous ne devriez donc pas vous en préoccuper. Je peux généralement seconder la réponse de Whuber, mais je ne suis pas d'accord avec l'affirmation selon laquelle vous devriez abandonner le rééchantillonnage - ici, ce ne sera pas une méthode pour stabiliser la sélection des fonctionnalités, mais néanmoins ce sera une simulation pour estimer les performances d'une sélection de fonctionnalités couplée + formation , vous donnera donc un aperçu en toute confiance de votre précision.


la source
+1 Je crains que beaucoup de rééchantillonnage ne soient que déroutants et trompeurs. Le rééchantillonnage de manière contrôlée, via une validation croisée ou un échantillon de retenue pour vérification, n'est évidemment pas problématique.
whuber
6

Vous pourriez jeter un coup d'œil à l'article Stability Selection de Meinshausen et Buhlmann dans JR Statist. Soc B (2010) 72 Partie 4, et la discussion qui a suivi. Ils considèrent ce qui se passe lorsque vous divisez à plusieurs reprises votre ensemble de points de données au hasard en deux moitiés et recherchez des fonctionnalités dans chaque moitié. En supposant que ce que vous voyez dans une moitié est indépendant de ce que vous voyez dans l'autre moitié correspondante, vous pouvez prouver les limites du nombre attendu de variables faussement sélectionnées.

mcdowella
la source