IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SAS STAT Discussion :

PROC LOGISTIC avec sélection pas à pas


Sujet :

SAS STAT

  1. #1
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 35
    Points : 35
    Points
    35
    Par défaut PROC LOGISTIC avec sélection pas à pas
    Bonjour à tous,

    Mon objectif est de réaliser une sélection conjointe des variables qualitatives les plus discriminantes pour mon modèle. J'ai donc opté pour une PROC LOGISTIC avec l'option SELECTION=STEPWISE. Mais j'ai beaucoup de mal à comprendre son déroulement. Par exemple, si j'inclus 10 variables dans le modèle, seulement 5 sont testées dans la procédure pas à pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
                                     Summary of Stepwise Selection
     
                                 Effect                            Number       Score        Wald
         Step  Entered               Removed                 DF        In  Chi-Square  Chi-Square
     
            1  CO_FBE_SIREN                                  90         1    799.5155
            2  CO_CODE_APE                                  440         2   1243.9553
            3  CO_FBE_NOM                                    21         3    225.7321
            4  CO_APE_DB                                    282         4    548.5448
            5                        CO_APE_DB              418         3                238.2241
    Au final, seules les 3 premières variables sont retenues. Pourquoi les autres n'apparaissent pas dans la liste des étapes ?

    Merci d'avance,
    Mark

  2. #2
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    Avril 2008
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Formateur R/SAS/statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 064
    Points : 4 478
    Points
    4 478
    Par défaut
    Dans FORWARD, l'algorithme est le suivant :
    1. Etape 0 : le modèle ne contient que la constante
    2. Etape 1 : parmi les 10 variables proposées, SAS sélectionne celle qui améliore le + le modèle de l'étape 0 (==> la plus discriminante à elle seule)
    3. ...
    4. Etape N : parmi les x variables non encore incluses dans le modèle, SAS sélectionne celle qui améliore le plus le modèle de l'étape N-1

    L'étape N n'est réalisée que si l'amélioration du modèle est significative (test du rapport de vraisemblance entre le modèle N-1 et le modèle N). Un critère d'arrêt est donc qu'il n'y a plus de variables disponibles qui améliorent de manière significatives le modèle.

    Dans STEPWISE comme ici, après chaque étape d'inclusion sur la logique ci-dessus, il y a un test supplémentaire : une variable parmi celles déjà incluses peut-elle être éliminée du modèle sans avoir de diminution significative de la qualité ?
    Cette opération permet d'éviter d'avoir dans un même modèle des variables trop redondantes (si une combinaison de variables nouvellement incluses fait doublon avec une autre, celle-ci peut être sortie du modèle).

    Dans ton exemple, il y a 4 étapes d'inclusion sur la logique FORWARD (rien ne mérite d'être sorti des modèles 1 à 3) puis, après inclusion de la 4e variable, il s'avère qu'elle peut ressortir (les p-values des tests d'inclusion et d'élimination ne sont pas symétriques : voir les options SLENTRY et SLSTAY).

    Personnellement, je préfère ne faire que des FORWARD, avec un SLENTRY assez haut (pour inclure plus que nécessaire) et ensuite prendre le modèle avec un critère de qualité (AIC ou BIC) minimum.

    Par ailleurs dans ton exemple, je vois des nombres de coefficients qui me font froid dans le dos : tu comptes vraiment faire un modèle avec 551 coeffs dedans ? Ou c'était juste pour fournir un exemple ???

    Bon courage.
    Olivier

    PS : pourquoi ne pas poster cette question dans la section SAS/STAT ?

  3. #3
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 35
    Points : 35
    Points
    35
    Par défaut
    Bonjour Olivier,

    Merci pour ta réponse. D'accord, en fait SAS n'affiche que les étapes où une variable meilleure a pu être sélectionnée, il ne considère pas comme étape les tests avec des variables rejetées. Ceci indique que j'ai très peu de variables qualitatives pertinentes au final. Tu penses que cela vaut le coup de spécifier SLENTRY avec une valeur supérieure à 0.05 pour conserver plus de variables ? D'après les sorties de SAS, il semble que c'est le test de Wald qui est utilisé pour discriminer entre les modèles.

    Pour ce qui est de ta question, les degrés de liberté indiquent juste le nombre de modalité de mes variables qualitatives. Par exemple, la variable CO_CODE_APE représente le code APE des entreprises, et il y en a beaucoup de différents. Je ne pense pas qu'il soit possible de regrouper ces modalités, elles sont vraiment spécifiques à chaque type d'entreprise. Mais en quoi est-ce que ça pose problème dans une régression logistique ?

    Merci,
    Mark

  4. #4
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    Avril 2008
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Formateur R/SAS/statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 064
    Points : 4 478
    Points
    4 478
    Par défaut
    Sur ton cas précis, Mark, je trouve que le modèle est déjà bien trop complexe ! Et que s'il y a peu de variables retenues, elles sont très (exagérément ?) détaillées.
    Les codes APE peuvent être regroupés selon plusieurs niveaux par des nomenclatures emboîtées. C'est sûr que les modèles seront moins bons si tu n'utilises que le niveau secteur (21 valeurs distinctes) mais ils seront sûrement plus interprétables.
    Tu t'imagines en train de commenter 500 coefficients pour expliquer comment réagit ton modèle selon les caractéristiques de l'entreprise ? Même s'il ne sert qu'à la prédiction, un modèle doit rester interprétable ! Et robuste, d'ailleurs, ce qu'il a peu de chances d'être avec autant de degrés de liberté.

  5. #5
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 35
    Points : 35
    Points
    35
    Par défaut
    En effet, beaucoup des variables qualitatives dont je dispose présentent de nombreuses modalités. Mais je tiens à préciser que dans mon cas, l'objectif n'est pas d'interpréter les coefficients mais de construire un score. Tout ce qui m'importe est d'extraire une proba à partir de la régression logistique (ou d'un autre modèle de scoring).

    Cela dit, ta remarque est très intéressante car je me suis déjà demandé s'il fallait utiliser les variables qualitatives telles quelles. Je me rends compte que la procédure LOGISTIC est extrêmement lente sur mes variables. Mais y a-t'il un intérêt statistique à regrouper les modalités ? C'est une opération assez délicate qui demande souvent des connaissances fonctionnelles. Par exemple, je ne connaissais pas les nomenclatures emboitées.

  6. #6
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    Avril 2008
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Activité : Formateur R/SAS/statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 064
    Points : 4 478
    Points
    4 478
    Par défaut
    Dans toutes les applications de scoring que j'ai pu construire, il y avait un besoin final de savoir (au moins grossièrement) ce qui se passait dans le modèle, en plus de besoin primordial de cracher de la probabilité.

    Oui, il y a un intérêt à limiter le nombre de modalités et donc de coefficients : c'est de construire un modèle robuste. En limitant les degrés de liberté, on force le modèle à s'intéresse au comportement général des individus, alors qu'en lui fournissant de trop nombreux degrés de liberté, on lui permet d'ajuster des cas particuliers au détriment du comportement moyen.

    Et oui, c'est un boulot de regrouper les modalités. C'est un boulot énorme, malheureusement nécessaire. Bon courage !

  7. #7
    Nouveau membre du Club
    Inscrit en
    Septembre 2006
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 35
    Points : 35
    Points
    35
    Par défaut
    Ok, merci beaucoup pour tes éclairages. Je vais m'atteler dès à présent au pénible travail du regroupement des modalités.

    Bonne fin de journée !
    Mark

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Proc logistic avec plusieurs interactions
    Par TenenCamara dans le forum SAS STAT
    Réponses: 3
    Dernier message: 20/07/2015, 10h49
  2. Problème de lenteur sur une proc avec EF mais pas sur la base
    Par Oberown dans le forum Entity Framework
    Réponses: 0
    Dernier message: 14/02/2013, 16h49
  3. [WD15E] COMBO - "Avec sélection en affichage" ne fonctionne pas
    Par Hemgé dans le forum WinDev
    Réponses: 0
    Dernier message: 02/07/2012, 15h49
  4. PROC LOGISTIC, avec variables categorielles
    Par debutant14 dans le forum SAS STAT
    Réponses: 2
    Dernier message: 26/12/2008, 11h43
  5. [Kylix] Projet avec fenetre marche pas
    Par Therich dans le forum EDI
    Réponses: 1
    Dernier message: 11/07/2003, 12h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo