Régression logistique G. Gasso, S. Canu 1 novembre 2016 G. Gasso, S. Canu Régression logistique 1 / 22
Plan 1 Introduction 2 Modèle 3 Estimation des paramètres Critère Estimation Algorithme 4 Conclusion Annexe G. Gasso, S. Canu Régression logistique 2 / 22
Introduction 1 1 1 1 1 1 1 1 2 4 6 8 12 14 16 1 1 1 1 1 1 1 1 2 4 6 8 12 14 16 1 1 1 1 1 1 1 1 Discrimination et probabilité a priori Discrimination : problème de reconnaissance de caractères Classe C 1 : 3 contre Classe C 2 : 8 Quelle est la probabilité a priori Pr(C 1 ) que cette image soit un 8? G. Gasso, S. Canu Régression logistique 3 / 22
Probabilité a postériori, cote et score Quelle est la probabilité Pr(C 1 /x) que chaque image soit un 3? 2 2 2 2 2 x = 4 6 8 4 6 8 4 6 8 4 6 8 4 6 8 12 12 12 12 12 14 14 14 14 14 16 1 16 1 16 1 16 1 Décision de Bayes : D(x) = 16 { 1 C 1 C 2 si autrement Pr(C 1 /x) Pr(C 2 /x) > 1 Quelle «cote» accorde-t-on à la décision (odds ratio)? cote(x) = Pr(C 1/x) Pr(C 2 /x) = Pr(C 1/x) 1 Pr(C 1 /x) Score de Bayes ( ) Pr(C1 /x) score(x) = log 1 Pr(C 1 /x)
Probabilité a postériori, cote et score : quelles valeurs? La probabilité Pr(C 1 /x) [0, 1] La «cote» : cote(x) = Pr(C 1/x) Pr(C 2 /x) = ( ) score(x) = log Pr(C1 /x) 1 Pr(C 1 /x) Pr(C 1/x) 1 Pr(C 1 /x) [0, [ ], [ La décision D(x) : {C 1, C 2 } ou encore {1, 0} Remarque : la règle de décision de Bayes peut encore s écrire D(x) = { C 1 si ( ) score(x) = log Pr(C1 /x) 1 Pr(C 1 /x) > 0 C 2 autrement
Du score aux probabilités : les fonctions logit et logistique s : le score de Bayes p : la probabilité a posteriori Pr(C 1 /x) p s = score = log 1 p p = exps 1 + exp s = 1 exp s +1 s, la fonction logit 8 6 4 2 0 2 4 6 8 0 0.2 0.4 0.6 0.8 1 p p, la fonction logistique 1 0.8 0.6 0.4 0.2 0 6 4 2 0 2 4 6 s=score Plus le score est grand, plus la probabilité Pr(C 1 /x) est proche de 1
Introduction Récapitulation La règle de décision requiert uniquement la connaissance du score ( ) Pr(C1 /x) score(x) = log 1 Pr(C 1 /x) La fonction de décision est D(x) = sign(score(x)) Objectifs de la régression logistique trouver directement un modèle du score score(x) = log ( ) Pr(C1 /x) 1 Pr(C 1 /x) Eviter de déterminer les lois conditionnelles p(x/c k ) et les probabilités a priori Pr(C k ) afin d en déduire les probabilités a posteriori Pr(C k /x) G. Gasso, S. Canu Régression logistique 7 / 22
Modèle Modèle pour la régression logistique Modèle linéaire On représente le score par un modèle linéaire log Pr(C 1/x) Pr(C 2 /x) = [1 x ]θ = φ θ Expression des probabilités a posteriori Pr(C 1 /x) = exp φ θ 1 + exp φ θ et Pr(C 2 /x) = 1 1 + exp φ θ car Pr(C 1 /x) + Pr(C 2 /x) = 1 Remarque : si x R d, on a θ et φ R d+1 G. Gasso, S. Canu Régression logistique 8 / 22
Modèle Régression logistique Illustration des probabilités a posteriori Pr(C 1 /x) = expφ θ 1+exp φ θ Pr(C 2 /x) = 1 1+exp φ θ 1 1 0.8 0.8 P Y/X (Y=1/X=x) 0.6 0.4 P Y/X (Y=2/X=x) 0.6 0.4 0.2 0.2 0 0 0 0 x a T θ x a T θ Estimation des paramètres Paramètres : vecteur θ Optimisation des paramètres : maximisation de la vraisemblance à partir de données D = {(x i, y i )},,N G. Gasso, S. Canu Régression logistique 9 / 22
Estimation des paramètres Critère Des données à la vraisemblance Données {(x i, y i )},,N i.i.d. de loi jointe P(y i, x i ) Vraisemblance Λ(x 1,, x N ) = Λ(θ; x 1,, x N ) = Log-Vraisemblance L(θ; x 1,, x N ) = N P(y i, x i ) N Pr(y i /x i ; θ) p X (x i ) d après Bayes log(pr(y i /x i ; θ)) + log(p X (x i )) Maximisation de la log-vraisemblance conditionnelle Le 2 e terme de la log-vraisemblance étant indépendante de θ, min θ L(θ; x 1,, x N ) min θ J(θ) avec J(θ) = log(pr(y i /x i ; θ)) G. Gasso, S. Canu Régression logistique / 22
Estimation des paramètres Critère Critère à optimiser Notations posons p i = Pr(y i = C 1 /x i ; θ). Remarque : Pr(y i = C 2 /x i ; θ) = 1 p i soit la variable z telle que z i = 1 si y i = C 1 et z i = 0 si y i = C 2 Le critère J peut s écrire alors ( N ) J(θ) = z i log(p i ) + (1 z i ) log(1 p i ) Or p i = J(θ) = expφ i 1+exp φ i θ. On a alors θ z i φ i θ + z i log(1 + exp φ i θ ) + (1 z i ) log(1 + exp φ i θ ) J(θ) = z i φ i θ + log(1 + exp φ i θ ) avec θ R d+1 G. Gasso, S. Canu Régression logistique 11 / 22
Estimation des paramètres Estimation Estimation des paramètres Estimation des paramètres par calcul de la solution de min J(θ) θ Critère : J(θ) = N z iφ i θ + N log(1 + expφ i θ ) 6 cout logistique cout charnière cout quadratique 4 3 2 1 0 4 3 2 1 0 1 2 3 4 Utilisation de méthodes de descente : gradient ou Newton G. Gasso, S. Canu Régression logistique 12 / 22
Estimation des paramètres Estimation Gradient et Hessien Gradient a et hessien du critère a. Voir annexe Critère : J(θ) = N z iφ i θ + N log(1 + expφ i θ ) Gradient g = θ J(θ) g = z i φ i + g = φ i exp φ i θ 1 + exp φ i θ φ i (z i p i ) avec p i = expφ i θ Matrice hessienne H = 2 J(θ) θ θ H = φ i φ i p i (1 p i ) 1 + exp φ i θ G. Gasso, S. Canu Régression logistique 13 / 22
Estimation des paramètres Estimation Gradient et Hessien : forme matricielle Posons z 1 z 2 z =., p = p 1 p 2. RN, Φ = 1 x 1 1 x 2. RN (d+1) z N p N 1 x N Soit la matrice diagonale W R N N telle que W ii = p i (1 p i ) On montre qu on a gradient g = Φ (z p) Hessien H = Φ W Φ G. Gasso, S. Canu Régression logistique 14 / 22
Estimation des paramètres Estimation Solution de la régression logistique Méthode de Newton θ t+1 = θ t Ht 1 g t Remarque : le gradient et le hessien au point θ t sont donnés par g t = Φ (z p t ) H t = Φ W t Φ où p t et W t sont calculés à partir de p t i = En combinant ces éléments, on a alors expφ i 1+exp φ i ( 1 θ t+1 = θ t + Φ W t Φ) Φ (z p t ) θ t θ t G. Gasso, S. Canu Régression logistique 1 / 22
Estimation des paramètres Estimation Solution de la régression logistique Réécriture de la solution ( ) 1 θ t+1 = Φ W t Φ Φ W t r t avec r t = Φθ t + Wt 1 (z p t ) r est la sortie ajustée du modèle de régression logistique puisque Φθ t est le vecteur de sortie et (z p t ) l erreur à l itération t On s apercoit qu à chaque itération, on résoud un problème de moindres carrés pondérés. En effet θ t+1 est solution du problème suivant θ t+1 = argmin θ (r t Φθ) W t (r t Φθ) G. Gasso, S. Canu Régression logistique 16 / 22
Estimation des paramètres Algorithme Algorithme Entrées : la matrice des données X R N d et le vecteur des labels y R N Sortie : l estimation du vecteur de paramètres θ 1 former la matrice Φ = [1 X ], le vecteur z tq z i = 1 si y i = 1 et 0 sinon 2 Initialisation : t = 0 et θ t = 0. 3 Répéter Former le vecteur p t tq p t (i) = expφ i 1+exp φ i θ t θ 0, i = 1,, N Former la matrice W t = diag(p 1 (1 p 1 ) p N (1 p N )) Former le vecteur r t = Φθ t + W 1 t (z p t ) Calculer la nouvelle estimation des paramètres t = t + 1 4 Jusqu à convergence θ t+1 = ( Φ W t Φ ) 1 Φ W t r t G. Gasso, S. Canu Régression logistique 17 / 22
Estimation des paramètres Algorithme Illustration 2 1. 1 Classe 1 Classe 2 Dec frontier 0. 0 0. 1 1. 0. 0. 0. 0. 2 3 2 1 0 1 2 G. Gasso, S. Canu Régression logistique 18 / 22
Estimation des paramètres Algorithme Exploitation du modèle Modèle de régression logistique A la fin de l algorithme, on a l estimation des paramètres ˆθ On en déduit : score(x) = φ ˆθ avec φ = [ 1 x ] Probabilités a posteriori Pr(C 1 /x) = expφ ˆθ 1+exp φ ˆθ et Pr(C 2 /x) = 1 φ 1 + exp ˆθ Classification d un nouveau point x l 1 Calculer score(x l ) = φ l ˆθ avec φ l = [ 1 x l ] 2 Affecter le point x l à C 1 si score(x l ) > 0 ou à C 2 autrement 3 Remarque : on affecte x l à C 1 si p l > 1/2 avec p l = expφ l ˆθ 1+exp φ l ˆθ G. Gasso, S. Canu Régression logistique 19 / 22
Conclusion Récapitulation Théorie bayésienne de la décision Coût 0-1 : décision basée sur la comparaison des probabilités a posteriori mais nécessite la connaissance des lois conditionnelles et a priori Régression logistique modélise directement le rapport des probabilités connaissance des lois n est plus nécessaire approche discriminative Estimation des paramètres du modèle Maximimisation de la log-vraisemblance...... par la méthode de Newton G. Gasso, S. Canu Régression logistique 20 / 22
Conclusion simple et précis : bonne prédiction modèle très utilisé : détection de fraudes, scoring probabilités mais non parcimonieux... flexible : de nombreuses généralisations et notamment au cas multiclasse passe à l échelle Pour en savoir plus : http://www.stat.cmu.edu/~cshalizi/uada/12/lectures/ch12.pdf http://www.math.univ-toulouse.fr/~besse/wikistat/pdf/st-m-modlin-reglog.pdf https://stat.duke.edu/courses/spring13/sta2.001/lec/lec20.pdf http://www.cs.berkeley.edu/~russell/classes/cs194/f11/lectures/cs194%20fall%202011%20lecture%2006.pdf et le livre pages 120 et 121...
Annexe Calcul du gradient par dérivée directionnelle On suppose θ R d+1, h R d+1 et ɛ R J(θ) = z i φ i θ + log(1 + exp φ i θ ) ( ϕ(ɛ) = J(θ + ɛh) = z i φ i (θ + ɛh) + log 1 + exp φ i ) (θ+ɛh) = z i φ i θ ɛ z i φ i h + log(1 + exp φ i θ ɛφ exp i ϕ (ɛ) = z i φ φ i h exp φ i θ ɛφ exp i h i h + 1 + exp φ θ ɛφ i h exp i h ) ϕ (0) = z i φ exp φ i θ φ i h + i h 1 + exp φ θ i exp φ i θ φi = z i φ i + h 1 + exp φ θ i La dérivée directionnelle étant ϕ (0) on en déduit alors que le gradient du critère est exp φ i θ φi g = z i φ i + = exp φ i θ z i φ i + p i φ i avec p i = 1 + exp φ θ i 1 + exp φ θ i G. Gasso, S. Canu Régression logistique 22 / 22