Explorer les Livres électroniques
Catégories
Explorer les Livres audio
Catégories
Explorer les Magazines
Catégories
Explorer les Documents
Catégories
Master 2 IS-IN
Classification, Apprentissage, Décision
Plan du cours
Introduction
Perceptron
Deep Learning
Theorie de l’apprentissage
Classification, Apprentissage, Décision
Perceptron
Plan
Introduction
Perceptron
Deep Learning
Theorie de l’apprentissage
Classification, Apprentissage, Décision
Perceptron
Un exemple
X = R2
Classifieur linéairef défini par w = (1, 2) et b = −1 :
1 si x1 + 2x2 − 1 ≥ 0
f (x) = f (x1 , x2 ) =
−1 sinon.
Par exemple, f (0, 0) = −1 et f (1, 1) = 1.
Hyperplan d’équation x1 + 2x2 − 1 = 0 (c-à-d x2 = − 21 x1 + 12 )
Classification, Apprentissage, Décision
Perceptron
Exemples :
S = {((0, 0), −1), ((1, 0), 1), ((0, 1), −1)} est linéairement séparable.
S = {((0, 0), −1), ((1, 0), 1), ((0, 1), 1), ((1, 1), −1)} n’est pas linéairement
séparable (XOR).
Classification, Apprentissage, Décision
Perceptron
Perceptrons
Perceptrons
−
→
I données x = (x1, . . . , xd )
−→ ∈ un espace de dimension d
−
→ − →
I points vérifiants b + h w , x i = 0
−
→
−→ hyperplan défini par b et w
−
→ − →
I points vérifiants b + h w , x i > 0
−→ points d’un coté de l’hyperplan
−
→ − →
I points vérifiants b + h w , x i < 0
−→ points de l’autre coté de l’hyperplan
−
→
I Erreur de classification de ( x , +1) ∈ S
−
→ − →
−→ b + h w , x i < 0
−
→
I Comment peut-on modifier b et w pour
remédier à cette erreur
−
→ −→
−→ augmenter b + h w , x i
Classification, Apprentissage, Décision
Perceptron
−
→
I Erreur de classification de ( x , +1) ∈ S
−
→ − →
−→ b + h w , x i < 0
−
→
I Comment peut-on modifier b et w pour
remédier à cette erreur
−
→ −→
−→ augmenter b + h w , x i
augmenter b
Classification, Apprentissage, Décision
Perceptron
−
→
I Erreur de classification de ( x , +1) ∈ S
−
→ − →
−→ b + h w , x i < 0
−
→
I Comment peut-on modifier b et w pour
remédier à cette erreur
−
→ −→
−→ augmenter b + h w , x i
• augmenter b
augmenter b
Classification, Apprentissage, Décision
Perceptron
−
→
I Erreur de classification de ( x , +1) ∈ S
−
→ − →
−→ b + h w , x i < 0
−
→
I Comment peut-on modifier b et w pour
remédier à cette erreur
−
→ −→
−→ augmenter b + h w , x i
• augmenter b
augmenter b
Classification, Apprentissage, Décision
Perceptron
−
→
I Erreur de classification de ( x , +1) ∈ S
−
→ − →
−→ b + h w , x i < 0
−
→
I Comment peut-on modifier b et w pour
remédier à cette erreur
−
→ −→
−→ augmenter b + h w , x i
• augmenter b
• Si xi > 0 augmenter wi
• Si xi < 0 diminuer wi
augmenter w
Classification, Apprentissage, Décision
Perceptron
−
→
I Erreur de classification de ( x , +1) ∈ S
−
→ − →
−→ b + h w , x i < 0
−
→
I Comment peut-on modifier b et w pour
remédier à cette erreur
−
→ −→
−→ augmenter b + h w , x i
• augmenter b
• Si xi > 0 augmenter wi
• Si xi < 0 diminuer wi
augmenter w
Classification, Apprentissage, Décision
Perceptron
−
→
I Erreur de classification de ( x , +1) ∈ S
−
→ − →
−→ b + h w , x i < 0
−
→
I Comment peut-on modifier b et w pour
remédier à cette erreur
−
→ −→
−→ augmenter b + h w , x i
• augmenter b
• Si xi > 0 augmenter wi
• Si xi < 0 diminuer wi
−
→ − →
I Algorithme : ajouter x à w et 1 à b
−→ Procéder par analogie pour les
−
→
exemples négatifs x ∈ N
augmenter w
Classification, Apprentissage, Décision
Perceptron
−→ exercice
Classification, Apprentissage, Décision
Perceptron
I Lemme :
−
→
Si l’algorithme du perceptron converge, alors le perceptron (b, w )
obtenu classe parfaitement tous les exemples d’apprentissage.
I Théorème (Convergence) :
Si ∃ un perceptron qui classe correctement toutes les données
d’apprentissage, alors l’algorithme du perceptron converge.
I Lemme :
Si au cours de l’exécution de l’algorithme du perceptron on rencontre
deux fois le même vecteur de pondération, alors les données
d’apprentissage utilisées ne sont pas linéairement séparables.
I Lemme :
Si l’algorithme du perceptron avec un biais b = 0 est exécuté sur un jeu
de données non linéairement séparable, alors le même vecteur de
pondération se produira au moins deux fois .
Classification, Apprentissage, Décision
Perceptron
I contre-exemple : XOR(x1 , x2 )
exemples positifs : {(0, 1), (1, 0)}, exemples négatifs : {(0, 0), (1, 1)}
Exercice
k wk x k mal classé yk
0 000 001 -1
1 0 0 -1 ... ...
... ... ... ...
Classification, Apprentissage, Décision
Perceptron
Propriétés
αi = αi + 1
FinSi
FinPour
Jusqu’à ce qu’il n’y ait plus d’erreurs
Sortie : α
Classification, Apprentissage, Décision
Perceptron
Exercice
k αk x k mal classé yk
0 0000 001 -1
1 1000 ... ...
... ... ... ...
Classification, Apprentissage, Décision
Perceptron
Extensions
5. Méthodes à noyaux
Classification, Apprentissage, Décision
Machines à vecteur de support
Master 2 IS-IN
Classification, Apprentissage, Décision
Machines à vecteur de support
Plan
Introduction
Perceptron
Deep Learning
Theorie de l’apprentissage
Classification, Apprentissage, Décision
Machines à vecteur de support
Plan
Introduction
Perceptron
Deep Learning
Theorie de l’apprentissage
Classification, Apprentissage, Décision
Machines à vecteur de support
La notion de marge
d(M, H) = y M hw, x M − x H i
= y M (hw, x M i − hw, x H i)
= y M (hw, x M i + b − hw, x H i − b)
= y M (hw, x M i + b)
puisque hw, x H i + b = 0.
Classification, Apprentissage, Décision
Machines à vecteur de support
S = {((0, 0), −1), ((0, 1), 1), ((1, 0), 1), ((1, 1), 1)}.
Au moyen d’une
√ translation de vecteur (−1/2, −1/2) suivie d’une homothétie
de rapport 2, on obtient l’échantillon équivalent
√ √ √ √ √ √ √ √
2
S = {((− 2
, − 22 ), −1), ((− 22 , 22 ), 1), (( 22 , − 22 ), 1), (( 22 , 22 ), 1)}.
Dans ce cas,
I ||w|| n’est plus égal à 1 et la marge de H est égale à 1/||w|| et
I tous les points de S vérifient yf (x) ≥ 1.
Classification, Apprentissage, Décision
Machines à vecteur de support
Minimiser ||w||2
sous les contraintes
Soit S = {((0, 0), −1), ((0, 1), 1), ((1, 0), 1), ((1, 1), 1)}. On a
Scomplet = {((0, 0, 1), −1), ((0, 1, 1), 1), ((1, 0, 1), 1), ((1, 1, 1), 1)}.
−b ≥ 1, w2 + b ≥ 1, w1 + b ≥ 1, w1 + w2 + b ≥ 1
Hyperplan optimal
Soit S = {(x 1 , y 1 ), . . . , (x n , y n )} ⊂ Rd × {−1, +1} un échantillon linéairement
séparable.
Il existe un unique hyperplan de marge maximale qui est solution du
problème d’optimisation suivant :
f (x) = hw, xi + b
y i f (x i ) ≥ 1 pour tout i = 1 . . . n
Minimiser ||w||2 .
n
1 2 X
L(w, b, α) = w − αi [y i (hw, x i i + b) − 1]
2
i=1
La solution (unique grâce à la convexité) (w ∗ , b∗ , α∗ ) est un point selle du
Lagrangien :
L(w, b, α∗ ) minimal en (w ∗ , b∗ ) ; L(w ∗ , b∗ , α) maximal en α∗ .
Classification, Apprentissage, Décision
Machines à vecteur de support
∂L(w, b, α) = Pn α y i
i=1 i
∂b
Ce qui donne les condition d’optimalité :
Pn i i
∇w L(w, b, α) = 0 ⇒ w = i=1 αi y x
∂L(w, b, α) = 0 ⇒ Pn α y i = 0
i=1 i
∂b
Classification, Apprentissage, Décision
Machines à vecteur de support
On a
n n n n n n
1 XX X X X X
L(α) = αj αi y i y j hx j , x i i − αi y i αj y j hx j , x i i − b αi y i + αi
2
i=1 j=1 i=1 j=1 i=1 i=1
Ce qui donne
n n
1X i j X
L(α) = y y αi αj hx i , x j i
αi −
2
i=1 i,j=1
1
= α1 + α2 + α3 − (25α12 + 4α22 + 12α1 α2 )
2
qu’on doit maximiser sous les contraintes
α1 + α2 − α3 = 0 et αi ≥ 0 pour i = 1, 2, 3.
Classification, Apprentissage, Décision
Machines à vecteur de support
Exemple
Soit S = {((4, 3), 1), ((0, 2), 1), ((0, 0), −1)}. On a trouvé
w ∗ = (0, 1) et b∗ = −1.
Pn ∗ i ∗ Pn ∗ i i
Si l’on pose i=1 αi y = 0 et w = i=1 αi y x , on trouve
α1 + α2 − α3 = 0
4α1 =0
3α1 + 2α2 =1
On trouve
α1 = 0, α2 = 1/2 et α3 = 1/2
Les vecteurs supports sont x 2 et x 3 .
Classification, Apprentissage, Décision
Machines à vecteur de support
Kernel trick
On appelle noyau toute fonction k : X × X → R qui peut être interprétée
comme un produit scalaire dans un plongement Φ :
hx i , x j i par k (x i , x j ).
Perceptron à noyau
αi = αi + 1
FinSi
FinPour
Jusqu’à ce qu’il n’y ait plus d’erreurs
Sortie : x 7→ signe( i αi y i k (x, x i ))
P
Classification, Apprentissage, Décision
Machines à vecteur de support
Exemples de noyaux :
Noyau polynomial homogène
d
!p
0
X
d
X = R , k (x, x ) = xi xi0
i=1
Noyau polynomial
d
!p
X
X = Rd , k (x, x 0 ) = (hx, x 0 i) + c)p = xi xi0 + c
i=1
d 1 2 3 4 5 6 7
erreur % 8,9 4,7 4,0 4,2 4,5 4,5 4,7
Nb. moyen de VSs 282 237 274 321 374 422 491
Classification, Apprentissage, Décision
Machines à vecteur de support
To DO
Classification, Apprentissage, Décision
Theorie de l’apprentissage
TO DO