• Aucun résultat trouvé

A2DI: Régression logistique

N/A
N/A
Protected

Academic year: 2022

Partager "A2DI: Régression logistique"

Copied!
125
0
0

Texte intégral

(1)

A2DI: Régression logistique

John Klein

Université de Lille - CRIStAL UMR CNRS 9189

John Klein (Lille1) A2DI 1 / 50

(2)

dévie pas deErresp.

Les solutions minimisantErrtrain au sens de la théorie de la décision pour desfonctions de perte classiques tournent autour desolutions probabilistes reposant sur la connaissance de la distributionpY|X Si, on cherche directement pY|X, on parle de modèlediscriminatif.

John Klein (Lille1) A2DI 2 / 50

(3)

En théorie on veut minimiser Erresp.

En pratique on minimiseraErrtrain tout en s’assurant que Errtrain ne dévie pas deErresp.

Les solutions minimisantErrtrain au sens de la théorie de la décision pour desfonctions de perte classiques tournent autour desolutions probabilistes reposant sur la connaissance de la distributionpY|X Si, on cherche directement pY|X, on parle de modèlediscriminatif.

La régression logistiqueoffre une solution de cette nature pour un problème de classification.

John Klein (Lille1) A2DI 2 / 50

(4)

1 Origines du modèle

2 Descente de gradient

3 Descente de gradient stochastique

4 Conclusions

John Klein (Lille1) A2DI 3 / 50

(5)

Reprenons un exemplehabituel :

Soit un problème de classification avecY={0; 1}où 0 représente l’hypothèse qu’uncrédit n’est pas accordé et 1 qu’un crédit est accordé.

John Klein (Lille1) A2DI 4 / 50

(6)

l’hypothèse qu’uncrédit n’est pas accordé et 1 qu’un crédit est accordé.

Soit Xl’espace des attributs brutes où chaque dimensionxj est un nombre réel représentant un information du style : salaire,découvert max,endettement, etc.

John Klein (Lille1) A2DI 4 / 50

(7)

Reprenons un exemplehabituel :

Soit un problème de classification avecY={0; 1}où 0 représente l’hypothèse qu’uncrédit n’est pas accordé et 1 qu’un crédit est accordé.

Soit Xl’espace des attributs brutes où chaque dimensionxj est un nombre réel représentant un information du style : salaire,découvert max,endettement, etc.

On se doute qu’un scoredu style :

score=w1×salaire+w2×decouvert+w3×endettement+b est pertinent pour décider de l’attribution du crédit..

John Klein (Lille1) A2DI 4 / 50

(8)

l’hypothèse qu’uncrédit n’est pas accordé et 1 qu’un crédit est accordé.

Soit Xl’espace des attributs brutes où chaque dimensionxj est un nombre réel représentant un information du style : salaire,découvert max,endettement, etc.

On se doute qu’un scoredu style :

score=w1×salaire+w2×decouvert+w3×endettement+b est pertinent pour décider de l’attribution du crédit.. à condition que les paramètresw1,w2,w3, et b soient bien réglés !

John Klein (Lille1) A2DI 4 / 50

(9)

Partir sur cette idée revient à choisir unmodèle linéaire.

.. mais, lescore n’est ni uneclasse, ni une probabilité d’appartenance à une classe.

Avec le perceptron, on avait décidé d’appliquer la fonctionsignau score :

John Klein (Lille1) A2DI 5 / 50

(10)

repose sur l’hypothèse deséparabilité linéairequi n’est pas réaliste en pratique.

John Klein (Lille1) A2DI 6 / 50

(11)

Adoptons une solution plus réaliste :

y n’est pas directement déductible de score(x).

On autorise donc des réponsesbruitées et on cherchepY|score(x). CommeY|X=xest binaire, on sait queY|X=x∼Ber(µ(x)) avec µ∈[0; 1].

Pourquoi ne pas faire en sorte que le scoresoit la probabilité d’appartenance à la classe 1 ?

score(x) =µ(x). (1)

Il suffit de faire en sorte que score(x)∈[0; 1] !

John Klein (Lille1) A2DI 7 / 50

(12)

John Klein (Lille1) A2DI 8 / 50

(13)

Une fonction qui permet d’obtenir cela est la fonction sigmoïde.

La fonctionsigmoïde sgmest une fonction continue de R dans [0; 1], telle que

sgm(z) = 1

1 +e−z. (2)

John Klein (Lille1) A2DI 8 / 50

(14)

telle que

sgm(z) = 1

1 +e−z. (2)

Voici le graphe de la fonctionsigmoïde :

-1 1

1

z sgm(z)

John Klein (Lille1) A2DI 8 / 50

(15)

Le modèle complet de la régression logistiqueest :

Y|X=x ∼ Ber(sgm(score(x))), (3)

Y|X=x ∼ BersgmwT·x+b (4)

John Klein (Lille1) A2DI 9 / 50

(16)

θ=

w1

... wd

b

(5)

John Klein (Lille1) A2DI 10 / 50

(17)

Soit θ le vecteur qui contienttous les paramètresdu modèle :

θ=

w1

... wd

b

(5)

Selon le modèle de la régression logistique, quelle valeur deθexplique le mieux l’observation d’un couple x(i),c(i)?

John Klein (Lille1) A2DI 10 / 50

(18)

θ=

w1

... wd

b

(5)

Selon le modèle de la régression logistique, quelle valeur deθexplique le mieux l’observation d’un couple x(i),c(i)?

−→ Celle qui maximise pY|X=x(i)

c(i)=

sgmwT ·x+b sic(i)= 1

1−sgmwT ·x+b sic(i)= 0. (6)

John Klein (Lille1) A2DI 10 / 50

(19)

Reformulons sous une forme plus compacte : pY|X=x(i)

c(i)=sgmwT ·x(i)+bc

(i)

×1−sgmwT·x(i)+b1−c

(i)

. (7)

John Klein (Lille1) A2DI 11 / 50

(20)

pY|X=x(i) c(i) =sgm wT ·x(i)+b × 1−sgm wT·x(i)+b . (7)

Selon le modèle de la régression logistique, quelle valeur deθexplique le mieux tout mon ensemble d’apprentissage ?

John Klein (Lille1) A2DI 11 / 50

(21)

Reformulons sous une forme plus compacte : pY|X=x(i)

c(i)=sgmwT ·x(i)+bc

(i)

×1−sgmwT·x(i)+b1−c

(i)

. (7)

Selon le modèle de la régression logistique, quelle valeur deθexplique le mieux tout mon ensemble d’apprentissage ?

−→ Celle qui maximise la vraisemblance :

John Klein (Lille1) A2DI 11 / 50

(22)

pY|X=x(i) c(i) =sgm wT ·x(i)+b × 1−sgm wT·x(i)+b . (7)

Selon le modèle de la régression logistique, quelle valeur deθexplique le mieux tout mon ensemble d’apprentissage ?

−→ Celle qui maximise la vraisemblance : L(θ) =

n

Y

i=1

sgmwT·x(i)+bc

(i)

×1−sgmwT ·x(i)+b1−c

(i)

(8)

John Klein (Lille1) A2DI 11 / 50

(23)

Passons à la NLL(θ) =

n

X

i=1

c(i)logsgmwT·x(i)+b+1−c(i)log1−sgmwT ·x(i)+b. (9)

John Klein (Lille1) A2DI 12 / 50

(24)

X

i=1

c(i)logsgmwT·x(i)+b+1−c(i)log1−sgmwT ·x(i)+b. (9) Cette équation peut s’interprêter comme l’entropie croiséemoyenne entre :

la distribution empirique des classes pour le seul échantillon c(i) : ˆ

p(i)(c) =Ic(i)(c) et

John Klein (Lille1) A2DI 12 / 50

(25)

Passons à la NLL(θ) =

n

X

i=1

c(i)logsgmwT·x(i)+b+1−c(i)log1−sgmwT ·x(i)+b. (9) Cette équation peut s’interprêter comme l’entropie croiséemoyenne entre :

la distribution empirique des classes pour le seul échantillon c(i) : ˆ

p(i)(c) =Ic(i)(c) et

la distributionprédite par notre modèle pY|X=x(i)(c) =Berfθx(i).

John Klein (Lille1) A2DI 12 / 50

(26)

X

i=1

c(i)logsgmwT·x(i)+b+1−c(i)log1−sgmwT ·x(i)+b. (9) Cette équation peut s’interprêter comme l’entropie croiséemoyenne entre :

la distribution empirique des classes pour le seul échantillon c(i) : ˆ

p(i)(c) =Ic(i)(c) et

la distributionprédite par notre modèle pY|X=x(i)(c) =Berfθx(i).

NLL(θ) =

n

X

i=1

Hpˆ(i), pY|X=x(i)

, (10)

= n×Errtrain (11)

John Klein (Lille1) A2DI 12 / 50

(27)

Passons à la NLL(θ) =

n

X

i=1

c(i)logsgmwT·x(i)+b+1−c(i)log1−sgmwT ·x(i)+b. (12) Posons :

x(i)+ =

x1(i)

... xd(i)

1

(13)

On a NLL(θ)

=−

n

X

i=1

c(i)log 1 1 +e−θT·x(i)+

!

+1−c(i)log 1− 1 1 +e−θT·x(i)+

! . (14)

John Klein (Lille1) A2DI 13 / 50

(28)

n

X

i=1

c(i)log

1 +e−θT·x(i)+

1−c(i)log

e−θ ·x+ 1 +e−θT·x(i+)

. (15)

John Klein (Lille1) A2DI 14 / 50

(29)

Au final,

NLL(θ) =

n

X

i=1

1−c(i) θT ·x(i)+−logsgmθT·x(i)+. (16)

John Klein (Lille1) A2DI 15 / 50

(30)

NLL(θ) =X

i=1

1−c(i) θT ·x(i)+−logsgmθT·x(i)+. (16) Cette fonction estconvexemais il n’y pas de solution explicite au problème de minimisation :

arg min

θ

NLL(θ).

John Klein (Lille1) A2DI 15 / 50

(31)

Au final,

NLL(θ) =

n

X

i=1

1−c(i) θT ·x(i)+−logsgmθT·x(i)+. (16) Cette fonction estconvexemais il n’y pas de solution explicite au problème de minimisation :

arg min

θ

NLL(θ).

On va donc devoir utiliser unalgorithme d’optimisation.

John Klein (Lille1) A2DI 15 / 50

(32)

John Klein (Lille1) A2DI 16 / 50

(33)

Modèles linéaires :bilan

Régression Linéaire Perceptron Régression Logistique

John Klein (Lille1) A2DI 16 / 50

(34)

Régression Linéaire Perceptron Régression Logistique fθ(x) wT·x+b signwT·x+b sgmwTvx+b Pred.

John Klein (Lille1) A2DI 16 / 50

(35)

Modèles linéaires :bilan

Régression Linéaire Perceptron Régression Logistique fθ(x) wT ·x+b signwT ·x+b sgmwTvx+b Pred.

Tâche Régression Classification Classification

John Klein (Lille1) A2DI 16 / 50

(36)

Régression Linéaire Perceptron Régression Logistique fθ(x) wT ·x+b signwT ·x+b sgmwTvx+b Pred.

Tâche Régression Classification Classification

Sortie valeur classe proba de classe

John Klein (Lille1) A2DI 16 / 50

(37)

Modèles linéaires :bilan

Régression Linéaire Perceptron Régression Logistique fθ(x) wT ·x+b signwT ·x+b sgmwTvx+b Pred.

Tâche Régression Classification Classification

Sortie valeur classe proba de classe

Perte Quadratique 0-1 Entropie croisée

John Klein (Lille1) A2DI 16 / 50

(38)

Régression Linéaire Perceptron Régression Logistique

John Klein (Lille1) A2DI 17 / 50

(39)

Plan du chapitre

1 Origines du modèle

2 Descente de gradient

3 Descente de gradient stochastique

4 Conclusions

John Klein (Lille1) A2DI 18 / 50

(40)

Impossible de calculer le MLE analytiquement.

John Klein (Lille1) A2DI 19 / 50

(41)

Retour à larégression logistique : Prochain défi :minimiser la NLL

Impossible de calculer le MLE analytiquement.

On va utiliser unedescente de gradient.

John Klein (Lille1) A2DI 19 / 50

(42)

Pause Optim!

John Klein (Lille1) A2DI 20 / 50

(43)

Minimisation de la NLL pardescente de gradient

Pause Optim!

Cet algorithme repose sur une mise à jouritérative deθ selon : θt+1 ←−θtη× d

dθNLL(θ),

John Klein (Lille1) A2DI 20 / 50

(44)

Pause Optim!

Cet algorithme repose sur une mise à jouritérative deθ selon : θt+1 ←−θtη× d

dθNLL(θ), avecη un paramètre de convergence, appelélearning rate.

John Klein (Lille1) A2DI 20 / 50

(45)

Minimisation de la NLL pardescente de gradient : principe graphique

Pause Optim!

John Klein (Lille1) A2DI 21 / 50

(46)

Pause Optim!

Quand η est bien choisi, l’algorithme fonctionne ainsi :

John Klein (Lille1) A2DI 21 / 50

(47)

Minimisation de la NLL pardescente de gradient : principe graphique

Pause Optim!

Quand η est bien choisi, l’algorithme fonctionne ainsi :

John Klein (Lille1) A2DI 21 / 50

(48)

Pause Optim!

John Klein (Lille1) A2DI 22 / 50

(49)

Minimisation de la NLL pardescente de gradient : principe graphique

Pause Optim!

Quand η est choisitrop petit:

John Klein (Lille1) A2DI 22 / 50

(50)

Pause Optim!

Quand η est choisitrop petit:

John Klein (Lille1) A2DI 22 / 50

(51)

Minimisation de la NLL pardescente de gradient : principe graphique

Pause Optim!

John Klein (Lille1) A2DI 23 / 50

(52)

Pause Optim!

Quand η est choisitrop grand :

John Klein (Lille1) A2DI 23 / 50

(53)

Minimisation de la NLL pardescente de gradient : principe graphique

Pause Optim!

Quand η est choisitrop grand :

John Klein (Lille1) A2DI 23 / 50

(54)

Pause Optim! Même explication en2D

John Klein (Lille1) A2DI 24 / 50

(55)

Minimisation de la NLL pardescente de gradient : principe graphique

Pause Optim!

John Klein (Lille1) A2DI 25 / 50

(56)

Pause Optim!

N’y a-t-il pas un moyen intelligent de choisirη?

John Klein (Lille1) A2DI 25 / 50

(57)

Minimisation de la NLL pardescente de gradient : principe graphique

Pause Optim!

N’y a-t-il pas un moyen intelligent de choisirη? Oui, en le rendant itératif selon :

ηt = η

d2

2NLL(θt) (17)

John Klein (Lille1) A2DI 25 / 50

(58)

Pause Optim!

ηt=η× d2

dθ2NLL(θt)

!−1

(18)

John Klein (Lille1) A2DI 26 / 50

(59)

Minimisation de la NLL pardescente de gradient : principe graphique

Pause Optim!

Cette façon de calculer ηt est appeléeméthode de Newton.

John Klein (Lille1) A2DI 27 / 50

(60)

Pause Optim!

Cette façon de calculer ηt est appeléeméthode de Newton.

Le scalaireη est en général fixé à 1.

John Klein (Lille1) A2DI 27 / 50

(61)

Minimisation de la NLL pardescente de gradient : principe graphique

Pause Optim!

Cette façon de calculer ηt est appeléeméthode de Newton.

Le scalaireη est en général fixé à 1.

d2

2NLL(θt) est en général une matrice dite Hessienne.

John Klein (Lille1) A2DI 27 / 50

(62)

Pause Optim!

Cette façon de calculer ηt est appeléeméthode de Newton.

Le scalaireη est en général fixé à 1.

d2

2NLL(θt) est en général une matrice dite Hessienne.

Elle peut converger vers un max si la fonction n’estpas convexe.

John Klein (Lille1) A2DI 27 / 50

(63)

Minimisation de la NLL pardescente de gradient : principe graphique

Pause Optim!

Cette façon de calculer ηt est appeléeméthode de Newton.

Le scalaireη est en général fixé à 1.

d2

2NLL(θt) est en général une matrice dite Hessienne.

Elle peut converger vers un max si la fonction n’estpas convexe.

L’inversion et le calcul du Hessien peut êtrecouteux.

John Klein (Lille1) A2DI 27 / 50

(64)

Pause Optim!

Cette façon de calculer ηt est appeléeméthode de Newton.

Le scalaireη est en général fixé à 1.

d2

2NLL(θt) est en général une matrice dite Hessienne.

Elle peut converger vers un max si la fonction n’estpas convexe.

L’inversion et le calcul du Hessien peut êtrecouteux.

Ca peut déraper si les dérivées secondes sont trop approximatives (matrice non définie).

John Klein (Lille1) A2DI 27 / 50

(65)

Retour à larégression logistique :minimisationla NLL par la méthode de Newton

La logregest le cas idéal pour Newton :

Les dérivées1ères et 2ndes sontfaciles à calculer. item La NLL est convexedonc la convergence est assurée.

John Klein (Lille1) A2DI 28 / 50

(66)

On avait obtenu NLL(θ) =

n

X

i=1

1−c(i) θT ·x(i)+−logsgmθT·x(i)+. (19) On montre alors que

∂wj

NLL(θ) = −

n

X

i=1

xj(i)c(i)−sgmθT·x(i)+, (20)

∂bNLL(θ) = −

n

X

i=1

c(i)−sgmθT·x(i)+ (21)

John Klein (Lille1) A2DI 29 / 50

(67)

Régression logistique :minimisationla NLL par la méthode de Newton Calcul des dérivées1ères (gradient) sous forme matricielle:

John Klein (Lille1) A2DI 30 / 50

(68)

Soit errle vecteur rassemblant les écarts entre prédiction et réalité pour tous les éléments de D:

err=

sgmθT ·x(1)+ c(1) ...

sgmθT ·x(n)+ c(n)

. (22)

John Klein (Lille1) A2DI 30 / 50

(69)

Régression logistique :minimisationla NLL par la méthode de Newton Calcul des dérivées1ères (gradient) sous forme matricielle:

Soit errle vecteur rassemblant les écarts entre prédiction et réalité pour tous les éléments de D:

err=

sgmθT ·x(1)+ c(1) ...

sgmθT ·x(n)+ c(n)

. (22)

Introduisons également une matriceX qui aggrègetous les vecteurs d’exemple d’apprentissage en y ajoutant une ligne de ”1“ à la fin :

X=

x(1)

· · ·

x(n)

1 · · · 1

. (23)

John Klein (Lille1) A2DI 30 / 50

(70)

d

dθNLL(θ) =X·err. (24)

John Klein (Lille1) A2DI 31 / 50

(71)

Régression logistique :minimisationla NLL par la méthode de Newton Calcul des dérivées1ères (gradient) sous forme matricielle:

d

dθNLL(θ) =X·err. (24)

Pour les dérivées2ndes, on a : d2

dθ2NLL(θ) =X·S·XT , (25)

John Klein (Lille1) A2DI 31 / 50

(72)

d

dθNLL(θ) =X·err. (24)

Pour les dérivées2ndes, on a : d2

dθ2NLL(θ) =X·S·XT , (25) avec

S=

fθx(1) 1−fθx(1) 0 . ..

0 fθ

x(n) 1−fθ

x(n)

(26)

John Klein (Lille1) A2DI 31 / 50

(73)

Régression logistique :minimisationla NLL par la méthode de Newton Bilan sous forme matricielle: la màj se fait selon

θt+1←−θtXSXT−1X·err. (27)

John Klein (Lille1) A2DI 32 / 50

(74)

Bilan sous forme matricielle: la màj se fait selon

θt+1←−θtXSXT−1X·err. (27)

Cette approche est équivalente à une autre appelée IRLS (iteratively reweighted least squares).

John Klein (Lille1) A2DI 32 / 50

(75)

Régression logistique : extensionmulti-classes

Supposons à présent un problème à plus de 2 classes :]C=`≥3.

John Klein (Lille1) A2DI 33 / 50

(76)

Exemple : autorisation de carte bancaire

C={refus,electron,standard,gold}

John Klein (Lille1) A2DI 33 / 50

(77)

Régression logistique : extensionmulti-classes

Supposons à présent un problème à plus de 2 classes :]C=`≥3.

Exemple : autorisation de carte bancaire

C={refus,electron,standard,gold}

Le modèle Y|X =x∼Ber(score(x)) ne convient plus !

John Klein (Lille1) A2DI 33 / 50

(78)

Exemple : autorisation de carte bancaire

C={refus,electron,standard,gold}

Le modèle Y|X =x∼Ber(score(x)) ne convient plus ! On doit passer àY|X =x∼Cat(π(x)) avec

π(x) =F

score1(x) ... score`(x)

(28)

John Klein (Lille1) A2DI 33 / 50

(79)

Régression logistique : extensionmulti-classes

Supposons à présent un problème à plus de 2 classes :]C=`≥3.

Exemple : autorisation de carte bancaire

C={refus,electron,standard,gold}

Le modèle Y|X =x∼Ber(score(x)) ne convient plus ! On doit passer àY|X =x∼Cat(π(x)) avec

π(x) =F

score1(x) ... score`(x)

(28) et

scorei(x) =wTi ·x+bi. (29)

John Klein (Lille1) A2DI 33 / 50

(80)

i

π contenant des probabilités?

John Klein (Lille1) A2DI 34 / 50

(81)

Régression logistique : extensionmulti-classes

Quelle fonctionF peut envoyer les scoreswTi ·x+bi vers un vecteur π contenant des probabilités?

→ la fonctionsmaxsoftmax peut faire cela :

smax(x;Θ) =

expwT1·x+b1

P`

k=1exp(wTk·x+bk) ...

expwT`·x+b`

P`

k=1exp(wTk·x+bk)

(30)

John Klein (Lille1) A2DI 34 / 50

(82)

i

π contenant des probabilités?

→ la fonctionsmaxsoftmax peut faire cela :

smax(x;Θ) =

expwT1·x+b1

P`

k=1exp(wTk·x+bk) ...

expwT`·x+b`

P`

k=1exp(wTk·x+bk)

(30)

Θ est une matrice rassemblant tous lesparamètres.

John Klein (Lille1) A2DI 34 / 50

(83)

Régression logistique : extensionmulti-classes

Quelle fonctionF peut envoyer les scoreswTi ·x+bi vers un vecteur π contenant des probabilités?

→ la fonctionsmaxsoftmax peut faire cela :

smax(x;Θ) =

expwT1·x+b1

P`

k=1exp(wTk·x+bk) ...

expwT`·x+b`

P`

k=1exp(wTk·x+bk)

(30)

Θ est une matrice rassemblant tous lesparamètres.

Elle généralise lasigmoïde.

John Klein (Lille1) A2DI 34 / 50

(84)

i

π contenant des probabilités?

→ la fonctionsmaxsoftmax peut faire cela :

smax(x;Θ) =

expwT1·x+b1

P`

k=1exp(wTk·x+bk) ...

expwT`·x+b`

P`

k=1exp(wTk·x+bk)

(30)

Θ est une matrice rassemblant tous lesparamètres.

Elle généralise lasigmoïde.

Elle appartient à la famille des distributions de Boltzmann.

John Klein (Lille1) A2DI 34 / 50

(85)

Régression logistique : extensionmulti-classes D’où vient le nom softmax?

John Klein (Lille1) A2DI 35 / 50

(86)

Supposons `= 3 et

wT1 ·x+b1 = 0.1 (31) wT2 ·x+b2 = 0.1 (32) wT3 ·x+b3 = 100 (33)

John Klein (Lille1) A2DI 35 / 50

(87)

Régression logistique : extensionmulti-classes D’où vient le nom softmax?

Supposons `= 3 et

wT1 ·x+b1 = 0.1 (31) wT2 ·x+b2 = 0.1 (32) wT3 ·x+b3 = 100 (33) On aurait alors :

smax(x;W)

0 0 1

(34)

John Klein (Lille1) A2DI 35 / 50

(88)

Supposons `= 3 et

wT1 ·x+b1 = 0.1 (31) wT2 ·x+b2 = 0.1 (32) wT3 ·x+b3 = 100 (33) On aurait alors :

smax(x;W)

0 0 1

(34)

En conclusion, quand une classei a un gros score pour l’exemplex la proba quey =i est proche de 1.

John Klein (Lille1) A2DI 35 / 50

(89)

Régression logistique : extensionmulti-classes Schématiquement, ça donne :

John Klein (Lille1) A2DI 36 / 50

(90)

John Klein (Lille1) A2DI 37 / 50

(91)

Régression logistique : extensionmulti-classes Qu’advient-il des paramètres?

John Klein (Lille1) A2DI 37 / 50

(92)

John Klein (Lille1) A2DI 38 / 50

(93)

Régression logistique : extensionmulti-classes Qu’advient-il des paramètres?

John Klein (Lille1) A2DI 39 / 50

(94)

John Klein (Lille1) A2DI 39 / 50

(95)

Régression logistique : extensionmulti-classes Qu’advient-il des paramètres?

DoncΘ=

John Klein (Lille1) A2DI 39 / 50

(96)

John Klein (Lille1) A2DI 40 / 50

(97)

Régression logistique : extensionmulti-classes

Qu’advient-il des paramètres? Regardons de plus près ...

John Klein (Lille1) A2DI 40 / 50

(98)

C’est comme si une des sorties du softmax de servait à rien !

John Klein (Lille1) A2DI 40 / 50

(99)

Régression logistique : extensionmulti-classes

Qu’advient-il des paramètres? Regardons de plus près ...

On peut montrer que pour tout vecteurψ de même taille que les θi, si la matriceΘ minimise la NLL alors, la matrice suivant aussi :

Θ

ψ

. . .

ψ

(35)

Par convention, on choisit ψ=θ` et on supprime la dernière colonne deΘ dans le problème de minimisation de la NLL.

John Klein (Lille1) A2DI 41 / 50

(100)

On peut montrer que pour tout vecteurψ de même taille que les θi, si la matriceΘ minimise la NLL alors, la matrice suivant aussi :

Θ

ψ

. . .

ψ

(35) Par convention, on choisit ψ=θ` et on supprime la dernière colonne deΘ dans le problème de minimisation de la NLL.

John Klein (Lille1) A2DI 41 / 50

(101)

Régression logistique : extensionmulti-classes

Qu’advient-il des paramètres? Regardons de plus près ...

On peut montrer que pour tout vecteurψ de même taille que les θi, si la matriceΘ minimise la NLL alors, la matrice suivant aussi :

Θ

ψ

. . .

ψ

(35) Par convention, on choisit ψ=θ` et on supprime la dernière colonne deΘ dans le problème de minimisation de la NLL.

John Klein (Lille1) A2DI 41 / 50

(102)

John Klein (Lille1) A2DI 42 / 50

(103)

Régression logistique : extensionmulti-classes Qu’advient-il de la descente de gradient?

La même approche reste valable, mais les dérivées sont plus nombreuses.

John Klein (Lille1) A2DI 42 / 50

(104)

La même approche reste valable, mais les dérivées sont plus nombreuses.

Le plus simple est de calculer à chaque itération t, les dérivées séparemment pour chaque vecteurθi selon :

∂θi

NLL(Θ) =−

n

X

j=1

x(j)Ii

y(j)πi (36)

John Klein (Lille1) A2DI 42 / 50

(105)

Plan du chapitre

1 Origines du modèle

2 Descente de gradient

3 Descente de gradient stochastique

4 Conclusions

John Klein (Lille1) A2DI 43 / 50

(106)

John Klein (Lille1) A2DI 44 / 50

(107)

Régression logistique etBig Data

Imaginons que n=109 (ex : nombre d’utilisateurs de Facebook).

John Klein (Lille1) A2DI 44 / 50

(108)

Pour une itération de ladescente de gradient, je dois calculer : d

dθNLL(θ) =X·err. (37)

John Klein (Lille1) A2DI 44 / 50

(109)

Régression logistique etBig Data

Imaginons que n=109 (ex : nombre d’utilisateurs de Facebook).

Pour une itération de ladescente de gradient, je dois calculer : d

dθNLL(θ) =X·err. (37)

Problème : la matriceX ne tient pas sur ma mémoire :

X=

x(1)

. . . .

x(109)

(38)

John Klein (Lille1) A2DI 44 / 50

(110)

d

dθNLL(θ) =X·err=

n

X

i=1

erri ×x(i). (39)

John Klein (Lille1) A2DI 45 / 50

(111)

Régression logistique etBig Data Reformulons ce calcul matriciel :

d

dθNLL(θ) =X·err=

n

X

i=1

erri ×x(i). (39) Bonne nouvelle: je n’ai pas besoinde charger en mémoiretous mes exemples d’un coup !

John Klein (Lille1) A2DI 45 / 50

(112)

d

dθNLL(θ) =X·err=

n

X

i=1

erri ×x(i). (39) Bonne nouvelle: je n’ai pas besoinde charger en mémoiretous mes exemples d’un coup !

mais finalement... pourquoi attendred’avoir vu tous mes exemples pour mettre à jourθ?

John Klein (Lille1) A2DI 45 / 50

(113)

Régression logistique etBig Data Reformulons ce calcul matriciel :

d

dθNLL(θ) =X·err=

n

X

i=1

erri ×x(i). (39) Bonne nouvelle: je n’ai pas besoinde charger en mémoiretous mes exemples d’un coup !

mais finalement... pourquoi attendred’avoir vu tous mes exemples pour mettre à jourθ?

Peut on faire la màj exemple par exemple selon :

θt+1←−θtηt×erri ×x(i)? (40)

John Klein (Lille1) A2DI 45 / 50

(114)

d

dθNLL(θ) =X·err=

n

X

i=1

erri ×x(i). (39) Bonne nouvelle: je n’ai pas besoinde charger en mémoiretous mes exemples d’un coup !

mais finalement... pourquoi attendred’avoir vu tous mes exemples pour mettre à jourθ?

Peut on faire la màj exemple par exemple selon :

θt+1←−θtηt×erri ×x(i)? (40)

→ Oui, ça s’appelle faire unedescente de gradient stochastique.

John Klein (Lille1) A2DI 45 / 50

(115)

Régression logistique etBig Data :gradient stochastique Pourquoi stochastique?

John Klein (Lille1) A2DI 46 / 50

(116)

Imaginons tirerU ∼ U{1;n} uniformément afin de choisir au hasard une de nos donnéesx(U).

John Klein (Lille1) A2DI 46 / 50

(117)

Régression logistique etBig Data :gradient stochastique Pourquoi stochastique?

Imaginons tirerU ∼ U{1;n} uniformément afin de choisir au hasard une de nos donnéesx(U).

Le gradient de l’erreur pour cet exemple est donc

g(U) =errU×x(U). (41)

John Klein (Lille1) A2DI 46 / 50

(118)

Imaginons tirerU ∼ U{1;n} uniformément afin de choisir au hasard une de nos donnéesx(U).

Le gradient de l’erreur pour cet exemple est donc

g(U) =errU×x(U). (41)

Prenons l’espérance sous la loi de U : EU[g] =

n

X

u=1

erru×x(u)pU(u), (42)

=

=

John Klein (Lille1) A2DI 46 / 50

(119)

Régression logistique etBig Data :gradient stochastique Pourquoi stochastique?

Imaginons tirerU ∼ U{1;n} uniformément afin de choisir au hasard une de nos donnéesx(U).

Le gradient de l’erreur pour cet exemple est donc

g(U) =errU×x(U). (41)

Prenons l’espérance sous la loi de U : EU[g] =

n

X

u=1

erru×x(u)pU(u), (42)

=

=

Le gradientqu’on cherche est l’espérance de celui pris sur un exemple au hasard.

John Klein (Lille1) A2DI 46 / 50

(120)

θ

John Klein (Lille1) A2DI 47 / 50

Références

Documents relatifs

On ouvre le robinet et on laisse s’écouler l’eau qui imprègne le sol, on arrête quand l’eau devient visible à la surface du sol, on mesure l’eau dans la burette (M2).. -

Le problème du choix de la combinaison linéaire des variables explicatives est similaire à tous ce qui a été vu dans le modèle linéaire :. Utilisation d’indicatrices pour

(d) Proposer un test permettant de tester le mod`ele satur´e contre le mod`ele de la question 2 (le mod`ele n’ayant pas ´et´e ´ecris, on se contentera de d´ecrire les hypoth`eses

Par  exemple,  dans  la  présente  mise  en  situation,  une  variable,  les  «troubles  intériorisés»,  a  dû  être  écartée 

C'est encore possible pour l'équation d'Euler mais dans un contexte beaucoup moins intéressant puisque les solutions stationnaires des équations d'Euler dans R ont une masse

►Suite au décès de son père, elle déprime un peu et remet en question ce mode de vie amoureuse, rencontre un homme plus posé et s'installe avec lui, elle fait un peu plus de

[r]

(notés SV) pour le cas C + /C − et le nombre d’exemples dans l’ensemble actifs pour les petits intervalles [p min , p max ] de la régression logistique parcimonieuse sont du