Quand supprimer les variables insignifiantes?

9

Je travaille sur un modèle de régression logistique. J'ai vérifié le résumé du modèle qui est construit sur 5 variables indépendantes dont l'une n'est pas significative avec une valeur P de 0,74. Je souhaite savoir si nous supprimons directement la variable ou existe-t-il un autre moyen de vérifier sa signification ?

Un de mes aînés a suggéré de faire une transformation logarithmique de la variable insignifiante et de rechercher ensuite une corrélation. Est-ce que cela compte pour vérifier sa signification?

model <- glm(Buy ~ a_score + b_score+ c_score+lb+p, data = history, family = binomial)

Toutes les variables s'avèrent significatives avec 2 ou 3 étoiles à part a_score qui est montré insignifiant.


la source
Quel est l'objectif de votre exercice de construction de modèles? Êtes-vous intéressé par les statistiques inférentielles, par exemple pour un article académique, ou par la prévision?
Stephan Kolassa

Réponses:

42

Permettez-moi d'abord de demander ceci: quel est l'objectif du modèle? Si vous souhaitez uniquement prédire si un client achètera, les tests d'hypothèse statistique ne sont pas vraiment votre principale préoccupation. Au lieu de cela, vous devriez valider votre modèle en externe via une procédure de validation / test sur des données invisibles.

Si, au lieu de cela, vous souhaitez examiner les facteurs qui contribuent à la probabilité d'achat d'un client, il n'est pas nécessaire de supprimer les variables qui ne rejettent pas la valeur nulle (en particulier de manière progressive). Vraisemblablement, vous avez inclus une variable dans votre modèle parce que vous pensiez (d'après l'expérience passée ou l'opinion d'experts) qu'elle avait joué un rôle important dans la décision d'un client d'acheter. Le fait que la variable n'ait pas rejeté la valeur null ne rend pas votre modèle mauvais, cela signifie simplement que votre échantillon n'a pas détecté un effet de cette variable. C'est parfaitement ok.

Demetri Pananos
la source
3
A voté pour l'excellence de la réponse.
James Phillips
8
+1 La suppression des prédicteurs potentiellement liés au résultat (même s'ils sont «insignifiants») est délicate dans la régression logistique, étant donné son biais inhérent aux variables omises . La suppression d'un prédicteur lié au résultat peut entraîner un biais dans les estimations des coefficients des prédicteurs retenus, même si les prédicteurs retenus ne sont pas corrélés avec le prédicteur supprimé.
EdM
3
C'est en effet une réponse très claire.
gented
2

Consultez les pages d'aide pour step(), drop1()et add1(). Ceux-ci vous aideront à ajouter / supprimer des variables basées sur AIC. Cependant, toutes ces méthodes sont quelque peu défectueuses dans leur dépendance au chemin. Une meilleure façon serait d'utiliser les fonctions du package pénalisé ou glmnet pour effectuer une régression au lasso.


la source
-1

Quelles sont les corrélations entre les variables indépendantes? C'est moins important pour la prédiction pure, mais si vous voulez obtenir des informations inférentielles, il est important que les variables indépendantes soient assez non corrélées. En règle générale, lorsque vous utilisez la régression logistique dans un environnement professionnel, les informations inférentielles sur les variables utilisées ainsi qu'une bonne prédiction sont ce que les parties prenantes recherchent.

De plus, une autre bonne raison de supprimer des variables est la parcimonie du modèle. Certaines raisons en sont à des fins d'examen interne, de réglementation légale et de facilité de mise en œuvre. Il est donc très souhaitable de trouver le plus petit ensemble de variables qui donnent de bonnes informations commerciales et de bonnes prévisions. Par exemple, si vous développez un modèle de crédit, chaque variable est soumise à un examen juridique, chaque variable doit être disponible et retourner immédiatement des valeurs lorsqu'elle est appelée pour noter le prêt, et les parties prenantes (qui ne sont généralement pas versées dans la construction de modèles) ont tendance ne pas vouloir regarder des modèles compliqués chargés de variables.

Il peut également être utile d'essayer une forêt aléatoire pour avoir une idée de l'importance des variables et également de vérifier le pouvoir prédictif avec et sans toutes les variables.

Enfin, vous devriez avoir une bonne raison de transformer une variable. Lancer chaque transformation contre une variable jusqu'à ce que vous en trouviez une qui vous donne le résultat souhaité est un bon moyen d'obtenir un modèle de surcapacité qui fonctionne mal sur les nouvelles données.

eps
la source