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 :

Calcul des proba par individu � partir d'un modele obtenu par regression logistique


Sujet :

SAS STAT

  1. #1
    Membre averti
    Homme Profil pro
    dataminer
    Inscrit en
    Juin 2015
    Messages
    39
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (�le de France)

    Informations professionnelles :
    Activit� : dataminer

    Informations forums :
    Inscription : Juin 2015
    Messages : 39
    Par d�faut Calcul des proba par individu � partir d'un modele obtenu par regression logistique
    Bonjour � tous,

    j'ai cherch� sur les autres sujets du forum mais je n'ai pas trouv� clairement ma r�ponse...

    j'ai construit 1 mod�le pour 1 score d'app�tence via 1 r�gression logistique. J'obtiens donc 1 mod�le (pas tr�s bon mais je n'ai pas le choix), avec coeff, odd-ratio etc,... qui pr�dit ma variable � expliquer binaire en fonction de variables qualitatives uniquement.


    Mon code :

    ods graphics on;
    proc logistic data=lib.ech_app outest=outest;
    class Region2 (ref="Ile-de-France")
    categorie_vendeurs2 (ref="Bon en 2016")
    financement_choisi (ref="Financement A")
    Mod_le_du_v_hicule2 (ref="208")
    Tranche_Age_Vehicule2 (ref="Neuf")
    Tranche_Age_Conducteur2 (ref="26 � 35 ans")
    profession2 (ref="Retrait�")
    / param=ref ;

    model cible(event='1') = Region2
    categorie_vendeurs2
    financement_choisi
    Mod_le_du_v_hicule2
    Tranche_Age_Vehicule2
    Tranche_Age_Conducteur2
    profession2

    / selection=stepwise rsquare lackfit ctable outroc=lib.table_roc sle=0.1 sls=0.1; *sle crit�re
    significativ� d'entr�e pour variable, sls pareil pour enlever;
    output out=prediction pred=score predprobs=I ;
    run;


    J'obtiens donc dans la table outest la variable score (cad une proba entre 0 et 1 qui indique si l'individu est susceptible d'adh�rer au produit d'apr�s le mod�le construit, on est bien d'accord?), et cela pour chaque individu, du style:

    Individu Region vendeur financement modele_vehicule age vehic age conducteur profession score
    Albert ouest bon A autre 4 � 8 ans 26 � 35 autre 0,690257869

    OK cool !

    Mais moi quand je recalcule le score � la main je n'obtiens pas la m�me chose que SAS...

    On a score s=exp(Prevision)/(1+exp(Prevision))

    avec
    prev= 0.235354573 +
    +recod_region_centre*(-0.180050314)
    +recod_region_est*(-0.15255249)
    +recod_region_nord*(-0.012792332)
    +recod_region_ouest*(-0.124823431)
    +recod_region_sud_est*(-0.199070468)
    +recod_region_sud_ouest*(-0.090388005)
    +recod_region_ile*1

    +recod_vendeurs_bon*1
    +recod_vendeurs_faible*(-0.249896708)
    +recod_vendeurs_non_classe*(-0.108215194)

    +recod_financement_credipar*(-0.858278869)
    +recod_financement_non_credipar*1

    +recod_Modele_208*1
    +recod_Modele_2008*(-0.263126222)
    +recod_Modele_308*(-0.295083787)
    +recod_Modele_3008*(-0.176075831)
    +recod_Modele_108*(0.162555191)
    +recod_Modele_207*(-0.020595787)
    +recod_Modele_5008*(-0.183801131)
    +recod_Modele_partner*(0.481436233)
    +recod_Modele_508*(-0.550313811)
    +recod_Modele_206*(0.098061553)
    +recod_Modele_autre*(-0.046590492)

    +recod_age_vehic_neuf*1
    +recod_age_vehic_1a*(0.111919614)
    +recod_age_vehic_2a*(0.251171015)
    +recod_age_vehic_4a*(0.485113634)
    +recod_age_vehic_8a*(0.968681093)

    +recod_age_conduc_moins25*(-0.69031397)
    +recod_age_conduc_26a*1
    +recod_age_conduc_36a*(0.381845762)
    +recod_age_conduc_46a*(0.236820454)
    +recod_age_conduc_56a*(0.131546542)
    +recod_age_conduc_66a*(0.148383349)
    +recod_age_conduc_85a*(-0.051607511)

    +recod_profession_retraite*1
    +recod_profession_autre*(0.148294092)

    Les coefficients au dessus sont les coefficients pr�sents dans la table outest de la regression logistique, associ�es pour chaque modalit� de variables.

    Probl�me : je mets quoi comme coefficient pour les modalit�s de r�f�rence ??? ici j'ai mis 1, mais ce ne serait pas plut�t 0 ?? je ne sais pas car quand j'essaie de recalculer le score avec les 2 m�thodes je n'obtiens pas les m�mes valeurs que SAS...


    Je vous remercie de votre aide !!

  2. #2
    Membre �m�rite
    Avatar de Haache
    Homme Profil pro
    Doctorant & Ing�nieur Statiaticien Economiste
    Inscrit en
    Mars 2014
    Messages
    349
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 33
    Localisation : Canada

    Informations professionnelles :
    Activit� : Doctorant & Ing�nieur Statiaticien Economiste

    Informations forums :
    Inscription : Mars 2014
    Messages : 349
    Billets dans le blog
    8
    Par d�faut
    Bonjour
    j'ai bien compris le probl�me. J'ai eu exactement ce probl�me et j'ai compris apr�s avoir r�fl�chi pendant longtemps. Je pense que ce n'est pas tr�s bien calcul� c'est la raison pour laquelle vous avez des r�sultats diff�rents.
    Je serai assez long mais je pense que mon message va permettre de mieux comprendre.

    J'aborde le probl�me par un exemple tr�s simple. On sait tous que les score sont calcul�s par la formule suivante :

    Formule math�matique

    La question, comme vous l'avez pos�, est : comment g�rer les modalit�s de r�f�rences ?
    Je suppose que j'estime le type des clients par deux variables : la classe ayant les modalit�s (A B et C avec r�f�rence C) et le sexe (M et F avec r�f�rence F)
    Je propose les donn�es suivantes d�j� sous forme de tableau de fr�quence :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    data test;input Type $ Classe $ Sexe $ @@ freq;
    cards;
    BON A M 50 BON A F 80 BON B M 12 BON B F 50
    BON C M 12 BON C F 14 MAUVAIS A M 22 MAUVAIS A F 5
    MAUVAIS B M 48 MAUVAIS B F 113 MAUVAIS C M 8 MAUVAIS C F 77
    ; run;
    J'estime donc mon mod�le en omettant d'abord l'option param=ref de la requ�te Class;
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    proc logistic data = Test;freq freq;
    class type(ref="MAUVAIS") Classe(ref="C") sexe(ref="F");
    model type = Classe Sexe;
    output out=prediction pred=score predprobs=I ;
    run;
    Voici les r�sultats de l'estimation ainsi que les sorties des score ( c'est la variable Estimated Probability)
    Nom : estim1.PNG
Affichages : 2032
Taille : 10,4 Ko Nom : sortie.PNG
Affichages : 2015
Taille : 30,2 Ko

    Amusons-nous � calculer les scores. Il y a une sortie importante qu'il ne faut pas ignorer. C'est le codage des modalit�s. C'est ce codage qui nous permet de connaitre les coefficients des modalit�s de r�f�rence.
    Nom : codage1.PNG
Affichages : 1938
Taille : 4,2 Ko
    Ce tableau nous dit juste que la variable de r�f�rence C a pour coefficient Coef(ClasseC)=-Coef(ClasseA)-coef(ClasseB) = -1.0136 et le coefficient de la r�f�rence est coef(femme)=-coef(homme)=0.2095. C'est ce que signifie les -1 affich�s sur la ligne de C et de F. Devant C on a -1 deux fois qui font r�f�rence aux deux autres modalit�s (A et B). Devant F il y a -1 une fois (car il y a une seule modalit� diff�rente de C).

    Ainsi pour pr�dire le score d'un individu femme qui est de la classe C on fera :

    Formule math�matique

    Le r�sultat est tr�s proche de celui calcul� par SAS. Si vous automatisez les calculs vous aurez exactement le r�sultat. Ici c'est � cause des arrondis que c'est diff�rent. Donc les coefficients de la variables de r�f�rence se calculent � partir du codage.
    Mais si vous mettez l'option param=ref, vous imposez � SAS que les variables de r�f�rences auront z�ro comme coefficient. Dans ce cas, on a le codage suivant :
    Nom : Codage2.PNG
Affichages : 1958
Taille : 4,4 Ko
    Ici les coefficients des variables de r�f�rences sont nuls et les estimations du mod�le sont aussi diff�rentes. Voici le r�sultat ci-dessous avec l'option param=ref
    Nom : Estim2.PNG
Affichages : 1981
Taille : 10,4 Ko
    Essayons de calculer le score du m�me type d'individu.

    Formule math�matique

    On a exactement les r�sultats du tableau de sortie. Ici �a tombe juste parce qu'il n'y pas d'arrondis. Essayer de programmer les deux m�thodes vous aurez les m�mes r�sultats avec la table de sortie. Donc il faut lire le codage pour pouvoir faire les calculs. Mais si vous mettez l'option param=ref vous supposez en m�me temps que les modalit�s de r�f�rences sont nulles.

    Je sais que j'ai �t� tr�s long mais �a permet de mieux comprendre. J'ai pris mon temps pour bien �crire car j'ai �t� aussi confront� � ce probl�me.
    • Faites un tour sur mon siteweb professionnel www.aristideelysee.16mb.com Des codes dans la section "media et code" pouvant vous aider que vous pouvez aussi partager sur les r�seaux sociaux.
    • Visiter mon blog en cliquant ici! Des techniques, astuces et macros pour l'analyse quantitative.

  3. #3
    Membre averti
    Homme Profil pro
    dataminer
    Inscrit en
    Juin 2015
    Messages
    39
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (�le de France)

    Informations professionnelles :
    Activit� : dataminer

    Informations forums :
    Inscription : Juin 2015
    Messages : 39
    Par d�faut
    Bonjour,

    d�j� merci � vous de vous int�resser � mon probl�me !!

    Pas de soucis pour la longueur

    Je n'avais pas pens� � l'impact qu'aurais math�matiquement parlant l'utilisation d'une classe de r�f�rence ! Amusant comme on en apprend tous les jours !

    j'avais bien calcul� avec la r�f�rence � 0, et le petit �cart me perturbait mais les erreurs d'arrondis semblent logiques.


    Une autre question me vient en t�te. Imaginons que cette diff�rence ne soit pas d� � des erreurs d'arrondis et qu'on ait 1 ecart syst�matique (relativement constant, disons 3-4%) entre la vraie proba(calcul� par SAS) et la proba calcul� fausse(par moi). �tant donn� que le score est calcul� par le rapport de l'expo sur 1+ l'expo, l'�cart entre la vrai proba et la proba fausse serait relativement "gomm�" non ? on aurait juste 1 d�calage des valeurs de la prevision ?

    Merci pour tout en tout cas

  4. #4
    Membre �m�rite
    Avatar de Haache
    Homme Profil pro
    Doctorant & Ing�nieur Statiaticien Economiste
    Inscrit en
    Mars 2014
    Messages
    349
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 33
    Localisation : Canada

    Informations professionnelles :
    Activit� : Doctorant & Ing�nieur Statiaticien Economiste

    Informations forums :
    Inscription : Mars 2014
    Messages : 349
    Billets dans le blog
    8
    Par d�faut
    Mais c'est le score qui est la probabilit� ici. Donc d�j� le calcule de la proba est donn� par

    Formule math�matique

    Je ne comprends pas tr�s bien la question. La probabilit� int�gre d�j� les exponentielles. Et si je devine ce que vous vouliez dire c'est comme si les petits �carts de X*BETA ne devraient pas influencer la Probabilit� (score) calcul�e ? Oui �a va influencer � cause de 1 + qui est au d�nominateur. Ce c'est pas comme si les erreurs au num�rateur seront simplifi�es par celles du d�nominateurs. Si l'�cart est grand dans les X*BETA ce sera aussi grand dans le P quand bien m�me il y a le rapport.

    Comme exemple. Imaginons que XBETA = 1.0 (vraie valeur) et vous avez obtenu 1.1. Regardons ce qu'il en est des probabilit�s (scores)

    Formule math�matique

    Alors que :

    Formule math�matique
    • Faites un tour sur mon siteweb professionnel www.aristideelysee.16mb.com Des codes dans la section "media et code" pouvant vous aider que vous pouvez aussi partager sur les r�seaux sociaux.
    • Visiter mon blog en cliquant ici! Des techniques, astuces et macros pour l'analyse quantitative.

  5. #5
    Membre averti
    Homme Profil pro
    dataminer
    Inscrit en
    Juin 2015
    Messages
    39
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (�le de France)

    Informations professionnelles :
    Activit� : dataminer

    Informations forums :
    Inscription : Juin 2015
    Messages : 39
    Par d�faut
    Ce que je voulais dire c'est que m�me si mes proba calcul�s �taient fausses � cause d'un d�calage constant (plus grand que le score sorti par sas), alors la pr�vision calcul� par moi auraient quelques points de proba en plus.

    Merci en tout cas !

+ R�pondre � la discussion
Cette discussion est r�solue.