Algorithme du perceptron
Classification lin´
eaire binaire
XRn,Y={1,1}
D´
efinition. Un classifieur lin´
eaire (ou perceptron) est une fonction de la forme
f(x)=1si hw,xi+b0
1sinon.
o`
u
w2Rn,b2R, et
hw,xid´
esigne le produit scalaire entre wet x: si w=(w1,...,wn)et
x=(x1,...,xn),hw,xi=Pn
i=1wixi.
Interpr´
etation g´
eom´
etrique : hw,xi+b=0 est l’´
equation d’un hyperplan affine qui
s´
epare Xen deux demi-espaces correspondant aux deux classes.
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 2 / 16
Algorithme du perceptron
Un exemple
X=R2
Classifieur lin´
eaire d´
efini par w=(1,2)et
b=1:
f(x1,x2)=1si x1+2x210
1sinon.
Par exemple, f(0,0)=1 et f(1,1)=1.
Hyperplan d’´
equation x1+2x21=0
10.5 0 0.5 1 1.5 2
0.5
0
0.5
1
x1
x2
On peut toujours supposer que b=0 en rajoutant une coordonn´
ee, ´
egale `
a 1 pour
tous les exemples :
f(x1,x2,x3)=1 si x1+2x2x30 et -1 sinon ;
f(0,0,1)=1 et f(1,1,1)=1
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 3 / 16
Algorithme du perceptron
Expressivit´
e des perceptrons
Les classifieurs lin´
eaires peuvent sembler a priori tr `
es peu expressifs : pourquoi
des donn´
ees naturelles se r´
epartiraient-elles de part et d’autres d’un hyperplan ?
Cette intuition n’est pas forc´
ement v´
erifi ´
ee en tr`
es grande dimension (cas de
classification de textes, par exemple).
Nous verrons par la suite que plonger les donn´
ees initiales dans un espace de
grande dimension au moyen d’une transformation non lin´
eaire accroˆ
ıt leur
s´
eparabilit´
e.
A complex pattern-classification problem, cast in a high-dimensional space
nonlinearly, is more likely to be linearly separable than in a low-dimensional
space, provided that the space is not densely populated. (T.M. Cover, 1965)
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 4 / 16
Algorithme du perceptron
Donn´
ees lin´
eairement s´
eparables
Un ´
echantillon S={(x1,y1),...,(xl,yl)}(XY)lest lin´
eairement s´
eparable s’il
existe un classifieur lin´
eaire qui classe correctement tous les exemples de S.
Exemples :
S={((0,0),1),((1,0),1),((0,1),1)}est lin´
eairement s´
eparable.
S={((0,0),1),((1,0),1),((0,1),1),((1,1),1)}n’est pas lin´
eairement s´
eparable
(XOR).
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 5 / 16
Algorithme du perceptron
Donn´
ees lin´
eairement s´
eparables
Lemme : Si des donn´
ees S=SP[SNsont lin´
eairement s´
eparables, on peut trouver
un hyperplan s´
eparateur tel qu’aucune donn´
ee ne soit sur la fronti`
ere de d´
ecision.
Preuve:
Soit (w,b)tel que
8x2SP,hw,xi+b0 et
8x2SN,hw,xi+b<0
et soit =min{(hw,xi+b)|x2SN}. Alors:
hw,xi+b+
28
<
:
2>08x2SP

2<08x2SN
Ainsi le classifieur lin´
eaire (w,b+
2)satisfait le lemme.
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 6 / 16
Algorithme du perceptron
Remarques
Les isom´
etries et les homoth ´
eties pr´
eservent la s´
eparabilit´
e.
En rajoutant une dimension, on peut supposer que les hyperplans s ´
eparateurs
passent par l’origine : ajouter une coordonn ´
ee xn+1=1`
a tous les exemples et
poser wn+1=b. On parlera d’´
echantillon compl´
et´
e.
S´
eparer des donn´
ees lin´
eairement s´
eparables peut ˆ
etre r´
esolu en temps
polynomial par un algorithme de programmation lin´
eaire : chaque exemple (xi,yi)
fournit une contrainte lin ´
eaire yi(hw,xii+b)>0.
Il existe une infinit´
e d’hyperplans s´
eparant un ´
echantillon s´
eparable : ils ne sont
pas ´
equivalents du point de vue de l’apprentissage.
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 7 / 16
Algorithme du perceptron
Algorithme d’apprentissage du Perceptron (Rosenblatt, 1958)
Soit S=SP[SNRn+1{1,1}un ´
echantillon compl´
et´
e lin´
eairement s´
eparable.
Soit wle classifieur lin´
eaire courant.
Si (x,y)2SPest mal class´
e, hw,xi<0 et il faudrait augmenter hw,xi,
si (x,y)2SNest mal class´
e, hw,xi0 et il faudrait diminuer hw,xi,
Id´
ee : prendre wnew =w+xy.
si y=1, hwnew ,xi=hw,xi+||x||2hw,xi;
si y=1, hwnew ,xi=hw,xi||x||2hw,xi.
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 8 / 16
Algorithme du perceptron
Algorithme d’apprentissage du Perceptron
Algorithme d’apprentissage du Perceptron
Entr´
ee : S={(x1,y1),...,(xl,yl)}, un ´
echantillon compl´
et´
e
lin´
eairement s´
eparable de Rn+1{1,1}
w0=02Rn+1,k=0
R´
ep´
eter
Pour i=1`
al
Si yihwk,xii0alors
wk+1=wk+yixi
k=k+1
FinPour
Jusqu’`
a ce qu’il n’y ait plus d’erreurs
Sortie : wk
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 9 / 16
Algorithme du perceptron
Exercice
Utilisez l’algorithme du perceptron pour s ´
eparer l’´
echantillon
{((0,0),1),((0,1),1),((1,0),1),((1,1),1)}. Dessinez l’hyperplan obtenu.
kwkxkmal class´
eyk
0000 001 -1
1 0 0 -1 ... ...
... ... ... ...
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 10 / 16
Algorithme du perceptron
Propri ´
et´
es
L’algorithme du Perceptron est une proc´
edure on-line, par correction d’erreurs
(error-driven).
L’algorithme est correct : lorsqu’il converge, l’hyperplan retourn ´
es
´
epare les
donn´
ees fournies en entr ´
ee
L’algorithme est complet : si Sest lin ´
eairement s´
eparable, l’algorithme converge.
Dans le pire des cas, le nombre d’it´
erations est ´
egal `
a(n+1)22(n+1)log(n+1).
Complexit´
e exponentielle !
Tr `
es mauvaise tol´
erance au bruit.
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 11 / 16
Algorithme du perceptron
Forme duale de l’algorithme du perceptron
Remarque : l’hypoth`
ese finale est une combinaison lin´
eaire des exemples
d’apprentissage.
w=
l
X
i=1
iyixi.
Les nombres isont positifs et ´
egaux au nombre de fois o`
u une mauvaise
classification de xia entraˆ
ın´
e une mise `
a jour du perceptron. Ils peuvent ˆ
etre vus
comme une repr´
esentation duale de la solution :
f(x)=sgn(hw,xi+b)=sgn l
X
i=1
iyihxi,xi+b!.
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 12 / 16
Algorithme du perceptron
Forme duale de l’algorithme du perceptron
entr´
ee : S={(x1,y1),...,(xl,yl)}, un ´
echantillon compl´
et´
e
lin´
eairement s´
eparable
=02Rl
r´
ep´
eter
Pour i=1`
al
Si yi(Pl
j=1jyjhxj,xii)0alors
i=i+1
FinSi
FinPour
Jusqu’`
a ce qu’il n’y ait plus d’erreurs
Sortie :
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 13 / 16
Algorithme du perceptron
Exercice
Utilisez l’algorithme du perceptron pour s ´
eparer l’´
echantillon
{((0,0),1),((0,1),1),((1,0),1),((1,1),1)}. Dessinez l’hyperplan obtenu.
kkxkmal class´
eyk
00000 001 -1
11000 ... ...
... ... ... ...
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 14 / 16
Algorithme du perceptron
Propri ´
et´
es de l’algorithme dual
dans la repr´
esentation duale, le nombre de param`
etres de la solution ne d´
epend
pas de la dimension de l’espace dans lequel les xisont plong´
es,
les exemples d’apprentissage ne sont pris en compte par l’algorithme que par
l’interm ´
ediaire de leurs produits scalaires.
On appelle Matrice de Gram la matrice G=(hxi,xji)1i,jl: elle suffit `
a trouver
une solution.
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 15 / 16
Algorithme du perceptron
Plongements non lin´
eaires
 
 
 


 
 
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 16 / 16
Algorithme du perceptron
S´
eparation lin´
eaire apr`
es plongement non lin´
eaire
Soit S={(0,0),1;(0,1),1;(1,0),1;(1,1),1}.
On consid`
ere le plongement de R2dans R3d´
efini par
(x(1),x(2))=(x(1),x(2),x(1)x(2)).
S={((x),y)|(x,y)2S}={(0,0,0),1;(1,0,0),1;(0,1,0),1;(1,1,1),1}.
S={(0,0,0,1),1;(1,0,0,1),1;(0,1,0,1),1;(1,1,1,1),1}.
Algorithme du perceptron
kwkxkmal class´
eyk
00000 0001 -1
1 0 0 0 -1 1001 1
21000 1111 -1
3 0 -1 -1 -1 1001 1
... ... ... ...
17 1 1 -3 -1
ce qui conduit
au plan s´
eparateur d’´
equation x(1)+x(2)3x(3)1=0 dans R3et
`
a la courbe s´
eparatrice d’´
equation x(1)+x(2)3x(1)x(2)1=0 dans R2.
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 17 / 16
Algorithme du perceptron
S´
eparation lin´
eaire apr`
es plongement non lin´
eaire (suite)
On consid`
ere un plongement de R2dans H, espace muni d’un produit scalaire, v´
erifiant
h(x),(y)iH=1+x(1)y(1)+x(2)y(2)+x(1)y(1)x(2)y(2).
Matrice de Gram de S:
(h(xi),(xj)iH)1i,j|S|=0
B
@
1111
1212
1122
1224
1
C
A
Algorithme dual du perceptron
knk(xk)mal class´
eyk
00000 x1-1
11000 x21
21100 x4-1
31101 x21
... ... ... ...
17 6443
f(x)=sgn(
4
X
i=1
niyih(xi),(x)iH)
=sgn(6+4(1+x(1))+4(1+x(2))3(1+x(1)+x(2)+x(1)x(2)))
=sgn(1+x(1)+x(2)3x(1)x(2))
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 18 / 16
Algorithme du perceptron
Kernel trick
On appelle noyau toute fonction k:XX!Rqui peut ˆ
etre interpr´
et´
ee comme un
produit scalaire dans un plongement :
k(x,y)=h(x),(y)i
Tout algorithme d’apprentissage qui n’utilise que les produits scalaires des donn ´
ees
(matrice de Gram) peut ˆ
etre kernelis ´
e.
Le perceptron `
a noyau est un classifieur
f:x7! signe(
l
X
i=1
iyik(x,xi))
qui est
lin´
eaire dans l’espace de plongement (avec toutes les garanties associ´
ees) et
non lin´
eaire dans l’espace initial.
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 19 / 16
Algorithme du perceptron
Perceptron `
a noyau
entr´
ee : S={(x1,y1),...,(xl,yl)}, un ´
echantillon compl´
et´
e
=02Rl
r´
ep´
eter
Pour i=1`
al
Si yi(Pl
j=1jyjk(xj,xi)) 0alors
i=i+1
FinSi
FinPour
Jusqu’`
a ce qu’il n’y ait plus d’erreurs
Sortie : x7! signe(Piiyik(x,xi))
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 20 / 16
Algorithme du perceptron
Exemples de noyaux :
Noyau polynomial homog`
ene
X=Rn,k(x,y)= n
X
i=1
xiyi!d
Noyau polynomial
X=Rn,k(x,y)= 1+
n
X
i=1
xiyi!d
.
Noyau gaussien :
k(x,y)=exp ||xy||2
22
La dimension de l’espace de plongement est finie pour les noyaux polynomiaux et infini
(espace de Hilbert) pour le noyau gaussien . . . mais le plongement est virtuel.
Franc¸ois Denis, Hachem Kadri, C ´
ecile Capponi ( Laboratoire d’Informatique Fondamentale de Marseille Universit´
e d’Aix-Marseille)Introduction `
a l’apprentissage automatique February 3, 2017 21 / 16
1 / 6 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !