Académique Documents
Professionnel Documents
Culture Documents
Master IT
Anne scolaire
2007/2008
INTRODUCTION
AUX RESEAUX DE NEURONES
ET
AUX ALGORITHMES GENETIQUES
Ahmed Hammouch
HAMMOUCH Ahmed
SOMMAIRE
Premire partie : Introduction aux rseaux de neurones artificiels
I. INTRODUCTION
II. HISTORIQUE
III. LE NEURONE BIOLOGIQUE
III.1. Le neurone
III.2. Structure dun neurone
III.2.1. Le corps cellulaire
III.2.2. Les dendrites
III.2.3. L'axone
III.3. Fonctionnement des neurones
IV. MDELISATIONS
IV.1. Les dbuts : Le modle de Mac Culloch et Pitts (1943)
IV.2. Modle gnral
IV.3. Le neurone sommateur
IV.4. Le neurone distance
IV.5. La structure des connexions
IV.6. La dynamique des connexions
V. RESEAU MONOCOUCHE
V.1. Structure du rseau
V.2. Principe dapprentissage
V.2.1. La loi de Hebb
V.2.2. La rgle d'apprentissage du Perceptron et dAdaline
V.3. Limites des rseaux monocouche : la sparation linaire
V.4. Variation du seuil
V.5. Illustration de la rgle du Perceptron
V.6. Illustration de la rgle dapprentissage dAdaline
V.7. Vers des rseaux multicouches
VI. Mmoires associatives linaires
VI.1. Structure du rseau
VI.2. Fonctionnement
VI.3. Apprentissage
VI.4. Illustration
HAMMOUCH Ahmed
VI.5. Limitations
VII. RESEAU MULTICOUCHES
VII.1. Structure dun rseau multicouches
VII.2. Apprentissage dans un rseau multicouches
VII.3. Aspects pratiques de lalgorithme
VII.3.1. Lissage de la rgle dadaptation
VII.3.2. Valeurs initiales des poids
VII.3.3. Choix du pas dadaptation
VII.3.4. Test darrt
VII.3.5. Dimensionnement du rseau
VII.3.6. Base dapprentissage et de gnralisation
VII.3.7. Le temps de calcul
VII.4. Exemples dutilisation du rseau multicouches
VII.4.1. Approximation dune fonction
VII.4.2. Classification dimages
VIII. RESEAU DE KOHONEN
VIII.1. Rseau apprentissage comptitif
VIII.1.1. Structure du rseau
VIII.1.2. Lapprentissage comptitif standard
VIII.1.3. Apprentissage comptitif sensible la frquence et
apprentissage comptitif pnalisant le rival
VIII.1.3.1. Apprentissage comptitif sensible la frquence
VIII.1.3.2. Apprentissage comptitif pnalisant le rival
VIII.2. Cartes auto - organisatrices de Kohonen
VIII.2.1. Structure du rseau
VIII.2.2. Fonctionnement du rseau
VIII.2.3. Apprentissage et voisinage dans une couche de Kohonen
VIII.2.4. Paramtres dapprentissage
VIII.2.5. Quelques remarques pratiques
VIII.2.6. Convergence de I'algorithme
VIII.2.7. Illustration
IX. LE MODELE DE HOPFIELD
IX.1. Structure du rseau
IX.2. Dynamique du rseau
IX.2.1. Mise jour eu mode synchrone
IX.2.2. Mise jour en mode asynchrone
IX.3. Apprentissage du rseau
HAMMOUCH Ahmed
HAMMOUCH Ahmed
cx|x t|x M
\wv| t xt wx
xx t|y|v|x
HAMMOUCH Ahmed
I. Introduction
Sous le terme de rseaux de neurones artificiels (ou formels), on regroupe
aujourdhui un certain nombre de modles dont lintention est dimiter certaines
des fonctions du cerveau humain en reproduisant certaines de ses structures de
base.
Les rseaux de neurones artificiels sont composs dlments simples (ou
neurones) connects entre eux. Ces lments ont t fortement inspirs par le
systme nerveux biologique.
Comme dans la nature, le fonctionnement dun rseau de neurones est fortement
influenc par les connexions des lments entre eux. Les valeurs de ces connexions
(ou poids) sont ajustes durant une phase dentranement.
Cette phase dite dapprentissage permet aux rseaux de neurones de raliser des
taches complexes dans diffrents types dapplication (classification, identification,
reconnaissance de caractres, de la voix, vision, systme de contrle). Les
rseaux de neurones peuvent souvent apporter une solution simple des problmes
encore trop complexes ne pouvant tre rsolus rapidement par les ordinateurs
actuels (puissance de calcul insuffisante) ou par notre manque de connaissances.
La mthode dapprentissage dite supervis est souvent utilise mais des techniques
dapprentissage non supervis existent.
Les rseaux de neurones ont une histoire relativement jeune (environ 50 ans) et les
applications intressantes des rseaux de neurones nont vu le jour quil une
vingtaine danne (dveloppement de linformatique).
Lobjectif de ce cours est de prsenter (sommairement) les grands types de rseaux
de neurones, leurs rgles et algorithmes dapprentissage et leurs applications.
HAMMOUCH Ahmed
II. Historique
Historiquement, les origines de cette discipline les rseaux de neurones sont trs
diversifies.
En 1943, McCulloch et Pitts tudirent un ensemble de neurones formels
interconnects, et montrrent leurs capacits calculer certaines fonctions logiques.
En 1949, Hebb, dans une perspective psycho- physiologique, souligne limportance
du couplage synaptique dans les processus dapprentissage et prsente une rgle
dapprentissage. De nombreux modles de rseaux de neurones sinspirent,
aujourdhui encore, de cette rgle de Hebb.
En 1958, Rosenblatt dcrit le premier modle oprationnel de rseaux de neurones
mettant en uvre les ides de Hebb, McCulloch et Pitts : le Perceptron. Cest un
rseau de neurones inspir du systme visuel. Il possde deux couches de neurones
: une couche de perception et une couche lie la prise de dcision. Cest le
premier systme artificiel capable dapprendre par exprience. Ce modle suscita
beaucoup de recherches, et sans doute trop despoirs.
Dans la mme priode, Le modle de Adaline (ADAptive LInear NEuron) a t
prsent par Widrow et Hoff. Ce modle sera par la suite le modle de base des
rseaux de neurones multicouches.
En 1969, deux mathmaticiens, Minsky et Papert publient une tude montrant les
limites du Perceptron. Cela va avoir une grande incidence sur la recherche dans ce
domaine. Elle va fortement diminuer jusquen 1972, o Kohonen prsente ses
travaux sur les mmoires associatives et propose des applications la
reconnaissance de formes.
Le renouveau actuel des rseaux de neurones est d des contributions originales,
comme celles de Hopfield en 1982, qui en montrant lanalogie des rseaux de
neurones avec certains systmes physiques, a permis de leur appliquer un
formalisme riche et bien matris. Plus tard, en 1985, des nouveaux modles
mathmatiques ont permis de dpasser les limites du Perceptron.
Aujourdhui les applications pratiques des rseaux de neurones sont nombreuses et
concernes plusieurs domaines :
HAMMOUCH Ahmed
HAMMOUCH Ahmed
III.1. Le neurone
Le neurone est une cellule nerveuse qui est l'lment de base du systme nerveux
central. Celui-ci en possderait environ cent milliards.
Les neurones possdent de nombreux points communs dans leur organisation
gnrale et leur systme biochimique avec les autres cellules. Ils prsentent
cependant des caractristiques qui leur sont propres et se trouvent au niveau des
cinq fonctions spcialises qu'ils assurent :
Recevoir des signaux en provenance de neurones voisins,
Intgrer ces signaux,
Engendrer un influx nerveux,
Le conduire,
Le transmettre un autre neurone capable de le recevoir.
III.2. Structure dun neurone
Un neurone est constitu de trois parties (figure III.1) :
Le corps cellulaire,
Les dendrites,
L'axone.
Le noyau
Laxone
Les dendrites
Le corps cellulaire
Figure III.1 : Schma du neurone
HAMMOUCH Ahmed
10
HAMMOUCH Ahmed
11
Pour former le systme nerveux, les neurones sont connects les uns aux autres
suivant des rpartitions spatiales complexes. Les connexions entre deux neurones
se font en des endroits appels synapses o ils sont spars par un petit espace
synaptique de l'ordre d'un centime de microns (figure III.2).
III.3. Fonctionnement des neurones
D'une faon simple, on peut dire que le neurone traite les courants lectriques qui
lui parviennent de ses dendrites, et qu'il transmet le courant lectrique rsultant de
ce traitement aux neurones auxquels il est connect par l'intermdiaire de son
axone.
Le schma classique prsent par les biologistes est celui d'un soma effectuant une
sommation des influx nerveux transmis par ses dendrites (figure III.3). Si la
sommation dpasse un seuil, le neurone rpond par un influx nerveux ou potentiel
d'action qui se propage le long de son axone. Si la sommation est infrieure un
seuil, le neurone reste inactif.
L'influx nerveux qui se propage entre diffrents neurones est, au niveau de ces
neurones, un phnomne lectrique.
Dendrites
Corps cellulaire
Seuillage
+
Axone
Sommation
Figure III.3 : Fonctionnement du neurone
HAMMOUCH Ahmed
12
IV. MDELISATIONS
IV.1. Les dbuts : Le modle de Mac Culloch et Pitts (1943)
La premire modlisation d'un neurone date des annes quarante. Elle a t
prsente par Mac Culloch et Pitts.
S'inspirant de leurs travaux sur le neurone biologique, ils ont propos le modle
suivant (figure IV.1):
Un neurone formel fait une somme pondre des potentiels d'action qui lui
parviennent (chacun de ces potentiels est une valeur numrique qui
reprsente l'tat du neurone qui l'a mis), puis s'active suivant la valeur de
cette sommation pondre. Si cette somme dpasse un certain seuil, le
neurone est activ et transmet une rponse (sous forme de potentiel d'action)
dont la valeur est celle de son activation. Si le neurone n'est pas activ, il ne
transmet rien.
Ce neurone formel est un automate boolen, cest dire que ses entres et sa sortie
sont boolennes.
x1
w1
.
.
.
+1
-1
wk
xk
Poids des
connexions
Fonction Seuillage
dentre
HAMMOUCH Ahmed
13
x1
w1
.
.
.
h
wk
xk
HAMMOUCH Ahmed
14
x1
w1
.
.
.
wn
xn
Figure IV.3 : Neurone formel sommateur discret
-
= w x + w x + ... + w x
11
2 2
n n
s = f ( p)
et
o wi sont les poids synaptiques (qui sont matrialiss par des cercles qui seront
gnralement omis dans les reprsentations ultrieurs), p est la fonction dentre
totale du neurone et f la fonction dactivation du neurone (ou la fonction de
neurone).
Sous la forme matricielle : p = W t X et s = f (W t X )
o W est le vecteur constitu des coefficients synaptiques et X constitu des
composantes du vecteur dentre :
HAMMOUCH Ahmed
15
w
x
1
1
.
.
.
W = et X = .
.
.
w
x
n
n
HAMMOUCH Ahmed
16
- Une fonction "signe" dont les valeurs de la sortie sont 1 et +1 (figure IV.6.a) ou
une fonction "chelon" (seuil, Heaviside) dont les valeurs de la sortie sont 0 ou +1
(figure IV.6.b) avec ventuellement un seuil : f(p)=Sign(p- ) ou f(p)=U(p- ).
Dans ce cas le neurone est binaire.
s
b)
a)
a)
b)
f ( p) =
ou
e
e
p
)
T
p
)
T
+ 1
s]1 ; + 1]
HAMMOUCH Ahmed
17
f ( p) =
p
)
T
p
)
T
+ 1
s ]0 ; + 1]
1
p
(
)
T
1+ e
P (V = 1) = 1 P(V = 1)
HAMMOUCH Ahmed
18
DIST
wn
xn
Figure IV.9 : Neurone formel distance
IV.5. La structure des connexions
Les structures qui peuvent tre utilises sont trs varies. En effet, si lon se rfre
aux tudes biologiques du cerveau, on constate que le nombre de connexions est
norme formant ainsi un systme dune complexit gigantesque.
Dune manire gnrale, larchitecture des rseaux de neurones formels peut aller
dune connectivit totale (tous les neurones sont relis les uns aux autres), une
connectivit locale o les neurones ne sont relis qu leurs proches voisins. Il est
courant dutiliser des rseaux structure rgulire pour faciliter leurs utilisations.
On distingue deux grandes catgories de modles classiques de rseaux :
- Les rseaux couches (ou non boucls). Comme leur nom lindique, ces
rseaux sont constitus dune ou de plusieurs couches de neurones. Les
neurones qui appartiennent une mme couche ne sont pas connects entre eux,
et chacune des couches recevant des signaux de la couche prcdente et
transmettant le rsultat de ses traitements la couche suivante (il n'y a pas de
connexion "vers l'arrire"). Les deux couches dextrmes correspondent la
couche qui reoit ses entres du milieu extrieur dune part, et la couche qui
HAMMOUCH Ahmed
19
HAMMOUCH Ahmed
20
V. Rseau monocouche
V.1. Structure du rseau
Un rseau de neurone monocouche est constitu dune couche de neurones (de
sortie) connects un ensemble dentres par lintermdiaire de connexions
modifiables (poids) wjk (figure V.1). Les neurones ne sont pas interconnects et
reoivent tous les mmes informations provenant des entres.
e1
x1
e2
x2
ek
ep
wik
xi
xn
HAMMOUCH Ahmed
21
wij
xj wij
0
0
1
0
0
0
1
+
HAMMOUCH Ahmed
22
5/ Tant que tous les exemples de la base d'apprentissage ne sont pas traits
correctement (i.e. modification des poids), retour l'tape 2.
Exemple d'application de l'algorithme d'apprentissage de Hebb : Pour simplifier
les calculs, choisissons un rseau avec un seul neurone deux entres e1 et e2
(figure V.3). La fonction dactivation du neurone est un chelon.
e1
w1
x
w2
e2
Figure V.3 : Rseau de neurones pour la rsolution du problme exprim table V.2,
(les 2 entres sont considres comme deux neurones)
Nous allons raliser l'apprentissage sur un problme trs simple. La base
d'apprentissage est dcrite par la table 2 :
e1 e2 x Exemple
1 1 1
(1)
1 -1 1
(2)
-1 1 -1
(3)
-1 -1 -1
(4)
Table V.2. Base d'exemples d'apprentissage pour la loi de Hebb.
1/ Conditions initiales : = +1, les poids et le seuil sont nuls (w1=0, w2=0, =0).
2/ Calculons la valeur de x pour l'exemple (1) :
3/ a = w1.e1 + w2.e2 - = 0,0.1 + 0,0.1 0,0 = 0 => a 0 => x = -1
4/ La sortie est fausse, il faut donc modifier les poids en appliquant :
w1 = w1 + e1.x = 0.0 + 1.1 = 1
w2 = w2 + e2.x = 0.0 + 1.1 = 1
2/ On passe l'exemple suivant (2) :
3/ a = 1.1 + 1.-1 -0.0 = 0
=> a 0 => x = -1
HAMMOUCH Ahmed
23
HAMMOUCH Ahmed
24
w1
xi
wi
pd
+
wn
ALGO. DADAPTATION
PARAMETRIQUE
xn
ADALINE
x1
w1
xi
wi
yd
+
wn
xn
ALGO. DADAPTATION
PARAMETRIQUE
PERCEPTRON
Figure V.4 : Apprentissage dans les neurones dAdaline et du Perceptron
Lapprentissage se fait avec superviseur, cest dire que lon prsente un vecteur
lentre du rseau et en mme temps on fournit la sortie dsire : dans le cas
HAMMOUCH Ahmed
25
w k+1 = w k + w k
w k = ( y y d ) * x k
o est un gain positif dadaptation.
L'algorithme d'apprentissage du Perceptron est semblable celui utilis pour la loi
de Hebb. Les diffrences se situent au niveau de la modification des poids.
1/ Initialisation des poids et du seuil des faibles valeurs choisies au hasard.
2/ Prsentation d'une entre El = (e1, ... en) de la base d'apprentissage.
3/ Calcul de la sortie obtenue x1 pour cette entre : a = (wi . ei) -
x1 = signe (a), ( si a > 0 alors x1 = +1 sinon a 0 alors x 1= -1 )
4/ Si la sortie x1 du Perceptron est diffrente de la sortie dsire dl pour cet exemple
d'entre El, alors modification des poids ( le pas de modification) :
wi(t+1) = wi(t) + .((d l x1).ei)
5/ Tant que tous les exemples de la base d'apprentissage ne sont pas traits
correctement (i.e. modification des poids), retour l'tape 2.
Exemple de fonctionnement de l'algorithme d'apprentissage du Perceptron :
Base d'exemples d'apprentissage :
e1 e2 d Exemple
1 1 1
(1)
-1 1 -1
(2)
-1 -1 -1
(3)
1 -1 -1
(4)
HAMMOUCH Ahmed
26
(-1,+1)
Classe 1
(+1,+1)
Classe 2
e1
(-1,-1)
(+1,-1)
HAMMOUCH Ahmed
27
Dans le cas dAdaline les poids sont modifis selon une rgle du mme type que
prcdemment :
avec
w k+1 = w k + w k
w k = ( p p d ) * x k
p
E
= 2 * (p pd ) *
w k
w k
or
p = w jx j
et finalement,
j=1
p
= xk ,
w k
E
= 2 * ( p p d ) * x k . Do la proposition de wk.
w k
Cet algorithme est trs simple, mais il prsente linconvnient des algorithmes de
type gradient stochastique en ce qui concerne la convergence. Par ailleurs, il est
vident que minimiser lerreur quadratique instantane nest pas identique
minimiser lerreur quadratique moyenne calcule sur toute la base dapprentissage,
et que ce dernier critre est plus performant. Dans ce cas il faut utiliser des
mthodes de moindres carrs bien connues en automatique et en traitement du
signal. Ces mthodes sont plus rapides et plus sres en convergence mais plus
lourdes dun point de vue calcul.
La diffrence essentielle de lalgorithme dAdaline avec lalgorithme du Perceptron
rside dans le fait que dans ce dernier, le terme (y- yd) est une erreur de dcision.
Elle vaut 0 si la dcision est correcte, et 1 dans le cas contraire. La correction ne
tient donc pas compte de la valeur de p : que celle-ci soit trs proche du seuil ou
trs loigne, la correction est donc la mme. Ainsi, les avantages de la rgle
dAdaline sont doubles :
- Dune part, elle permet dobtenir une solution approche quand le problme
nest pas linairement sparable,
- Dautre part, elle permet de rendre plus robuste la solution de sparation linaire
trouve, quand il yen a une, en tendant vers un minimum local derreur donne
comme la somme des erreurs quadratiques sur lensemble des exemples.
HAMMOUCH Ahmed
28
n
wjej = 0
j =1
n
1 et il rpond 0 (ou -1), pour w j e j < . La frontire sparant ces deux classes
j =1
est donc un hyperplan de dimension (n-1) o n est le nombre des units dentre.
Ceci peut tre visualis trs simplement en dimension 2 (figure V.6). Lhyperplan
sparant lespace dentre en 2 est de dimension 2-1=1, soit une droite dquation :
w1
e1 +
, si w20.
w2
w2
w1
+1
e2
x2
w2
w1 e1 + w2 e2 = 0
Classe 1
Classe 2
e1
HAMMOUCH Ahmed
29
Cette proprit des neurones seuil constitue une trs forte limite leurs
possibilits de classification. Car elle signifie quavec un rseau monocouche, il
nest possible de rsoudre que des problmes linairement sparables.
Illustrons ceci par deux exemples dont le premier est un OU logique (tudier
prcdemment) o les classes sont linairement sparables et le deuxime un OU
EXCLUSIF o les classes ne sont pas linairement sparables.
La table de vrit de lopration OU logique est la suivante :
e1
0
0
1
1
e2 s=e1 OU e2
0
0
1
1
0
1
1
1
2e1 + 2e 2 1 = 0
Classe 1
Classe 2
0,5
e1
HAMMOUCH Ahmed
30
e1
2
s
+1
=1
e 2 = e1 + 0.5
2
e2
e2 s=e1 OU EXCLUSIF e2
0
0
1
1
0
1
1
0
y=0
y=0
y=1
y=1
1
e1
HAMMOUCH Ahmed
31
e1
-2,69
1=2,21
-4,91
-2,8
-3,39
e2
-4,56
2=4,76
3=-2,28
4,95
w1
e1 +
, si w20.
w2
w2
HAMMOUCH Ahmed
32
au seuil, volue alors selon une rgle dadaptation identique aux autres poids du
neurone.
Cette modification permet dobtenir des sparatrices quelconques avec des valeurs
finies des poids.
e2
/w2
/w1
e1
w1
.
.
.
en
+1
=0
wn
Figure V.11 : Neurone seuil volutif. Les sparatrices en pointills de plus en plus
verticales correspondent un seuil tendant vers linfini.
HAMMOUCH Ahmed
33
a)
b)
c)
HAMMOUCH Ahmed
34
HAMMOUCH Ahmed
35
HAMMOUCH Ahmed
36
voir peuvent tre tendues en effet, de tels rseaux peuvent tre dcomposs en
rseaux lmentaires une seule sortie.
1 couche
(Sparation linaire)
d
2 couches
(Formes convexes)
c
2 couches
(Formes convexes)
e
3 couches
(Formes quelconques)
HAMMOUCH Ahmed
37
s1
s2
sp
HAMMOUCH Ahmed
38
VI.2. Fonctionnement
Le principe de fonctionnement d'une mmoire associative se rsume ainsi. Soit (E1,
E2, ..., El, ...) un ensemble de vecteurs mmoriser. A chaque vecteur El appel
"prototype" de l'espace d'entre est associ un vecteur de sortie Sl. La relation
d'association entre El et Sl est linaire. Elle est donne par l'quation :
S = WE
l
l
o W est la matrice des poids de dimension (p.n). C'est une matrice rectangulaire
de p lignes et n colonnes.
L'objectif est de faire raliser ce rseau des associations entre les vecteurs
d'entres et les vecteurs de sortie dsirs. Ceci ncessite une tape d'apprentissage.
VI.3. Apprentissage
L'apprentissage est de type supervis. La base d'apprentissage est compose de
couple de vecteurs d'entre et des vecteurs de sortie associs. L'algorithme
d'apprentissage initial fait appel la rgle de Hebb. Une entre El est applique sur
les neurones d'entre du rseau et l'on force dans le mme temps les valeurs des
neurones de sortie Sl. Le poids de chaque connexion est alors modifi selon la
coactivit du neurone affrent (entre) et du neurone effrent (sortie).
Wki = sk .ei
Cet algorithme est itr sur tous les exemples de la base d'apprentissage.
A la fin du processus d'apprentissage, si la matrice W est initialement nulle (W =
0), on obtient :
W = Sl ElT
l
VI.4. Illustration
Les images de la figure VI.2. illustrent le fonctionnement, d'aprs Kohonen, d'une
mmoire auto - associative (pour les quelles S=E).
HAMMOUCH Ahmed
a)
39
b)
c)
d)
VI.5. Limitations
Lassociateur linaire une couche est trs simple, hlas trs peu efficace.
Une condition essentielle de bon fonctionnement de la mmoire associative est
lorthogonalit des prototypes appris. Cette condition nest en gnrale pas remplie
avec les prototypes bruts. En pratique, il est ncessaire de pr - traiter les
prototypes dentre.
Cette contrainte a une implication sur la capacit des mmoires associatives. En
effet, les vecteurs prototypes appris devant tre orthogonaux, si la dimension des
vecteurs est N, la capacit de la mmoire est limite N.
Dautre part, la distorsion dun vecteur par une translation ou une rotation ne
conservera pas lorthogonalit des vecteurs : les mmoires associatives ne sont pas
robuste ces transformations.
HAMMOUCH Ahmed
40
Couche
dentre
Couche
cache 1
Couche
cache 2
Couche
de sortie
HAMMOUCH Ahmed
41
Le formalisme mathmatique
Nous prsentons dans ce paragraphe le formalisme mathmatique permettant
dobtenir la rgle de modifications des poids selon la mthode de rtropropagation
du gradient de lerreur. Pour cela considrons (simplifier les calculs) le rseau
trois couches de la figure VII.2. Par convention, la couche dentre ne fait que
transmettre les entres : le rseau ne comporte que deux couches relles de
traitement, la couche interne ou couche cache et la couche de sortie. On veut,
comme avec le rseau monocouche vu prcdemment, associer un vecteur de sortie
yd un vecteur dentre x. En ralit, compte tenu des valeurs des poids des
connexions, la sortie observe est yyd. On peut y associer le mme terme derreur
quadratique quau chapitre prcdent (rseau monocouche).
HAMMOUCH Ahmed
42
y = ( p ) = w x
i
i
j = 1 ij j
(VII.1)
(VII.2)
E=
1 n
2
( yi ydi )
2i =1
HAMMOUCH Ahmed
43
(3)
=
. i
(2)
(3)
(2)
i couche3 p
w
w
kh
i
kh
(VII.3)
De la relation
(3)
(3) (2)
y
=
w y
i
j couche2 ij j
(VII.4)
(3)
p
i
(3)
(3)
= y y . ' p
i
di
i
p i( 3)
w (ij3) y (j2) .
=
(2)
( 2)
w kh w kh jcouche2
(VII.5)
( 2)
( 2)
p (i 3)
( 3)
( 2)
w
=
ik
(2)
( 2) [ y k ] ,
w kh
w kh
( 3)
HAMMOUCH Ahmed
44
( 2)
(3) (1)
i = w(3) .
w y
ik
km m
(2)
(2)
w
w m couche1
kh
kh
(VII.7)
Le seul terme de la somme sur m dont la drive est non nulle est celui qui contient
w (kh2) , cest--dire celui correspondant m = h. En calculant la drive, on a
finalement :
(3)
i = w(3) . ' p (2) . y (1)
k h
ik
(2)
w
kh
(VII.8)
k h
i
di i ik
i couche3
(1)
c'est--dire, en posant i(3) = yi(3) ydi . ' pi(3) et en sortant les termes y h et
' p
(2)
de la somme sur i, on obtient :
k
(VII.9)
(3) (3)
(2) (1)
=
w . ' p . y
i
ik k h
(2)
w
i couche3
kh
(VII.10)
(2)
(3) (3)
(2)
=
w . ' p
k
i
ik k
i couche3
HAMMOUCH Ahmed
45
(VII.11)
Les trois dernires relations se gnralisent nimporte quelle couche cache dun
( j)
rseau multicouches : lincrment dun poids w kh dune couche j est le produit de
( j1)
lentre y h provenant de la couche prcdente (j- 1) par lerreur attribue au
neurone k. Pour la dernire couche, lerreur sur chaque neurone est donne par le
( j)
superviseur. Pour un neurone k dune couche interne j, lerreur k est la somme
( j+1)
associes au neurone i de la couche suivante (j+1) pondres par
des erreurs i
( j+1)
entre ces derniers et le neurone k. On a alors :
les poids w ik
( j)
( j ) ( j 1)
w
= a . y
kh
k
h
(VII.12)
( j)
o lerreur k vaut :
(VII.13)
( j)
( j)
=y
y
k
k
dk
( j)
( j + 1) ( j + 1) ( j )
.w
. ' p
k
ik
i couche( j + 1) i
k
HAMMOUCH Ahmed
46
2
1 n ni
y y
d
2i =1
E (n)
w
jk
( n)
HAMMOUCH Ahmed
jk
47
(n + 1) = w
jk
( n) = w
jk
jk
(n) w
jk
( n 1)
HAMMOUCH Ahmed
48
HAMMOUCH Ahmed
49
Par ailleurs, il est clairement tabli que lordre de prsentations des exemples, au
rseau nest pas indiffrent ses performances.
VII.3.7. Le temps de calcul
Bien quil a prouv son efficacit pratique dans de nombreux problmes,
lalgorithme de rtropropagation du gradient prsente un certain nombre de
difficults encore non rsolues. Parmi ces points on trouve Le temps de calcul. En
effet, lalgorithme est extrmement lourd mettre en uvre sur des problmes de
grande taille.
En outre, il nexiste pas de rsultat thorique liant la complexit du problme au
temps dapprentissage ncessaire.
HAMMOUCH Ahmed
50
a)
b)
c)
d)
e)
Figure VII.4 : Approximation dune fonction a) Vecteurs dentranement b)Approximation ltat initiale c)Approximation aprs
100 cycle dapprentissage d)Approximation aprs 396 cycle dapprentissage e) Erreur quadratique totale. Le rseau utilis
comprend une couche cache avec cinq neurones et une couche de sortie avec un neurone.
HAMMOUCH Ahmed
51
a)
b)
c)
f)
d)
g)
e)
h)
Figure VII.5 : Les deux images tudies (a et b) et leurs images multispectrales
(c, d et e) pour limage a et (f, g et h) pour limage b.
HAMMOUCH Ahmed
52
a)
b)
E. en taillis
Eucalyptus
Chne-lige
Pin
Acacia
Mer
Sol nu
c)
d)
Figure VII.6 : a) et b) Les cartes de la ralit de terrain c) et d) et des rsultats de classification
obtenus par un rseau de neurones avec une couches cache (les vecteurs dentres sont obtenus
avec la mthode de la transforme en paquets dondelettes des niveaux de dcomposition 1&2).
, ENE =
ENT =
1
MN
x (m, n)
1
MN
m= 1 n = 1
M
m = 1 n =1
N
HAMMOUCH Ahmed
53
HAMMOUCH Ahmed
54
x1
y1
x2
y2
xd
wik
xD
yi
yn
K
E (t ) = X (t ) W u
avec
u = 1 si X (t ) Ck
k kt
kt 0 sin on
k =1
E (t )
w
= X (t ) W u
j jt
HAMMOUCH Ahmed
(VIII.3)
W (t + 1) = W (t ) (t )
j
j
55
E (t )
W
W (t + 1) = W (t ) + (t ). X (t ) W (t )u
j
j
j jt
(VIII.5)
Wk (t ) + (t ). X (t ) Wk (t ) si k = j
W (t + 1) =
k
W (t )
si k j
k
(t) est une suite non croissante de scalaires, qui doit respecter deux conditions
pour assurer la convergence de l'algorithme :
(VIII.6)
2
(t ) = et (t ) < .
t=0
t=0
La premire condition est destine favoriser la plasticit du rseau afin qu'il soit
capable d'apprendre de nouvelles observations. La deuxime condition favorise la
stabilit de l'apprentissage, c'est dire que l'arrive d'une nouvelle observation ne
perturbe pas de faon trop importante l'apprentissage du rseau. Il s'agit l du
dilemme "stabilit - plasticit" bien connu en apprentissage comptitif. La suite
harmonique (t)=(0)/t vrifie ces deux conditions. Souvent, on impose un nombre
maximum ditrations et on choisit : (t)=(0)(1-t/T).
On peut remarquer que, dans le cas de la classification, cest ltiquetage correct
des observations qui nous importe et non pas la convergence prcise des vecteurs
poids. Par contre dans le cas de la quantification vectorielle, il faut dterminer trs
prcisment les vecteurs poids de chaque neurone qui jouent le rle de mots-codes.
Lalgorithme d'apprentissage comptitif standard peut tre dcrit comme suit :
1. Fixer le nombre K des neurones distances. Fixer le nombre T maximal
d'itrations,
2. Initialiser Wk(0), k= 1, ... , K, des valeurs faibles alatoires,
Initialiser (0) entre 0 et 1.
HAMMOUCH Ahmed
56
Wk (t ) + (t ). X (t ) Wk (t ) si k = j
W (t + 1) =
k
W (t )
si k j
k
HAMMOUCH Ahmed
(VIII.7)
57
( X (t ),W (t )) = (t ). X (t ) W (t )
k
k
max
(t ) = k
k
(t 1) sin on
k
max est la frquence maximale introduite pour viter une augmentation incontrle
de k(t).
Le neurone j est dclar gagnant sil vrifie :
(VIII.9)
Wk (t ) + (t ). X (t ) Wk (t ) si k = j
W (t + 1) =
k
W (t )
si k j
k
HAMMOUCH Ahmed
58
k
max
(t ) = k
k
(t 1) sin on
k
r = Arg min X (t ) W (t )
k
k j
(VIII.11)
si k j et k r
W (t )
k
Le signe "-" dans la 2me ligne de lquation (VIII.11) a pour effet dloigner le
vecteur poids Wr de lobservation, par opposition au signe "+" dans la premire
ligne de lquation (VIII.11) qui a pour effet de rapprocher Wj de lobservation.
Algorithme dapprentissage comptitif pnalisant le rival
1. Fixer le nombre K des neurones distances. Fixer le nombre T maximal
ditrations,
2. Initialiser Wk(0), k= 1, ..., K, des valeurs faibles alatoires. Initialiser (0) entre
0 et 1,
HAMMOUCH Ahmed
59
r = Arg min X (t ) W (t )
k
k j
si k j et k r
W (t )
k
HAMMOUCH Ahmed
60
HAMMOUCH Ahmed
61
Interaction
+
-
+
-
Distance latrale
Figure VIII.2 : Influence dun neurone sur ses voisins en fonction de lloignement
+ : excitatrice (w>0), - : inhibitrice (w<0)
Cette courbe sinterprte de la faon suivante : chaque neurone met vers ses
voisins les plus proches des connexions excitatrices, vers les neurones plus loigns
des connexions inhibitrices et vers les neurones les plus loigns une action
ngligeable. Laction vers les neurones loigns se fait en passant par des neurones
intermdiaires.
HAMMOUCH Ahmed
62
HAMMOUCH Ahmed
63
activation initiale sera plus forte la prochaine fois que ce mme vecteur activera le
rseau. Cette adaptation va aussi concerner les neurones voisins du vainqueur, mais
dans une moindre mesure.
a)
b)
c)
Figure VIII.4 : Options de voisinage dans une carte de Kohonen (le neurone
contenant une croix est le vainqueur) a) segment (carte 1D) b) voisinage
rectangulaire (carte 2D) c) voisinage hexagonal (carte 2D)
Le neurone gagnant influence la plasticit (le facteur d'apprentissage) des synapses
environnantes en fonction de leur distance. La fonction associe cette modulation
de plasticit revt une forme gaussienne qui va dterminer la taille du voisinage
pendant I'apprentissage, c'est--dire le nombre de neurones qui seront affects par
l'tape d'adaptation.
Lalgorithme de Kohonen
La loi de modification des poids des connexions (poids synaptiques) est drive de
celle de Hebb. L'algorithme d'apprentissage est le suivant :
1/ Choix du nombre de neurones et la topologie du rseau.
Initialisation des poids des valeurs alatoires.
Initialisation du voisinage et du pas dapprentissage.
2/ Tirage alatoire dune entre Vk dans la base dapprentissage,
3/ Recherche du neurone r gagnant, celui qui a Wr le plus proche Vk :
HAMMOUCH Ahmed
64
4/ Modification des poids pour le neurone choisi (r) et ses plus proches voisins :
W (t + 1) = W (t ) + (t )h (t ).[V (t ) W (t )]
r
r
r
rr '
f
= .
k
i
i
k
max
rr rr ' 2
f
=
h
= exp
avec
rr ' , k
k
i
2
2
i
k
k
max
HAMMOUCH Ahmed
65
La fonction hrr est une fonction de la distance r r ' . Elle prsente un maximum
r r
r r
unitaire en r = r ' et dcrot vers 0 mesure que la diffrence r r ' crot. La forme
prcise de cette fonction ninflue pas de faon critique sur le comportement du
rseau en cours dapprentissage et peut donc tre adapte librement. La forme
utilise gnralement dans les exprimentations et celle dune gaussienne donne
par la relation. k dtermine la largeur du voisinage linstant k. i et f
reprsentent respectivement les largeurs du voisinage initiale et finale. Cette
fonction dcroissante permet dans un premier temps dorienter globalement les
neurones (mise en vidence des relations de voisinage) puis permet daffiner
progressivement la cartographie de lespace dentre.
Les figures VIII.5 et VIII.6 suivantes montre lvolution de ces coefficients en
fonction du temps k pour des valeurs usuelles :
HAMMOUCH Ahmed
66
Figure VIII.6 : Fonction hrr pour un rseau de 10 x 10 neurones pour deux valeurs
de ( gauche =1,5 et droite =0,5)
Exprimentalement, on constate quil y a deux phases dans la formation de la carte:
i)
ii)
HAMMOUCH Ahmed
67
HAMMOUCH Ahmed
68
Bien que les rsultats thoriques connus ce jour sappliquent des cartes trs
simples (dimension 1), ce modle est trs largement utilis en pratique, mme dans
des dimension suprieures, o sa capacit dorganiser les donnes forte
dimensionnalit sous une forme visualisable est trs apprcie.
VIII.2.7. Illustration
Partant d'une initialisation alatoire des poids et donc d'une carte totalement
dsordonne, le but de l'algorithme est d'atteindre un tat d'quilibre auquel
correspond une carte organise conservant la topologie de I'espace d'entre V.
Considrons un sous-espace V de forme carre limit par les points de coordonnes
(0,0), (10,0), (0,10) et (10,10) (figure VIII.7.a). Les vecteurs d'entre sont choisis
alatoirement avec une densit de probabilit uniforme. Le jeu d'apprentissage est
compos de 10000 vecteurs d'entre. Choisissons un rseau plan carr de 10x10
neurones.
Les vecteurs de poids W sont initialiss alatoirement des valeurs comprises entre
5 et 5,1. La reprsentation de la topologie initiale est illustre par la figure VIII.7.b.
Les paramtres d'apprentissage sont ceux prsents prcdemment.
La figure VIII.7 illustre la formation de la carte topologique associe I'espace V
aprs diffrentes tapes de I'apprentissage; les points reprsentent les neurones du
rseau projets selon la valeur de leur poids et les lignes entre les neurones relient
les neurones voisins sur la grille G. Les figures de gauche illustrent le
dveloppement du rseau voisinage rectangulaire (figure VIII.7.c i) et celles de
droite dun rseau voisinage hexagonal (figure VIII.7.j p).
HAMMOUCH Ahmed
a)
Voisinage rectangulaire
c)
69
b)
Voisinage hexagonal
j)
HAMMOUCH Ahmed
70
d)
k)
e)
i)
f)
m)
HAMMOUCH Ahmed
71
g)
n)
h)
o)
i)
p)
HAMMOUCH Ahmed
72
HAMMOUCH Ahmed
73
HAMMOUCH Ahmed
74
w1N
w12
w11
n1
V1
w2N
w22
w21
n2
V2
wNN
wN2
wN1
nN
VN
HAMMOUCH Ahmed
75
(IX.1) Vi (t + 1) = 1
V (t + 1) = V (t )
i
i
si U (t + 1) > 0
i
si U (t + 1) < 0
i
si U (t + 1) = 0
i
Cest gnralement le mode le plus utilis. Dans ce cas, le vecteur dtat V est mis
jour lment par lment en tenant compte des nouvelles composantes ds
quelles sont disponibles. Dans cette optique, plusieurs variantes sont possibles,
mais la plus importante est le mode asynchrone squentiel o on calcule les
nouvelles valeurs des tats des neurones dans lordre o ils apparaissent dans le
vecteur dtat. Ainsi, lorsquon arrive llment Vi, on exploite le fait que les
composantes V1, V2,..., Vi-1, ont dj t mises jour, de sorte que la nouvelle
valeur de Vi se calcule comme suit :
V (t + 1) = 1
i
(IX.2) Vi (t + 1) = 1
V (t + 1) = V (t )
i
i
si U (t + 1) > 0
i
si U (t + 1) < 0
i
si U (t + 1) = 0
i
HAMMOUCH Ahmed
76
reprsente ltat du rseau linstant t+1. Cest ce type de mise jour que nous
adopterons par la suite.
Concernant lordre de mise jour des composantes du vecteur dtat, on peut
envisager dautres variantes que la stratgie squentielle, par exemple en procdant
de faon alatoire, mais de telle manire que chaque composante soit mise jour
une fois au moins sur un intervalle de temps donn.
Hopfield a montr que cette dynamique peut conduire le rseau vers un tat stable
sous les conditions suivantes :
- Les interconnexions entre les neurones sont symtriques. cest dire que la
matrice W des poids des connexions est symtriques (Wij=Wji).
- Les lments diagonaux de cette matrice sont nuls (Wii = 0), cest dire quun
neurone ninteragit pas avec lui-mme.
r
HAMMOUCH Ahmed
77
E = E m , m = 1,2,..., M
o chaque tat E est reprsent par un vecteur E m , appel vecteur dtat, constitu
de N composantes binaires:
m
T
Em = E m , E m ,..., E m { 1,1}
N
1 2
M
W = E m .E m
ij
i
j
m =1
HAMMOUCH Ahmed
78
Eim 0
E mj 0
Wij
1
1
-1
-1
1
-1
1
-1
1
-1
-1
1
HAMMOUCH Ahmed
79
Etats poubelles : La dfinition des poids des connexions par la rgle de Hebb
dans les rseaux de Hopfield introduit des tats stables qui ne correspondent pas
des tats mmoriss et qui peuvent tre fortement attracteurs. Ces tats
parasites correspondent en fait des combinaisons linaires de certains tats
mmoriss. Diverses solutions ont t proposes pour rgler ce problme.
Une dentre elle est base un principe dessai et derreur, o on modifie les
poids et de faon largir le bassin dattraction des tats que lon cherche
mmoriser, et diminuer celui des tats poubelle. Schmatiquement, on
initialise le rseau dans un tat voisin dun tat stable, et on le laisse se
stabiliser. Si le rseau se stabilise dans un tat poubelle, ou dans un tat diffrent
de celui souhait, on modifie en consquence les poids des connexions. Ce
processus est rpt jusqu' ce que tous les tats voisins des tats stables choisis
convergent convenablement.
Hopfield propose un modle de dsapprentissage : on initialise le rseau
alatoirement, et lorsquil a converg, ltat dans lequel il sest stabilis est
lgrement dsappris, au sens o lon applique la rgle de Hebb en sens
contraire, mais avec un faible coefficient.
HAMMOUCH Ahmed
80
w1N
w12
w11
V1
n1
I1
w2N
w22
w21
V2
n2
I2
wNN
wN2
wN1
VN
nN
IN
HAMMOUCH Ahmed
81
Avec cette nouvelle structure, la dynamique du rseau ne change pas, mais il faut
simplement tenir compte, lors du calcul de lentre totale dun neurone ni, de
lentre externe qui doit sajouter la somme pondre des entres provenant des
autres neurones du rseau :
i 1
N
U (t + 1) = W V (t + 1) + W V (t ) + I
i
ij j
ij j
i
j =1
j=i
(IX.4)
1 r
2
(IX.5) H (V ) = .V T .W .V I T .V
=
N
1 N N
Wij .Vi .V j Ii .Vi
2i =1 j =1
i =1
1
(IX.6) H = Wij .Vi .V j (t + 1) +
2j =1
W
.
V
.
V
(
t
)
ij i j
j = i +1
N
1 i 1
W .V .V (t + 1) + W .V .V (t )
ij i j
2 j = 1 ij i j
j = i +1
1
W .V 2 I .V
i i
2 ii i
HAMMOUCH Ahmed
82
N
1 i 1
= (W + W ).V .V (t + 1) + (W + W ).V .V (t )
ji
i j
ij
ji
i j
2 j = 1 ij
j = i +1
1
W .V 2 I .V
i i
2 ii i
Supposons que la matrice W des poids des connexions vrifie les conditions
prcdemment cites, cest dire quelle est symtrique avec des lments
diagonaux nuls. Lexpression de la variation H de la fonction dnergie scrit
alors :
i 1
N
(IX.7) H = V . W .V (t + 1) + W .V (t ) + I
i
i
ij j
ij j
j = i +1
j =1
= V .U (t + 1)
i i
HAMMOUCH Ahmed
83
HAMMOUCH Ahmed
84
HAMMOUCH Ahmed
85
P( E )
H (E ) H (E )
1
2
1 = exp
P( E )
T
HAMMOUCH Ahmed
86
Figure IX.4 : Principe du recuit simul pour la minimisation dune fonction dune
variable relle.
Une autre image de cet algorithme est celle dune bille lche au-dessus dun
paysage dnergie. Au dbut, on agite beaucoup le paysage (valeur de T leve)
afin que la bille puisse passer dune valle une autre. Puis, progressivement, on
diminue lagitation, cest dire T, de faon piger la bille dans une des valles les
plus profondes. A la fin, on arrte totalement lagitation (T=0) pour que la bille
tombe au fond de cette valle qui correspond un minimum absolu de lnergie.
Les tempratures peuvent tre galement interprtes comme un moyen pour
aplanir le relief (figure IX.5). Au dbut, les fortes tempratures nivellent le
paysage. Labaissement progressif de la temprature permet ensuite de retrouver
doucement tous les accidents du relief.
HAMMOUCH Ahmed
87
HAMMOUCH Ahmed
88
H = V (t + 1) V (t ) .U (t + 1)
i
i
i
Sur le table IX.3, on reprsente le facteur de Boltzmann pour les quatre transitions
possibles entre Vi(t) Vi(t+1). Pour des raisons de simplification, nous utilisons la
valeur 0, au lieu de -1, pour reprsenter ltat inactif dun neurone.
Vi(t)
1
0
Vi(t+1) 1
1
0
exp(-Ui(t+I)/T)
exp(-Ui(t+I)/T) 1
P (V (t + 1) = 1)
i
= exp(U (t + 1) / T )
i
P(V (t + 1) = 0)
i
En normalisant :
P (V (t + 1) = 1) + P(V (t + 1) = 0) = 1
i
i
1
U (t + 1)
1 + exp( i
)
T
U (t + 1)
exp( i
)
T
P (V (t + 1) = 0) =
i
U (t + 1)
1 + exp( i
)
T
P(V (t + 1) = 1) =
i
Vi(t)
HAMMOUCH Ahmed
89
Ainsi, le nouvel tat dun neurone stochastique est indpendant de son tat
antrieur. Nous pouvons constater que, lorsque T tend vers 0, le neurone
stochastique tend vers le neurone binaire dterministe.
Pour complter la mise en oeuvre de lalgorithme du recuit simul sur un rseau de
Hopfield, il reste choisir une squence de recuit, cest dire une suite
dcroissante de tempratures. Le principe de lalgorithme consiste alors faire
voluer le rseau, pour chaque temprature, vers un tat stable. Au dpart, des
tempratures trs leves, chaque neurone volue de faon quasi alatoire :
(IX.11)
P (V (t + 1) = 1) P(V (t + 1) = 0)
i
i
1
2
Ensuite, lorsque la temprature sabaisse, cest lentre interne Ui, qui dtermine la
sortie dun neurone. Enfin, pour des tempratures proches de 0, le comportement
alatoire est supprim et le rseau se comporte comme un rseau dterministe.
Limplantation de lalgorithme du recuit simul sur un rseau de Hopfield prend
ainsi la forme suivante :
1. Commencer avec une temprature T0 leve,
2. Initialiser les tats des neurones du rseau.
3. Faire voluer le rseau, cette temprature, vers un tat stable.
Le fonctionnement des neurones est rgit par la rgle stochastique
prcdemment dcrite (Cf. Equation IX.10).
4. Diminuer la temprature.
5. Rpter les tapes (3) et (4) jusqu ce que le rseau ait atteint un
minimum de sa
fonction dnergie, cest dire lorsquelle ne varie pratiquement plus.
En conclusion, nous venons de montrer quil est possible de mettre en oeuvre le
principe du recuit simul sur un rseau de Hopfield. Il suffit pour cela dutiliser des
neurones fonctionnant avec une rgle stochastique et de choisir une suite
dcroissante de tempratures pour chercher de manire itrative le minimum de la
fonction dnergie du rseau. Ce nouveau fonctionnement permet au rseau de
converger, avec une bonne probabilit, vers un minimum global, mais au prix dune
grande quantit de calculs.
HAMMOUCH Ahmed
90
IX.7. Illustration
Supposons que nous souhaitons mmoriser dans un rseau de Hopfield deux
neurones deux tats stables dfinies par : (-1, +1) et (+1, -1) (figure IX.6).
Aprs la dtermination des valeurs des poids et des bias selon la rgle de
Hopfield, le rseau est test avec un ensemble de points situer dans le plan carre.
La figure IX.7, montre pour chaque essai, le point reprsentant le vecteur dentre
et le trajet pour rejoindre lun des tats stables.
Figure IX.6 : Lespace des tats de Hopfield avec les deux tats stables
Figure IX.7 : Visualisation sur lespace des tats le point reprsentant le vecteur
dentre et le trajet pour rejoindre lun des tats stables
HAMMOUCH Ahmed
91
Wx|x t|x M
\wv| t Tz|{x
Z|x
HAMMOUCH Ahmed
92
I. Introduction
Il est commun, de nos jours, que ce soit dans le cadre des sciences de lingnieur
ou dans celui des sciences sociales, daffronter le besoin doptimisation. Ainsi, on
peut avoir besoin de rduire le cot de fabrication dun produit, de minimiser
lnergie dune fonction donne, etc. Auparavant, plusieurs de ces types de
problmes taient considrs comme intraitables, vu leur complexit mais aussi en
labsence de techniques adquates. Toutefois, avec lavnement des ordinateurs, et
le dveloppement
de linformatique, plusieurs mthodes et techniques
doptimisation ont t dveloppes. On peut citer en particulier deux classes de
mthodes doptimisation : Les mthodes bases sur la descente dun gradient, et les
mthodes stochastiques.
Le but de cette partie est de prsenter une classe dalgorithmes, parmi les mthodes
stochastiques, connue sous le nom Algorithmes Gntiques (AGs). Ces algorithmes
sinspirent des mcanismes dvolution des espces et de la gntique moderne
pour constituer une mthode de recherche et doptimisation avec des proprits
intressantes indniables.
Ils offrent un certains nombre davantages fondamentaux les distinguant des autres
mthodes traditionnelles doptimisation parmi lesquelles on peut citer : le
paralllisme, lutilisation minimale dinformations priori, la manipulation
dentits lmentaires qui ne sont pas forcment numriques (par consquent, un
AG peut travailler sur nimporte quel espace de recherche),
II. Historique
En 1859, Darwin dcrit, dans son livre On the Origin of Species By Means of
Natural Selection, la thorie de lvolution. Cette thorie constate que,
contrairement ce que lon pensait lpoque, les espces voluent. Ensuite, elle
impute cette volution trois facteurs : la slection naturelle, les croisements qui
permettent le brassage de linformation gntique et la mutation. La slection
naturelle rend compte du fait que les individus les plus forts ont le plus de chance
de survivre et de pouvoir procrer. Le brassage de linformation gntique se fait
lors de la reproduction sexue, les enfants hritant des caractristiques gntiques
de leurs parents. Ce systme permet dexplorer les diffrentes combinaisons entre
HAMMOUCH Ahmed
93
HAMMOUCH Ahmed
94
{t0 ;
Cration dune population initiale P(t) de taille N ;
Evaluer P(t) ;
Rpter
{tt+1
Slectionner les individus aptes se reproduire ;
Croiser P(t) ;
Muter P(t) ;
Evaluer P(t)
HAMMOUCH Ahmed
95
HAMMOUCH Ahmed
96
enfants obtenus par mutation sont en gnral proches des parents, mais peuvent tre
situs dans tout lespace de recherche.
III.2.4.1. La slection
La slection permet de choisir quel(s) individu(s) vont se reproduire en fonction
des valeurs de la fonction d'adaptation. Dans les populations naturelles, l'adaptation
est dtermine par la capacit d'une crature survivre aux prdateurs, aux
maladies et aux autres obstacles franchir, pour atteindre l'ge adulte et la priode
de reproduction. Pour les AGs, la fonction optimiser est le critre dcidant de la
survie de chaque individu. Cette fonction correspond une mesure de profit,
d'utilit ou de qualit que l'on souhaite maximiser ou un cot que l'on souhaite
minimiser.
L'oprateur de slection, qui est une version artificielle de la slection naturelle,
dfinie par Darwin, consiste donner aux individus ayant une adaptation plus
grande de plus grandes chances d'engendrer un ou plusieurs descendants. La
slection permet donc damliorer la qualit moyenne de la population en
favorisant la copie des meilleurs individus dans les gnrations suivantes. La
slection focalise, par consquent, la recherche sur les rgions prometteuses de
lespace de recherche.
La technique de slection par roue de loterie (Roulette Wheel Selection), utilise
dans lalgorithme de base, consiste faire un tirage alatoire avec une roue de
loterie o chaque individu se voit attribuer une place plus ou moins grande selon
son adaptation. La mthode RWS exploite la mtaphore d'une roulette de casino,
qui comporterait autant de cases que d'individus dans la population. On attribue
chaque individu une section de surface, sur la roulette, proportionnelle sa
performance (figure III.1).
x1
x2
x3
x0
x6
x4
x5
HAMMOUCH Ahmed
97
ps =
f (vi )
N
f (v )
i =1
Pour slectionner les individus, on fait tourner la roue autant de fois qu'on a
d'individus dans la population (N). La roue a plus de chances de s'arrter sur un
numro dont la section correspondante est de surface plus importante.
La variance de ce processus est leve. En effet, il est possible la limite qu'un
individu, de mauvaise qualit, soit slectionn pour la reproduction autant de fois
qu'il y a d'individus remplacs. Il est aussi possible qu'un individu, ayant une bonne
valeur d'adaptation, ne soit jamais slectionn. Ce phnomne est responsable de la
drive gntique, cest--dire, le fait quun bit prenne une valeur constante sur toute
la population, qui permet certains individus de 'survivre' au dtriment d'individus
meilleurs. Pour limiter ce risque, la taille de la population doit tre suffisamment
grande.
D'autre part, il est galement possible qu'un individu, ayant une adaptation trs
suprieure la moyenne, puisse dominer la population suivante et on aura donc
perdu toute diversit, cela peut ventuellement augmenter le risque de convergence
prmature. De mme, s'il existe trs peu de diffrence entre les qualits
dadaptation des diffrents individus, la recherche stagnera et se comportera plutt
comme une recherche alatoire.
Dautres techniques de slection ont t tudies (slection par tournois, slection
par rang linaire,).
III.2.4.2. Le croisement
Loprateur de croisement permet de gnrer deux individus enfants en faisant
croiser deux individus parents en vue daugmenter la chance de survie aux
meilleurs individus. Lide gnrale est que les enfants peuvent cumuler les bons
cts de leurs parents, et que le croisement permettra ainsi de progresser
rapidement vers les rgions optimales de lespace de recherche. Le croisement est
ainsi plus orient du ct exploitation que du ct exploration.
Le principe de base consiste changer une ou plusieurs parties du gnotype (code
binaire) de deux parents slectionns suivant une probabilit de croisement pc. La
HAMMOUCH Ahmed
98
HAMMOUCH Ahmed
99
Difficults
Le croisement peut faire apparatre des enfants runissant les bons traits de leurs
parents. Mais il peut aussi engendrer des enfants nhritant pas des bons traits des
parents. On parle alors de croisement destructif : les individus prometteurs
disparaissent alors, et il faudra les redcouvrir.
Le risque de croisement destructif est particulirement important lorsque la
fonction de performance optimiser comprend plusieurs optima. En effet, croiser
les individus proches de deux optima distincts conduit obtenir des individus
hybrides qui sont souvent peu performants et ralentissent lvolution. Cet
inconvnient peut tre vit en sabstenant de croiser des individus trop loigns.
III.2.4.3. La mutation
La mutation est loprateur dvolution le plus important du point de vue de
lexploration de lespace de recherche. En effet, la slection ne permet pas
dexplorer des zones nouvelles, et nous avons vu que les zones accessibles par le
croisement sont limites de faon dterministe par la population courante. Seule la
mutation peut donc permettre daccder tout lespace de recherche. Cette
proprit est cruciale dans lintrt de loptimisation globale : lvolution doit
pouvoir explorer tout lespace de recherche afin davoir une chance de dterminer
les optima indpendamment de la population initiale. Enfin, seule la mutation
permet de lutter contre le phnomne de drive gntique.
Pratiquement, loprateur de mutation consiste remplacer chaque bit de chaque
individu de P par son complmentaire avec une probabilit pm, appele taux de
mutation, prenant des valeurs de lordre de 0,005 0,001. Schaffer et ses
collaborateurs (1987) proposent la formule empirique suivante :
(III.2)
pm
1,75
l
pm ( t ) =
exp( t / 2)
HAMMOUCH Ahmed
100
HAMMOUCH Ahmed
101
(b a )
i
v = a + decimal (code _ binaire) i
i
i
mi
2
les premiers m1 bits coderont la variable x1 dans lintervalle [a1, b1], etc.
HAMMOUCH Ahmed
102
f (v )
Calculer la probabilit de slection pour chaque chromosome pi = i i
f
On fait tourner la roue N fois, et chaque tour on slectionne un individu qui sera
insr dans la nouvelle population de la manire suivante :
Gnrer un nombre alatoire r dans lintervalle [0, 1].
Si r<q1 alors slectionner le premier chromosome (v1)
Sinon slectionner le ime chromosome vi (2 i N) tel que qi-1<rqi.
Il est clair que, dans la gnration suivante, des chromosomes vont tre slectionner
plus dune fois, dautre vont avoir le mme nombre de copies et les autres ne seront
pas slectionns, selon le thorme des schmas : les meilleurs recevront plus de
copies, les moyens auront le mme nombre de copies et les mauvais vont
disparatre.
La second tape consiste appliquer loprateur de crossover avec une probabilit
pc (pc.N chromosomes vont se croiser) de la manire suivante :
Pour chaque chromosome :
Gnrer un nombre alatoire r dans lintervalle [0, 1]
Si r<pc slectionner ce chromosome pour le croisement
HAMMOUCH Ahmed
103
100110110011
110010110010
010011110010
100010110110
HAMMOUCH Ahmed
104
V5
V6
V7
V8
V9
V10
000110100111
100010111110
001111110010
001010110010
001000101100
111110010110
10
(x,y)
Fitness Probabilit Cumulative (qi)
(1.438, 2.283) 3.721
0.1037
0.1037
(1.615, 2.274) 3.889
0.1084
0.2121
(1.176, 2.274) 3.450
0.0961
0.3082
(1.388, 2.312) 3.700
0.1031
0.4113
(0.992, 2.323) 3.315
0.0924
0.5037
(1.388, 2.390) 3.778
0.1053
0.6090
(1.119, 2.274) 3.393
0.0945
0.7035
(1.048, 2.274) 3.322
0.0905
0.7940
(1.020, 2.216) 3.236
0.0925
0.8865
HAMMOUCH Ahmed
105
4.072
0.1135
1.0000
Il est clair que la meilleure chane est V10, la plus mauvaise tant V8. On construit
ensuite la roue de loterie, la fonction fitness totale de la population est 35,774.
Le crossover va tre appliqu maintenant avec un taux de 0,30, c'est--dire 30% des
individus subiront le croisement. En tirant alatoirement dix fois un nombre r dans
lintervalle [0, 1], si r<0,30 on slectionne le chromosome correspondant pour le
croisement :
0.7484
0.1741
0.2055
0.3250
0.2261
0.1887
0.8851
0.6098
0.2097
0.5801
Cela implique que les chromosomes V2, V5, V6 et V9 sont slectionns pour le
croisement (le nombre de chromosomes obtenu est pair, si le nombre est impair on
ajoute ou enlve alatoirement selon le cas un chromosome). Les chromosomes
sont alors rangs par paire,
V2=1111 10010110
V5=0001 11110111
V6=100010110 110
V9=001010110 010
La position de croisement est 4 dans le premier cas et 9 dans le second. Les chanes
rsultantes sont alors :
V2=1111 11110111
V5=0100 10010110
HAMMOUCH Ahmed
106
V6=100010110 010
V9=001010110 110
Loprateur du mutation est appliqu avec une probabilit pm=0.01, de sorte que
1% des bits subiront lopration de mutation. Au total, l*10=120 bits dans la
population, en moyenne 1,2 mutations par gnration. Chaque bit admet la mme
chance dtre mut. Pour chaque bit on gnre un nombre r dans [0, 1], si r<0.01 le
bit est mut. Dans un tirage de 120 nombre, le 75me tirage est infrieur 0,01(le
3me bit de la chane V7).
La nouvelle population aprs crossover et mutation est donc :
V1
V2
V3
V4
V5
V6
V7
V8
V9
V10
100010111110
111111110010
100111110010
111110010110
010010010110
100010110010
000000101100
100110110011
001010110110
001111110010
3.778
4.074
3.734
4.092
3.446
3.663
3.123
3.721
3.322
3.393
HAMMOUCH Ahmed
107
HAMMOUCH Ahmed
108
Xxv|vx
1. On considre les trois rseaux de neurones monocouche avec un seul neurone de
la figure suivante :
1
e1
e1
-3
-1
2
s
e2
e2
a)
b)
1
1
e1
-2
c)
HAMMOUCH Ahmed
109
y =
f ( p ) =
k ( p )
+ 1
f1 ( x ) =
e
e
f
et
+ 1
f3 (x) =
(x) =
e
e
+ 1
+ 1
HAMMOUCH Ahmed
110
C.M. Bishop, Neural Networks for Pattern Recognition, Oxford University Press,
Oxford, 1995.
Eric Davalo et Patrick Nam, Des Rseaux de Neurones, Eyrolles, Paris, 1989.
L. Devroye, L. Gyrfi and G. Lugosi, A Probabilistic Theory of Pattern Recognition,
Springer-Verlag 1996.
D. Hamad, rseaux de neurones pour classification non supervise, Habilitation
diriger des recherches, Universit des Sciences et Technologies de Lille, 1997.
S. Haykin, Neural Networks, a Comprehensive Foundation, Macmillan, New York,
NY., 1994.
J. Hrault et Ch. Jutten, Rseaux neuronaux et traitement du signal, Herms, Paris,
1994.
J. Hertz, A. Krogh & R. G. Palmer, An introduction to the theory of Neural
Computation, Addison-Wesley, 1991.
Don, R, Hush and Bill G. Horne, Progression supervised Neural Networks, IEEE,
signal processing magazine, pp. 8-39, January 1993,
Daniel Kuhn, Une approche neuronale pour lasservissement visuel dun rebot
manipulateur, thse de doctorat, Universit de Haute Alsace, 1992.
M. Milgram, Reconnaissance des formes, mthodes numriques et connexionnistes,
Armand Colin, collection 2ai, 1993.
J.-P. Nadal, Rseaux de neurones : de la physique la psychologie, Armand Colin,
collection 2ai, 1993.
B.D. Ripley, Pattern Recognition and Neural Networks, Cambridge University Press,
Cambridge, 1996.
Helge Ritter, Thomas Martinez et Klaus Schulten, Neural Computation and SefOrganizing Maps, Addison Wesley, 1992.
Dony Robert D. and Haykin Simon, February 1995, Neural Network Approaches to
Image Compression, Proc. IEEE, vol 83, n 2, pp. 288-303.
Yassin Ruichek, Strovision linaire par rseau de neurones de Hopfield, thse de
doctorat, Universit des Sciences et Technologies de Lille, 1997.
V. N. Vapnik, The nature of statistical learning theory, Springer-Verlag, 1995.
G. Weisbuch, Dynamique des systmes complexes : une introduction aux rseaux
d'automates, InterEditions/Editions du CNRS, 1989.
A. A. El Imrani, conception dun algorithme gntique covolutif application
loptimisation des histoires thermiques, Thse de doctorat dEtat, Facult des Sciences
Mohamed V, Rabat, 2000.
A. Hammouch et D. Aboutajdine, Estimation dune carte de disparit laide
dalgorithme gntique, ICISP, 2001.
J. M. Renders, Algorithmes gntiques et rseaux de neurones, Herms, 1995.
D.E.Golberg, Algorithmes gntiques, Addison Wesley, 1994.