28
Classification par Régression Logistique Reconnaissance des Formes (Semaine VII) Université de Lille, France 6 mars 2013 Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013

ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Classification par Régression Logistique

Reconnaissance des Formes (Semaine VII)

Université de Lille, France

6 mars 2013

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 1

Page 2: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Rappel

ClassificationL’ensemble des données est partagé en quelques classes différentes,On a quelques exemplaires pour qui on sait les classes correctes.On veut classifier correctement les données pour qui les classescorrectes sont inconnus.

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 2

Page 3: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Exemple : Classification des caractères manuscrits

Données d’entrainement Ça corresponds à quel chiffre ?

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 3

Page 4: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le problème de classification

le cas le plus simpleLes données à classifier sont représenter en une dimension i.e. x ∈ RNous avons deux classes seulement, i.e. y ∈ {0, 1}.

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 4

Page 5: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Problème de classification

On cherche une fonction h : R→ {0, 1} telle que pour chaque x on ah(x) = 0 si x est dans classe 0 eth(x) = 1 si x est dans classe 1

Si cette fonction existe, le problèmede classification est déjà résolu.Nous allons utiliser les donnéesd’entrainement pour trouver h.

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 5

Page 6: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Problème de classification

On cherche une fonction h : R→ {0, 1} telle que pour chaque x on ah(x) = 0 si x est dans classe 0 eth(x) = 1 si x est dans classe 1

Si cette fonction existe, le problèmede classification est déjà résolu.Nous allons utiliser les donnéesd’entrainement pour trouver h.

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 5

Page 7: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Une Fonction Linéaire ?

On défini un séparateur linéaire θ0 + θ1xOn utilise les exemplaires disponible pour chercher les valeursconvenables pour θ0 et θ1. On prédit la classe y de la manière suivante

y = 1 si θ0 + θ1x ≥ 0.5y = 0 si θ0 + θ1x < 0.5

QuestionEst-ce que cette approche va marcher ?

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 6

Page 8: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Modèle

La fonction Sigmoid où Logistique

g(z) :=1

1+ e−z

Remarque

0 ≤ g(z) ≤ 1g(z) ≥ 0.5 si z ≥ 0g(z) < 0.5 si z < 0

Le Modèle

hθ(x) := g(θ0 + θ1x) =1

1+ e−(θ0+θ1x)

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 7

Page 9: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Modèle

La fonction Sigmoid où Logistique

g(z) :=1

1+ e−z

Remarque

0 ≤ g(z) ≤ 1g(z) ≥ 0.5 si z ≥ 0g(z) < 0.5 si z < 0

Le Modèle

hθ(x) := g(θ0 + θ1x) =1

1+ e−(θ0+θ1x)

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 7

Page 10: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Modèle

hθ(x) :=1

1+ e−(θ0+θ1x)

Prédiction

y = 1 si hθ(x) ≥ 0.5y = 0 si hθ(x) < 0.5

L’intuitionhθ(x) est l’estimation de la probabilité de y = 1 sachant x , i.e. P(y = 1|x).Comme on a y = 0 où y = 1, on peut dériver P(y = 0|x) i.e.

P(y = 0|x) = 1− P(y = 1|x) = 1− hθ(x).

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 8

Page 11: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Modèle

hθ(x) :=1

1+ e−(θ0+θ1x)

Prédiction

y = 1 si hθ(x) ≥ 0.5y = 0 si hθ(x) < 0.5

L’intuitionhθ(x) est l’estimation de la probabilité de y = 1 sachant x , i.e. P(y = 1|x).Comme on a y = 0 où y = 1, on peut dériver P(y = 0|x) i.e.

P(y = 0|x) = 1− P(y = 1|x) = 1− hθ(x).

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 8

Page 12: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Modèle

En général les données n’ont pas qu’une seule dimension !Chaque point x est un vecteur de dimension k i.e.x := (x1, x2, . . . , xk) ∈ Rk .

Exemple

Pour k = 2 on a x := (x1, x2) où x1 ∈ R est x2 ∈ R, donc x ∈ R2.

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 9

Page 13: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Modèle Général

Chaque point (x1, x2, . . . , xk) ∈ Rk est un vecteur de dimension k ,.

hθ(x) :=1

1+ e−(θ0+θ1x1+θ2x2+···+θkxk)=

1

1+ e−∑k

i=0 θixi

=1

1+ e−(θT x)où

θ :=

θ0θ1...θk

et x :=

1x1...

xk

donc θTx =k∑

i=0

θixi .

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 10

Page 14: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Modèle Général

Chaque point (x1, x2, . . . , xk) ∈ Rk est un vecteur de dimension k ,.

hθ(x) :=1

1+ e−(θ0+θ1x1+θ2x2+···+θkxk)=

1

1+ e−∑k

i=0 θixi

=1

1+ e−(θT x)où

θ :=

θ0θ1...θk

et x :=

1x1...

xk

donc θTx =k∑

i=0

θixi .

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 10

Page 15: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Modèle Général

Prédictiony = 1 si hθ(x) ≥ 0.5y = 0 si hθ(x) < 0.5 où

hθ(x) :=1

1+ e−(θT x)

g(z) :=1

1+ e−z

g(z) ≥ 0.5 si z ≥ 0 et g(z) < 0.5 si z < 0

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 11

Page 16: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Modèle Général

Prédictiony = 1 si hθ(x) ≥ 0.5y = 0 si hθ(x) < 0.5 où

hθ(x) :=1

1+ e−(θT x)

g(z) :=1

1+ e−z

g(z) ≥ 0.5 si z ≥ 0 et g(z) < 0.5 si z < 0

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 11

Page 17: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Le Modèle Général

Prédiction

y = 1 si hθ(x) ≥ 0.5 i.e. si θTx ≥ 0y = 0 si hθ(x) < 0.5 i.e. si θTx

hθ(x) :=1

1+ e−(θT x)

g(z) :=1

1+ e−z

g(z) ≥ 0.5 si z ≥ 0 et g(z) < 0.5 si z < 0

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 12

Page 18: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Exemple

Prédictiony = 1 si θ0 + θ1x1 + θ2x2 ≥ 0y = 0 si θ0 + θ1x1 + θ2x2 < 0

Remarquez que θ0, θ1 et θ2 sont inconnus. On doit les chercher !

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 13

Page 19: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Exemple

Supposons que θ :=

−311

est donné donc,

θ0 = −3, θ1 = 1, θ2 = 1

Prédictiony = 1 si x1 + x2 ≥ 3y = 0 si x1 + x2 < 3

x1 + x2 = 3 est le frontière dedécision.

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 14

Page 20: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Comment trouver θ ?

Coût d’une prédiction

coût(hθ(x), y) :={− log(hθ(x)) si y = 1− log(1− hθ(x)) si y = 0

L’intuitionImaginons que y = 1

Si hθ(x) = 1 on a coût = 0 maiscoût →∞ lorsque hθ(x)→ 0

Ç’est une façon de pénaliser l’algorithme pour la mauvaise prédiction !

Il faut chercher les θ qui donnent le coût le plus petit possible.

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 15

Page 21: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Régression Logistique : Comment trouver θ ?

Coût d’une prédiction

coût(hθ(x), y) :={− log(hθ(x)) si y = 1− log(1− hθ(x)) si y = 0

= −y log(hθ(x))− (1− y) log(1− hθ(x)) pourquoi ?

La fonction de coût J(θ)

On a m exemplaires d’entrainement {x(1), x(2), . . . , x(m)}. Soit y (i) laclasse de x(i), i = 1..m.On défini la fonction de coût par

J(θ) := − 1m

m∑i=1

y (i) log(hθ(x(i)))− (1− y (i)) log(1− hθ(x(i)))

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 16

Page 22: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Régression Logistique : Comment trouver θ ?

Coût d’une prédiction

coût(hθ(x), y) :={− log(hθ(x)) si y = 1− log(1− hθ(x)) si y = 0

= −y log(hθ(x))− (1− y) log(1− hθ(x)) pourquoi ?

La fonction de coût J(θ)

On a m exemplaires d’entrainement {x(1), x(2), . . . , x(m)}. Soit y (i) laclasse de x(i), i = 1..m.On défini la fonction de coût par

J(θ) := − 1m

m∑i=1

y (i) log(hθ(x(i)))− (1− y (i)) log(1− hθ(x(i)))

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 16

Page 23: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Comment trouver θ ?

On cherche les paramètres qui donnent le coût le plus petit possible

θ∗ := minθ

J(θ) où

J(θ) := − 1m

m∑i=1

y (i) log(hθ(x(i)))− (1− y (i)) log(1− hθ(x(i)))

→ minimiser la fonction de coût J(θ) etutiliser le θ qui correspond à J(θ) minimum

La minimisation de J(θ) est possible pas les méthodes de la théoried’optimisation, mais cela dépasse le cadre de ce cours

→ Nous allons utiliser les fonctions d’optimisations existantes en scilab.

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 17

Page 24: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

Comment trouver θ ?

On cherche les paramètres qui donnent le coût le plus petit possible

θ∗ := minθ

J(θ) où

J(θ) := − 1m

m∑i=1

y (i) log(hθ(x(i)))− (1− y (i)) log(1− hθ(x(i)))

→ minimiser la fonction de coût J(θ) etutiliser le θ qui correspond à J(θ) de minimum

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 18

Page 25: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

L’algorithme

EntrainementUtiliser les données d’entrainement, i.e. les exemplaires{x(1), x(2), . . . , x(m)} et leur lables {y (1), y (2), . . . , y (m)} pour trouver levecteur θ. Donc,

θ∗ := minθ

J(θ) où

J(θ) := − 1m

m∑i=1

y (i) log(hθ(x(i)))− (1− y (i)) log(1− hθ(x(i)))

Prédiction de la classe d’un nouvel exemple

Pour chaque nouveau x hθ(x) := 11+eθT x classifier le de la manière suivante,

y = 1 si hθ(x) ≥ 0.5y = 0 si hθ(x) < 0.5

Rappel hθ(x) estime P(y = 1|x)Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 19

Page 26: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

L’algorithme Multi-Classes

Pour l’instant cette approche marche que pour le cas de deux classey ∈ {0, 1} seulement.

QuestionComment peut on le généraliser pour le cas de plusieurs classes ?

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 20

Page 27: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

L’algorithme Multi-Classes

Supposons que l’on a l > 2 classes, i.e. y ∈ {1, 2, . . . , l}. On peut créer unclassifier de la manière suivante.

1 Entrainer un classifier de régression logistique h(i)θ (x) pour chaqueclasse i = 1, 2, . . . , l .

Rappel : h(i)θ (x) estime P(y = i |x), i = 1, 2, . . . , l

2 Pour prédire la classe d’un nouveau x, choisir y ∈ {1, 2, . . . , l} tel que

y = maxi=1..l

h(i)θ (x)

Ça veut dire que l’on suit la décision du classifier plus confiants.

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 21

Page 28: ClassificationparRégressionLogistiquemaster-ivi.univ-lille1.fr/fichiers/Cours/slides7.pdf · 2013-03-06 · ClassificationparRégressionLogistique ReconnaissancedesFormes(SemaineVII)

L’algorithme Multi-Classes : Exemple

Azadeh Khaleghi, Université de Lille I Régression Logistique 6 mars 2013 22