Académique Documents
Professionnel Documents
Culture Documents
Reseaux Neurones Perceptron
Reseaux Neurones Perceptron
Ricco RAKOTOMALALA
Mtaphore biologique
Fonctionnement du cerveau Transmission de linformation et apprentissage
Rception dune information (signal) Activation + Traitement (simple) par un neurone Transmission aux autres neurones (si seuil franchi) A la longue : renforcement de certains liens APPRENTISSAGE
2
Y { (+ ),0 ()} 1
Fonction de transfert Fonction seuil -- Fonction de Heaviside
Couche de sortie
X0=1
a0
X1
Entres Descripteurs
a1 a2 a3
1 0
X2
d(X )
X3
d ( X ) = a0 + a1 x1 + a2 x2 + a3 x3
Si d ( X ) > 0 Alors Y = 1 Sinon Y = 0
a0
X1
a1 a2 a3
Comment calculer les poids synaptiques partir dun fichier de donnes (Y ; X1, X2, X3)
Faire le parallle avec la rgression et les moindres carrs Un rseau de neurones peut tre utilis pour la rgression (fonction de transfert avec une sortie linaire)
X2
X3
X1 0 0 1 1
X2 0 1 0 1
Y 0 0 0 1
1.1 0.9 0.7 0.5 0.3 0.1 -0.1 -0.3 -0.5 -0.5 0 0.5
1.5
Donnes
Principales tapes : 1. 2. 3.
4.
Mlanger alatoirement les observations Initialiser alatoirement les poids synaptiques Faire passer les observations unes unes Calculer lerreur de prdiction pour lobservation Mettre jour les poids synaptiques Jusqu convergence du processus
a j a j + a j
avec
1
Force du signal
0 -0.5 -2
a j = ( y y )x j
1.5
0.5
-4
-6
Dtermine lamplitude de lapprentissage Quelle est la bonne valeur ? Trop petit lenteur de convergence Trop grand oscillation En gnral autour de 0.05 ~ 0.15 (0.1 dans notre exemple)
x0 = 1 x = 0 1 x2 = 0 y = 0
Nouvelle frontire :
1
0 -0.5 -2 0 0.5 1 1.5
-4
-6
x0 = 1 x = 1 1 x2 = 0 y = 0
Nouvelle frontire :
1
0 -0.5 -2 0 0.5 1 1.5
-4
-6
x0 = 1 x = 0 1 x2 = 1 y = 0
Nouvelle frontire :
1
0 -0.5 -2 0 0.5 1 1.5
Convergence ?
(1) (2) (3) (4) (5) Plus aucune correction effectue en passant tout le monde Lerreur globale ne diminue plus significativement Les poids sont stables On fixe un nombre maximum ditrations On fixe une erreur minimale atteindre 9
-4
-6
1 0
1 0
d(X )
d(X )
g (v ) =
1 1 + e v v = d(X )
La rgle de dcision devient : Si g(v) > 0.5 Alors Y=1 Sinon Y=0
Equipe de recherche en Ingnierie des Connaissances Laboratoire ERIC
10
a0
X1
a1 a2 a3
Sortie du rseau
y = g (v) = f [d ( x)]
X2
X3
1 E = 2
( y ( ) y ( ) )
Mais toujours fidle au principe dincrmentalit, loptimisation est bas sur la descente du gradient !
Equipe de recherche en Ingnierie des Connaissances Laboratoire ERIC
11
Descente du gradient
Fonction de transfert sigmode drivable
E = [ y ( ) y ( )] g '[v( )] x j ( ) a j i
Rgle de mise jour des coefficients pour un individu (Rgle de Widrow-Hoff ou Rgle Delta)
a j a j + ( y y ) g ' (v ) x j
La convergence vers le minimum est bonne dans la pratique Capacit traiter des descripteurs corrls (pas dinversion de matrice) Capacit traiter des problmes trs grande dimension (lignes x colonnes) Mise jour facile si ajout de nouveaux individus dans la base
12
y1
X0=1 X1
yk = 1 ssi y = yk
(2) Output pour chaque sortie
yk = g[vk ]
y2
avec
X2
(3) P(Y/X)
P(Y = yk / X ) g[vk ]
X3
y3
13
Ramener les descripteurs sur la mme chelle Standardisation, Normalisation, etc. (ventuellement) Subdiviser les donnes en 3 parties : Training + Validation + Test Attention au paramtrage, notamment de la rgle darrt
Equipe de recherche en Ingnierie des Connaissances Laboratoire ERIC
14
1.5
X1 0
X2 0 1 0 1
Y 0 1 1 0
(1)
0 1 1
Donnes
- 0.5
0.5
1.5
X0=1
X0=1
(2)
X1 X2 X3
Couche dentre Couche cache Couche de sortie
Une combinaison de sparateurs linaires permet de produire un sparateur global non-linaire (Rumelhart, 1986) Perceptron Multi-Couches (PMC)
On peut avoir plusieurs couches caches
15
Passage C.Entre
C.Cache
v1 = a0 + a1 x1 + a2 x2 + a3 x3 v2 = b0 + b1 x1 + b2 x2 + b3 x3
Sortie de la C.Cache X0=1
X0=1 X1 X2 X3
1 1 + e v1 1 u 2 = g (v2 ) = 1 + e v2 u 1 = g ( v1 ) =
Passage C.Cache C.Sortie
z = c 0 + c1u 1 + c 2 u 2
Sortie du rseau
y = g (z) =
1 1 + ez
Proprit fondamentale : Le PMC est capable dapproximer toute fonction boolenne existante pourvu que lon fixe convenablement le nombre de neurones dans la couche cache
Equipe de recherche en Ingnierie des Connaissances Laboratoire ERIC
16
X0=1 X1 X2 X3
En sortie : Erreur mesure (pour un individu)
Lalgorithme de la rtro-propagation du gradient donne de bons rsultats dans la pratique mme si le risque de stagnation dans un optimum local nest pas ngliger normaliser ou standardiser imprativement les donnes et bien choisir la constante dapprentissage
Equipe de recherche en Ingnierie des Connaissances Laboratoire ERIC
17
x2
1
X0=1 X1 X2
X0=1
45.03 -36.83
-11.32 17.68
u1 vs. u2 Control variable : Y
-38.95
0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95
u2 x1
negatif positif
La sortie des neurones de la couche cache propose un nouvel espace de reprsentation o il est possible de discriminer linairement les exemples !
0 1
u1
18
Classifieur trs prcis (si bien paramtr) Incrmentalit Scalabilit (capacit tre mis en uvre sur de grandes bases)
Modle bote noire (causalit descripteur variable prdire) Difficult de paramtrage (nombre de neurones dans la couche cache) Problme de convergence (optimum local) Danger de sur-apprentissage (utiliser imprativement un fichier de validation)
19
Rfrences
Neural network Tutorial slides of Andrew Morre http://www.autonlab.org/tutorials/neural.html Apprentissage partir dexemples Notes de cours F. Denis & R. Gilleron Lille 3 http://www.grappa.univ-lille3.fr/polys/apprentissage/ Machine Learning Tom Mitchell, Ed. Mc Graw-Hill International, 1997. Rseaux de neurones sur WIKIPEDIA Rseaux de neurones Mthodologie et Applications Sous la direction de Grard Dreyfus, Ed. Eyrolles, 2004.
20