Vous êtes sur la page 1sur 110

Facult des Sciences de Rabat

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

IX.4. Limites des rseaux de Hopfield


IX.5. Rseau de Hopfield et optimisation combinatoire
IX.5.1. Structure gnrale du rseau
IX.5.2. Fonction dnergie du rseau
IX.5.3. Formulation duale
IX.5.4. Applications
IX.6. Rseaux de Hopfield recuit simul
IX.6.1. Le recuit simul
IX.6.2. Utilisation dans les rseaux de Hopfield
IX.7. Illustration

Deuxime partie : Introduction aux Algorithmes Gntiques


I. INTRODUCTION
II. HISTORIQUE
III. LES ALGORITHMES GENETIQUES (AGS)
III.1. Principe de base dun algorithme gntique
III.2. Etapes fondamentales dun AG
III.2.1. Codage des solutions
III.2.2. Initialisation
III.2.3. Evaluation
III.2.4. Oprateurs dvolution
III.2.4.1. La slection
III.2.4.2. Le croisement
III.2.4.3. La mutation
III.2.5. Stratgies de remplacement
III.2.6. Critre darrt
III.3. Illustration
III.4. Problmes associs aux AGs
III.4.1. Convergence prmature
III.4.2. Convergence lente
Exercices
Quelques rfrences bibliographiques

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

Arospatial : Pilotage automatique, simulation du vol,


Automobile : Systme de guidage automatique,
Dfense : Guidage de missile, suivi de cible, reconnaissance du visage, radar,
sonar, traitement du signal, compression de donnes, suppression du bruit,
Electronique : Prdiction de la squence dun code, vision machine,
synthtiseur vocal, modle non linaire, compression de donnes (JVC). Ils sont
aussi utiliss en reconnaissance de caractres (EasyReader), de visage
(Mimetics), de la parole, de l'criture (ordinateur sans clavier), de signature
acoustique (Thomson), d'objets (Silac: profils d'aluminium), ...
Finance : Prvision du cot de la vie,
Secteur mdical : Analyse EEC et ECG,
Tlcommunications : Compression de donnes,
Diagnostic : Allumage voiture (Renault) ; photocopieur (Canon); circuits VLSI,
(IBM),
Prvision : De la consommation d'eau (Lyonnaise des eaux), de la
consommation d'lectricit (EDF), de trafic routier, de cours boursiers, ...
Identification de procd industriel : Air liquide, Elf, ciments Lafarge, ...

Les rseaux de neurones ont aujourdhui un impact considrable et, il y a fort
parier, que leur importance ira en grandissant.

HAMMOUCH Ahmed

III. LE NEURONE BIOLOGIQUE

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

III.2.1. Le corps cellulaire


Il contient le noyau du neurone et effectue les transformations biochimiques
ncessaires la synthse des enzymes et des autres molcules qui assurent la vie du
neurone. Sa forme dpend souvent de sa position dans le cerveau. Elle est
pyramidale ou sphrique dans la plupart des cas. Sa taille est de quelques microns
de diamtre.
III.2.2. Les dendrites
Chaque neurone possde une "chevelure" de dendrites. Celles-ci sont des fines
extensions tubulaires, de quelques diximes de microns de diamtre et d'une
longueur de quelques dizaines de microns. Elles se ramifient, ce qui les amne
former une espce d'arborescence autour du corps cellulaire. Elles sont les
rcepteurs principaux du neurone pour capter les signaux qui lui parviennent.
III.2.3. L'axone
L'axone, qui est proprement parler la fibre nerveuse, sert de moyen de transport
pour les signaux mis par le neurone. Il se distingue des dendrites par sa forme et
par les proprits de sa membrane externe. En effet, il est gnralement plus long
(sa longueur varie d'un millimtre plus d'un mtre) que les dendrites, et se ramifie
sur extrmit, l o il communique avec d'autres neurones, alors que les
ramifications des dendrites se produisent plutt prs du corps cellulaire.

Figure III.2 : Schma d'une synapse

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

Figure IV.1. : Modle du neurone de Mac Culloch et Pitts (1943)

HAMMOUCH Ahmed

13

IV.2. Modle gnral


D'une faon gnrale, on peut dfinir un neurone formel ou simplement neurone
par les lments suivant :
- La nature des entres ( x1, x2, ,xn) et de la sortie (s) ; elles peuvent tre
binaires (1 ou 0 et 1) ou relles ;
- La fonction d'entre totale (h) qui dfinit le prtraitement effectu sur les
entres ; elle peut tre boolenne, linaire, affine,
- La fonction d'activation (ou d'tat) (f) du neurone qui dfinit son tat interne en
fonction de son entre totale ; elle peut tre binaire, discrte ou continue. Selon
le type de cet tat, on aura donc diffrentes formes pour la fonction d'activation ;
- La fonction de sortie (g) qui calcule la sortie du neurone en fonction de son tat
d'activation.

x1
w1
.
.
.

h
wk

xk

Figure IV.2 : Modle gnrale du neurone


xi : entres du neurone, A : activation du neurone, s : sortie du neurone,
wi : poids (synaptiques), h : fonction d'entre, f : fonction d'activation (ou de
transfert), g : fonction de sortie
A= f{h[(x1, , xk), (w1, , wk) ]} et s = g(A) (= A le plus souvent)
La combinaison (h, f, g) dfinit le type de neurone

HAMMOUCH Ahmed

14

IV.3. Le neurone sommateur


Le neurone formel sommateur est constitu de deux oprateurs (figure IV.3) :

x1
w1
.
.
.

wn
xn
Figure IV.3 : Neurone formel sommateur discret
-

Un oprateur de sommation qui labore un "potentiel" p gal la somme


pondre du neurone,
Un oprateur qui calcule ltat de sortie "s" du neurone en fonction de son
potentiel p.

Les calculs du potentiel p et de la sortie s sexpriment par les relations suivantes :


n
p= W x
i i
i =1

= 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

Exemples de fonctions de neurone


La fonction dactivation du neurone est loprateur qui dfinit son comportement.
Elle prend diffrentes formes selon lutilisation du rseau, et la nature continue ou
discrte, voire binaire de ltat s du neurone. Elle prsente en gnral un seuil.
Ainsi, elle peut tre :
- Une fonction linaire (identit) (figure IV.4) : f(p)=p. Dans ce cas le neurone est
linaire.
s

Figure IV.4 : Fonction " identit "


- Une fonction non linaire (saturation), se rapprochant de la caractristique
entre/sortie des neurones rels, dcrite par un seuil , une partie linaire pente
constante A, et une valeur de saturation (figure IV.5) : f(p) = Min[Smax, Max(0,
A.p)].
s

Figure IV.5 : Fonction "saturation"

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)

Figure IV.6 : a) Fonction "Signe", b) Fonction "chelon"


- Une fonction "sigmode" dont la forme gnrale est celle dune tangente
hyperbolique avec des valeurs comprises entre 1 et +1 (figure IV.7.a) ou avec des
valeurs comprises entre 0 et +1 (figure IV.7.b) :
s

a)

b)

Figure IV.7 : Fonction "sigmode"

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]

T est un paramtre appel temprature. Quand il tend vers 0, la pente augmente et


les fonctions "sigmode" tendront alors vers la fonction "signe" et "chelon"
dfinies prcdemment. Les fonctions dallure "sigmode" sont trs utilises.
Les caractristiques "identit", "signe" et "sigmode prsentent des valeurs
ngatives. Or les frquences moyennes ou instantanes de potentiel daction dun
neurone biologique sont bien sr des nombres positifs. Il sagit l dune libert que
lon prend par rapport la biologie dans le cas des modles connexionnistes.
- Une fonction stochastique : dans ce modle la sortie du neurone est binaire et elle
est dtermine en fonction dune certaine probabilit :
P (V = 1) =

1
p
(
)
T
1+ e

P (V = 1) = 1 P(V = 1)

o est une constante positive et T est un paramtre qui reprsente une


temprature. Nous pouvons constater que lorsque T tend vers 0, le modle
stochastique tend vers le modle binaire. Ce neurone probabiliste est
principalement utilis dans les rseaux recuit simul.
- Une fonction Gaussienne
s

Figure IV.8 : Fonction gaussienne


- Toute autre fonction, gnralement choisie croissante et impaire.

HAMMOUCH Ahmed

18

IV.4. Le neurone distance


Le neurone distance est constitu de dun oprateur qui labore un "potentiel" p
gal la distance entre le vecteur dentre et le vecteur des coefficients
synaptiques (poids) du neurone, suivie dun autre oprateur qui calcule ltat de
sortie "s" du neurone en fonction de son potentiel p (figure IV.9). La fonction f
dactivation du neurone est gnralement une fonction Identit ou gaussienne.
x1
w1
.
.
.

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

fournit le rsultat des traitements effectus dautre part. Les couches


intermdiaires sont appeles couches caches, leur nombre est variable.
Ces rseaux sont utiliss en classification, en reconnaissance des formes
(caractres, parole, ...), en prdiction,
Parmi ces modles nous tudierons le rseau monocouche et le rseau de
multicouches.
- Les rseaux entirement connects (ou boucls). Dans ces rseaux, chaque
neurone est reli tous les autres et possde mme un retour sur lui. Ces rseaux
sont utiliss comme mmoire associative ou pour des tches de traitement du
signal ou de commande.
Parmi ces modles nous tudierons le rseau Kohonen et le rseau de Hopfield.
IV.6. La dynamique des connexions
Dans un rseau de neurones formels, les diffrents neurones sont relis entre eux
par des connexions. Celles-ci reprsentent les synapses (ou poids). Comme nous
lavons vu, les synapses peuvent jouer diffrents rles. Elles peuvent tre
inhibitrices ou excitatrices. Pour modliser ce rle, on a choisi daffecter chaque
connexion entre deux neurones formels un poids qui pondre le signal transmis.
Modliser un rseau de neurone, cest donc, dcrire le modle du neurone et celui
des connexions entre ces neurones. Si le rseau est dou dapprentissage,
lquation de relaxation qui calcule ltat de chacun des neurones en fonction de
celui des autres et en fonction des entres, sajoute une quation dadaptation ou
dapprentissage qui permet de contrler lvolution des poids synaptiques.
La phase d'apprentissage, est une phase du dveloppement d'un rseau de neurones
durant laquelle les poids sont modifis jusqu' l'obtention du comportement dsir.
L'apprentissage neuronal fait appel des exemples de comportement.
L'apprentissage est vraisemblablement la proprit la plus intressante des rseaux
neuronaux. Elle ne concerne cependant pas tous les modles, mais les plus utiliss.
Au niveau des algorithmes d'apprentissage, il a t dfini deux grandes classes
selon que l'apprentissage est dit supervis ou non supervis. Cette distinction
repose sur la forme des exemples d'apprentissage. Dans le cas de l'apprentissage
supervis, les exemples sont des couples (Entre, Sortie associe) alors que l'on ne
dispose que des valeurs (Entre) pour l'apprentissage non supervis.

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

Figure V.1: Structure dun rseau monocouche


Lvolution du rseau se fait en parallle. Tous les neurones calculent, en mme
temps, la somme des entres pondres par des coefficients (poids) et dterminent
leur sortie. Ces coefficients sont dtermins par un apprentissage.
V.2. Principe dapprentissage
Celui-ci consiste calculer ces coefficients (poids) wik laide dun algorithme
appropri, partir dun ensemble de forme apprendre.
V.2.1. La loi de Hebb
Historiquement, la premire rgle dapprentissage a t formule de faon
qualitative par Hebb en 1949. Celle-ci s'applique aux connexions entre neurones,
comme le reprsente la figure V.2.

HAMMOUCH Ahmed

21

wij

Figure V.2 : i le neurone amont, j le neurone aval et wij le poids de la connexion.


Elle s'exprime de la faon suivante : "Si 2 cellules sont actives en mme temps
alors la force de la connexion augmente". Il sagit, en fait, de renforcer la
connexion reliant deux neurones chaque fois quils sont actifs simultanment,
ainsi que le montre la table V.1. xi et xj sont respectivement les valeurs d'activation
des neurones i et j, wij (drive partielle du poids) correspond la modification de
poids ralise.
xi
0
0
1
1

xj wij
0
0
1
0
0
0
1
+

Table V.1. La loi de Hebb.


La loi de Hebb peut tre modlise par les quations suivantes :
wij(t+1) = wij(t) +wij(t)
(entre*sortie)
wij(t) = .xi . xj
o est une constante positive qui spcifie le pas de modification des poids. La
coactivit est modlise comme le produit des deux valeurs d'activation.
L'algorithme d'apprentissage modifie, de faon itrative, les poids pour adapter la
rponse obtenue la rponse dsire. Il s'agit en fait de modifier les poids lorsqu'il
y a erreur seulement.
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 x1 pour cette entre : a = (wi . ei) -
x1 = signe (a) (si a > 0 alors x = +1 sinon a 0 alors x = -1)
4/ Si la sortie x1 est diffrente de la sortie dsire dl pour cet exemple d'entre El
alors modification des poids : wij(t+1) = wij(t) + .(x i . xj)

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

4/ La sortie est fausse, il faut donc modifier les poids en appliquant :


w1 = 1 + 1.1 = 2
w2 = 1 + 1.-1 = 0
2/ On passe l'exemple suivant (3) :
3/ a = -2 0 => x = -1, la sortie est bonne, il ny a pas de modification des poids.
2/ On passe lexemple suivant (4) :
3/ a = -2 0 => x = -1, la sortie est bonne, il ny a pas de modification des poids.
2/ On revient l'exemple (1) :
3/ a = 2>0 => x = 1, la sortie est bonne, il ny a pas de modification des poids.
2/ On passe lexemple suivant (2) :
3/ a = 2>0 => x = 1, la sortie est bonne, il ny a pas de modification des poids.
Ainsi toute la base d'apprentissage a t passe en revue sans modification des
poids. L'algorithme d'apprentissage est alors termin
Question : Soit le rseau compos de 4 neurones d'entre et d'un neurone de sortie
(w1 = w2 = w3 = w4 = = 0) et la base d'apprentissage :
e1 e2 e3 e4 x Exemple
1 -1 1 -1 1
(1)
1 1 1 1 1
(2)
1 1 1 -1 -1
(3)
1 -1 -1 1 -1
(4)
Recherchez les valeurs de poids qui rsolvent le problme.
Rponse : Cet algorithme d'apprentissage ne permet pas de trouver une solution
ce problme.
Pourtant, il existe des solutions comme par exemple (w1 = -0.2, w2 = -0.2, w3 = 0.6,
w4 = 0.2). Un algorithme de calcul efficace pour ce problme est l'apprentissage sur
le modle du Perceptron abord au paragraphe suivant.

HAMMOUCH Ahmed

24

V.2.2. La rgle d'apprentissage du Perceptron et dAdaline


La rgle de Hebb ne s'applique pas dans certain cas, bien qu'une solution existe
(voir exercice du paragraphe prcdent). Un autre modle dalgorithme
dapprentissage a donc t propos. Il est bas sur lide de rduire
progressivement la diffrence entre la sortie obtenue et la sortie dsire, cest la
rgle utilise dans le Perceptron (rseau un seul neurone) de Rosenblatt ou la
rgle utilise dans Adaline (ADAptive LInear NEuron) de Widrow et Hoff appele
galement rgle delta. Toutes les deux reposent sur la minimisation dune erreur
quadratique instantane. Les architectures des rseaux proposs dans les deux cas
sont trs voisines (figure V.4). Dans le cas dAdaline, comme son nom lindique, le
neurone est linaire: N(p)=p, alors que la caractristique du neurone dans le
Perceptron est une fonction chelon : N(p)=U(p-), o est un seuil.
x1

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

dAdaline, il sagit du potentiel dsir pd, dans le cas du Perceptron, il sagit de la


classe dsire yd (vecteur canonique). Pour un seul neurone, chaque pas
dapprentissage, lerreur quadratique E minimiser est donc :
E = (p - p d ),
E = (y - y d ),

erreur analogique, dans le cas dAdaline,


erreur binaire dans le cas du Perceptron.

Le principe de minimisation de lerreur repose sur une mthode de gradient. On


calcule le gradient de lerreur par rapport aux poids wi et lon effectue une
correction en sens inverse sur les poids.
Dans le cas du Perceptron les poids sont modifis selon la rgle suivante :

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/ Conditions initiales : w1 = -0.2, w2 = +0.1, = 0,2 ( = +0.1)


2/ a(1) = -0.2 + 0.1 -0.2 = -0.3
3/ x(1) = -1 (la sortie dsire d(1) = +1, d'o modification des poids)
4/ w1 = -0.2 + 0.1 . (1 + 1) . (+1) = 0
w2 = +0.1 + 0.1 . (1 + 1) . (+1) = +0.3
2/ a(2) = +0.3 - 0.2 = +0.1
3/ x(2) = +1
(Faux, d'o modification des poids)
4/ w1 = 0 + 0.1 . (-1 - 1) . (-1) = +0.2
w2 = +0.3 + 0.1 . (-1 - 1) . (+1) = +0.1
2-3/ a(3) = -0.2 -0.1 -0.2 = -0.5
Ok
2-3/ a(4) = +0.2 - 0.1 - 0.2 = -0.1
Ok
2-3/ a(1) = +0.2 + 0.1 - 0.2 = +0.1
Ok
2-3/ a(2) = -0.2 + 0.1 - 0.2 = -0.1
Ok
5/ Tous les exemples de la base ont t correctement traits, l'apprentissage est
termin.
Le Perceptron ralise une partition de son espace d'entre en 2 classes (1 et 2) selon
la valeur de sa sortie (+1 ou -1). La sparation de ces deux zones est effectue par
un hyperplan (figure V.5). L'quation de la droite sparatrice est : w1.e1 +w2.e2 - =
0. Soit e2=-2.e1+2.
e2

(-1,+1)
Classe 1

(+1,+1)
Classe 2
e1

(-1,-1)

(+1,-1)

Figure V.5. Partition de l'espace d'entre en deux classes par un Perceptron se


comportant comme un ET boolen. Les 4 exemples de la base d'apprentissage sont
les 4 sommets du carr. Les paramtres du Perceptron sont :
w1 = 0.2, w2 = 0.1 et = 0.2.

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

Un calcul simple permet de justifier ces expressions. En effet, partir de


lquation de lerreur E = (p - p d ), on a :

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

V.3. Limites des rseaux monocouche : la sparation linaire


Dans ce paragraphe nous allons tudier les limites dun rseau de neurones
monocouche lies la sparation linaire des objets classer. En effet, avec un
rseau de neurones monocouche, il nest possible de distinguer que des objets
linairement sparables. Pour montrer cela, considrons, pour simplifier, un rseau
avec un seul neurone seuil y=h(p-) (figure V.6). Celui-ci ralise une partition
des vecteurs dentre qui lui sont soumis en entre en deux classes. La frontire
entre ces deux classes est dfinie par la condition :

n
wjej = 0
j =1

o reprsente le seuil du neurone. En effet, pour w j e j > , le neurone rpond


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 + w2 e2 = 0 qui peut encore scrire : e 2 =


x1

w1

e1 +
, si w20.
w2
w2

w1

+1

e2

x2

w2

w1 e1 + w2 e2 = 0
Classe 1

Classe 2
e1

Figure V.6 : Sparation linaire en deux classes

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

Un exemple de paramtres du Perceptron ralisant cette opration est : w1 = 2, w2 =


2, = 1. Soit donc une droite dquation : e2=-e1+0,5 (figure V.7).
e2
0,5

2e1 + 2e 2 1 = 0

Classe 1

Classe 2
0,5

e1

Figure V.7 : Partition de l'espace d'entre en deux classes par un Perceptron se


comportant comme un OU logique. Les paramtres du Perceptron sont :
w1 = 2, w2 = 2 et = 1.
On voit bien que la sparation en deux classes est possible par un hyperplan de
dimension 2-1=1, soit une droite. Un rseau une couche effectuant lopration
OU logique serait donc le suivant (figure V.8) :

HAMMOUCH Ahmed

30

e1
2
s

+1

=1

e 2 = e1 + 0.5

2
e2

Figure V.8 : Rseau effectuant lopration OU logique


Voyons maintenant la fonction OU EXCLUSIF (XOR). Sa table de vrit est la
suivante :
e1
0
0
1
1

e2 s=e1 OU EXCLUSIF e2
0
0
1
1
0
1
1
0

On voit aisment quun neurone seuil ne peut raliser la fonction boolenne OU


EXCLUSIF, et, ce quels que soient les poids de ses connexions, car il devrait
rpondre 0 pour les deux couples (0,0) et (1,1) et 1 pour les deux couples (1,0) et
(0,1). C'est--dire quil devrait sparer linairement les deux classes : {(0,0), (1,1)}
et {(0,1), (1,0)}.
Si lon reprsente la table de vrit sur plan de dimension 2, on constate bien que
cest impossible (figure V.9) :
e2
1

y=0

y=0

y=1
y=1
1

e1

Figure V.9 : Le problme de XOR avec un rseau monocouche

HAMMOUCH Ahmed

31

Cette fonction na pas t choisie au hasard. Cest historiquement la premire


fonction simple ne pas pouvoir tre rsolue par un rseau de neurone de neurone
une couche.
Par contre si on ajoute une couche (cache) au rseau, on obtient un rseau
multicouche qui peut alors reprsenter la fonction XOR (figure V.10). Ceci est
gnral, un rseau multicouche peut rsoudre nimporte quel problme.

e1

-2,69

1=2,21

-4,91

-2,8

-3,39

e2

-4,56

2=4,76

3=-2,28

4,95

Figure V.10 : Un exemple de rseau multicouche reprsentant la fonction XOR.


V.4. Variation du seuil
Pour un apprentissage efficace, il faut que le seuil puisse tre ajust. En effet
reprenons lexemple du paragraphe prcdent. Comme nous lavons vu, la droite
qui spare le plan en deux parties a pour quation : w2 e2 = w1 e1 + , quation
que lon peut encore crire : e 2 =

w1

e1 +
, si w20.
w2
w2

Lordonne lorigine de la droite vaut e2=/w2. Laxe e1 est coup au point


e10=/w1. Supposons le seuil constant, diffrent de 0. Si lon veut que e2 varie
e1=e10=constant, on fait varier w2, mais pour obtenir e2 proche de 0, il faut que w2
devienne trs grand. De mme, si lon veut faire varier e1 e2=constant, on fait
varier w1, mais pour obtenir e1 proche de 0, il faut que w1 devienne trs grand.
Cette croissance dmesure des poids peut tre vite si le seuil est variable.
En pratique, chaque neurone avec un seuil est remplac par un neurone ayant seuil
nul mais possdant un poids (w0) supplmentaire de valeur - reli une entre
constante (polarisation) gale 1 (figure V.11). Ce nouveau poids, correspondant

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 tend vers linfini


constant
1
w0= -
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

V.5. Illustration de la rgle du Perceptron


Vecteurs dentres dapprentissage :
E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
e1 0,1 0,7 0,8 0,8 1,0 0,3 0,0 -0,3 -0,5 -1,5
e2 1,2 1,8 1,6 0,6 0,8 0,5 0,2 +0,8 -1,5 -1,3
Sorties dsires :
X1 X2 X3 X4 X5 X6 X7 X8 X9 X10
x1 1
1
1 0 0 1 1 1 0
0
x2 0
0
0 0 0 1 1 1 1
1
Rseau utilise : un rseau monocouche avec deux neurones deux entres.

a)

b)

c)

Figure V.12 : Illustration de la rgle dapprentissage du Perceptron, a) base


dapprentissage b) Rsultats de la sparation c) Evolution de lerreur quadratique
total

HAMMOUCH Ahmed

V.6. Illustration de la rgle dapprentissage dAdaline


Vecteurs dentres dapprentissage :
Exemple 1 Exemple 2 Exemple 3 Exemple 4
e1
+1,0
+1,5
+1,2
-0,3
e2
-1,0
+2,0
+3,0
-0,5
e3
+2,0
+1,0
-1,6
+0,9
Sorties dsires :
x1
x2
x3
x4

Exemple 1 Exemple 2 Exemple 3 Exemple 4


+0,5
+3,0
-2,2
1,4
+1,1
-1,2
+1,7
-0,4
+3,0
+0,2
-1,8
-0,4
-1,0
+0,1
-1,0
+0,6

Rseau utilis : Quarte neurones avec 3 entres

Figure V.13 : Illustration de la rgle dapprentissage dAdaline ;


Evolution de lerreur quadratique total

34

HAMMOUCH Ahmed

35

V.7. Vers des rseaux multicouches


La figure V.14, illustre les possibilits de sparation des rseaux en fonction de leur
nombre de couches.
Considrons un rseau un seul neurone sur la couche de sortie, et recevant des
vecteurs de dimensions 2. Dans le cas le plus simple, le rseau est constitu dun
seul neurone et lespace dentre peut tre partag en 2 par une droite (figure.
V.14.a).
Avec 2 neurones dans la premire couche, on dfinit 2 droites sparatrices; le
neurone de la couche de sortie prend une dcision de synthse : il spare le plan en
2 rgions dont la frontire est constitue par deux segments de droite correspondant
aux droites sparatrices de chaque neurone (figure V.14.b). Quatre frontires
diffrentes peuvent ainsi tre dfinies.
Avec 3 neurones dans La premire couche, Le neurone de la deuxime couche
spare les deux rgions par 3 segments de droite (figure V.14.c), chacun des
segments tant associs la sparatrice gnre par un de ces 3 neurones, etc.
Le nombre de neurones permet daugmenter la rsolution de la frontire entre les 2
classes. Cependant, les rgions dfinies par cette frontire restent convexes.
Avec 3 couches de neurones, il devient possible de sparer des classes mmes non
convexes. En effet, considrons le rseau de la figure V.14.e. On peut le
dcomposer en deux sous - rseaux de 2 couches, analogues ceux de la figure
V.14.c, slectionnant chacun une rgion du plan partir des 3 droites sparatrices
associes aux 3 neurones de la premire couche (figure V.14.d). Le neurone de la
couche de sortie du rseau complet effectue une dcision de synthse partir des
dcisions des sous - rseaux. On peut ainsi obtenir une sparation en rgions non
convexes des 2 classes dans lespace dentre.
Il est clair que les neurones de chaque couches ont des caractristiques non
linaires : en effet, si une tait constitue de neurones purement linaires, il est clair
quelle pourrait tre fusionne avec la couche suivante moyennant un simple
produit matriciel.
Dans le cas plus gnral de rseaux plusieurs sorties, cest--dire destins
dcider entre un nombre plus grand de classes, les proprits que nous venons de

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)

Figure V.14 : interprtation gomtrique de leffet de plusieurs couches de


traitement dans un rseau de neurone.

HAMMOUCH Ahmed

37

VI. Mmoires associatives linaires


Les mmoires associatives ont t proposes par plusieurs auteurs ds 1977 dont
T.Kohonen. Nous nous appuyons sur ses travaux qui ont t admirablement rsum
par C. Jutten. Le modle prsent dans ce chapitre est compltement linaire : il est
trs simple mais aussi trs limit.
Dans mmoire associative, le terme "mmoire" fait rfrence la fonction de
stockage de l'information et le terme "associative" au mode d'adressage.
L'expression "mmoire adressable par son contenu" est aussi souvent employe.
L'information mmorise ne peut tre obtenue une adresse prcise, le seul moyen
d'accs est de fournir une information. Dans le cas des mmoires auto associatives, il faut fournir tout ou partie de l'information mmorise. Ces
mmoires sont donc principalement utilises pour la reconstruction de donnes :
l'oprateur fourni une information partielle que le systme complte. Des
exprimentations dans ce sens ont t faite avec l'annuaire lectronique o
l'utilisateur tape le maximum d'informations relatives sa demande, que le systme
complte et corrige. Les mmoires htro - associatives se diffrencient des
prcdentes en rendant une information diffrente. Par exemple, si la clef d'entre
est une image de visage, le systme rpond par le nom de la personne
correspondante.
VI.1. Structure du rseau
La structure neuronale d'une mmoire associative est similaire celle d'un
ensemble de Perceptrons tous aliments par les mmes entres ou celle d'une
carte auto organisatrice sans la notion de voisinage. La figure VI.1 montre cette
architecture o chaque entre est connecte par des poids modifiables toutes les
sorties. La dimension de la couche d'entre est de n neurones, celle de sortie de p. Il
y a donc n.p poids dans ce rseau.

s1

s2

sp

Figure VI.1 : Structure d'une mmoire associative

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

o E est la transpose du vecteur El (qui transforme un vecteur ligne en un vecteur


colonne et rciproquement)
Cette expression est en fait un raccourci mathmatique au processus
d'apprentissage itratif mettant en jeu une rgle locale de modification des poids.
T
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)

Figure VI.2. Mmoires auto - associatives (daprs Kohonen)


a) Images originales apprises (de 3072 pixels prsentes au rseau comme des
vecteurs de 3072 composantes).
b) Clefs soumises en entre au rseau.
c) Images restitues par le rseau lorsque 160 images ont t stockes.
d) Images restitues par le rseau lorsque 500 images ont t stockes.
Rappelons que ces rsultats ont t obtenus aprs un pr traitement visant
orthogonaliser les prototypes apprendre ; il est clair que les deux prototypes
montrer en a) ne sont pas orthogonaux.

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

VII. RESEAU MULTICOUCHES


Ils sont souvent appels Perceptrons multicouches. Leur utilisation principale est la
classification.
VII.1. Structure dun rseau multicouches

Couche
dentre

Couche
cache 1

Couche
cache 2

Couche
de sortie

Figure VII.1 : Structure dun rseau de neurones multicouches


Un rseau multicouche est constitu :
- Dune couche dentre qui reoit les informations provenant de lextrieur. Les
neurones de cette couche sont dun type particulier car ils se contentent de
transmettre linformation qui leur est prsente sans traitement,
- Dune ou plusieurs couches intermdiaires, encore appeles couches caches.
Chaque couche reoit des signaux de la couche prcdente et transmettent les
rsultats de ses traitements la couche suivante,
- Dune couche de sortie qui prsente les rsultats dfinitifs de traitements.
Chaque neurone est connect lensemble des neurones de la couche suivante par
des connexions dont les poids sont des nombres rels quelconques. Il ny a pas de
connexions lintrieur dune mme couche.

HAMMOUCH Ahmed

41

Lvolution du rseau se fait en parallle. Les neurones de chaque couche calculent


en mme temps la somme des entres pondres par des poids et dtermine la
sortie. Ces poids de pondration sont dtermins par un apprentissage dit supervis.
VI.2. Apprentissage dans un rseau multicouches
Celui-ci se fait laide dun algorithme connue sous le nom de rtropropagation
du gradient derreur dsign couramment par back-propagation.
Il fonctionne sur le mme principe que les rgles simples du Perceptron ou de
Widrow-Hoff. On dispose dun ensemble dexemples qui sont des couples (entres,
sorties dsires).
A chaque tape, on prsente un exemple en entre du rseau puis on calcule la
sortie relle du rseau. Ce calcul est effectu de la couche dentre la couche de
sortie. Cette phase est appele propagation avant, ou encore relaxation du rseau.
Ensuite, on calcule lerreur (somme quadratique des erreurs sur chaque cellule de
sortie).
Cette erreur est ensuite rtro - propage dans le rseau, donnant lieu une
modification de chaque poids.
Ce processus est rpt en prsentant successivement chaque exemple. Si, pour
tous les exemples, lerreur est infrieure un seuil choisi, on dit alors que le rseau
a converg.

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

Figure VII.2 : Rseau de neurones multicouches. Le numro de la couche (des


poids et des sorties) est indiqu en indice situ entre parenthse en haut.
En posant, yi la sortie du neurone i, la fonction neurone, pi le potentiel du
neurone i, et w ij le coefficient de pondration associ la connexion ij, la sortie du
neurone i vaut :
p

y = ( p ) = w x
i
i
j = 1 ij j

(VII.1)

et lquation de lerreur quadratique sur la sortie scrit :

(VII.2)

E=

1 n
2
( yi ydi )
2i =1

o ydi est la sortie dsire du neurone i.


( 2)

Calculons le gradient de cette erreur par rapport au poids w kh associ la


connexion venant du neurone h de la couche 1 vers le neurone k de la couche 2
(lindice de la couche cible est indiqu en haut) :

HAMMOUCH Ahmed

43

(3)
=
. i

(2)
(3)
(2)
i couche3 p
w
w
kh
i
kh

(VII.3)

Calculons dabord le premier terme de cette quation :


(3)
. i
=
(3)
(3)
(3)
p
y
p
i
i
i

De la relation

(3)
(3) (2)
y
=
w y

i
j couche2 ij j

on tire, en tenant compte de lexpression de E :


E

(VII.4)

(3)
p
i

(3)
(3)
= y y . ' p

i
di
i

Calculons maintenant le second terme de (VII.3). Le potentiel du neurone i de la


( 2)
( 3)
couche 3 est la somme des sorties y j de la couche 2 pondres par les poids w ij
des neurones de la couche 3. On peut donc crire :

p i( 3)

w (ij3) y (j2) .
=
(2)
( 2)

w kh w kh jcouche2

(VII.5)

( 2)

Dans le second membre de cette expression, le seul terme de type y j dpendant


(2)

( 2)

du poids w kh est y k , cest--dire celui obtenu pour j = k. La relation prcdente


(VII.5) se rduit donc :
(VII.6)

p (i 3)

( 3)
( 2)
w
=
ik
(2)
( 2) [ y k ] ,
w kh
w kh
( 3)

dans laquelle on a pu sortir le poids w ik .

HAMMOUCH Ahmed

44

( 2)

En remplaant y k (sortie du neurone k de la couche 2) par son expression, on


arrive :
(3)

(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)

En reprenant maintenant les relations (VII.4) et (VII.8), on peut rcrire le


gradient de lerreur
E
( 2)
w
kh

y (3) y . ' p (3) .w(3) . ' p (2) . y (1) .

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

On remarque que cette expression est formellement identique au gradient de E par


rapport un poids de la dernire couche, si lon pose :

(VII.10)

(2)
(3) (3)
(2)
=
w . ' p

k
i
ik k
i couche3

HAMMOUCH Ahmed

45

Cette relation sinterprte en considrant que lerreur affecte un neurone k de la


couche 2 est gale la somme des erreurs des neurones de la couche suivante 3
pondres par les poids reliant le neurone k ces neurones de la couche 3. Cette
relation est matrialise par des connexions en traits gras sur la figure VII.2.
A partir des relations (VII.9) et (VII.10), on peut proposer finalement la rgle
dadaptation suivante pour les connexions des neurones de la couche 2.
(2)
(2) (1)
w
= a . y
kh
k
h

(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

pour les neurones de la dernire couche et


(VII.14)

( j)
( j + 1) ( j + 1) ( j )
.w
. ' p

k
ik
i couche( j + 1) i
k

pour ceux de dune couche cache.


Lalgorithme de rtropropagation du gradient se rsume finalement aux tapes
suivantes :

HAMMOUCH Ahmed

46

1- Choisir la taille du rseau, initialiser les poids et seuils du rseau,


2- Choisir alatoirement une paire (x, yd) dans la base dapprentissage,
3- Calculer successivement les sorties des diffrentes couches caches pour
lentre x, selon la relation (VII.1)
4- Mise jour des poids
4.1- Mettre jour les poids de la dernire couche en utilisant les
relations (VII.12) et (VII.13).
4.2- Mettre jour les poids des couches prcdentes en utilisant les
relations (VII.12) et (VII.14).
5- Si le test darrt nest pas satisfait, retourner en 2.
VI.3. Aspects pratiques de lalgorithme
VI.3.1. Lissage de la rgle dadaptation
Lalgorithme propos au paragraphe prcdent est rarement utilis tel quel en
pratique. En effet, cest un algorithme de type gradient stochastique, fond sur la
minimisation dune erreur instantane et non pas dune erreur calcule sur toute la
base dapprentissage. La vitesse de convergence est donc assez lente et ncessite un
pas dadaptation petit pour viter linstabilit. Tous les raffinements des mthodes
de moindres carres peuvent tre utiliss en tenant compte de laspect non linaire
du modle.
Lamlioration la plus couramment utilise consiste ajouter un terme de filtrage
sur les incrments dadaptation. Ce terme est souvent appel momentum dans la
littrature. En fait, ladjonction de ce terme correspond la minimisation dun
critre E approximativement gal la somme des erreurs quadratiques pondres
exponentiellement. Soit
E ( n) =

2
1 n ni
y y

d
2i =1

o est un facteur doubli compris entre 0 et 1.


Aprs le calcul de la drive partielle

E (n)
w

jk

et son introduction dans

( n)

lexpression de wjk(n+1), on arrive la rgle dapprentissage bien connue :

HAMMOUCH Ahmed

jk

47

(n + 1) = w

jk

( n) = w

jk

jk

(n) a (n) x (n) + w (n)


j
k
jk

(n) w

jk

( n 1)

Le momentum indique donc combien la modification prcdente du poids devra


affecter la modification actuelle du poids.
On voit clairement, dans lexpression du nouveau terme derreur (E(n)) que loubli
correspond la pondration exponentielle des erreurs. En pratique, on prend
infrieur 1 et voisin de 1. On peut aussi choisir un oubli variable, faible
initialement et tendant asymptotiquement vers 1.

VI.3.2. Valeurs initiales des poids


Les valeurs initiales des poids et seuils doivent tre diffrents de zro. Sinon ils
restent toujours nuls au cours de lapprentissage. En pratique, on choisit
alatoirement les valeurs initiales des poids entre M1 et +M2, le choix des bornes
dpend de la dynamique des signaux dentre.
Pour conserver une vitesse de convergence acceptable, une solution simple consiste
choisir les poids initiaux en fonction des entres, afin de se situer dans la zone
linaire de la sigmode (figure VII.3). Sinon (p) seront trop faible voir nulle et de
ce fait j et w aussi et donc pas dajustement.

Figure VII.3 : Allure de la fonction sigmode et de sa drive pour k=1,


kp
e
( ( p) =
et ' ( p) = k ( p)[1 ( p)] )
kp
e +1

HAMMOUCH Ahmed

48

VII.3.3. Choix du pas dadaptation


Comme dans tout algorithme de type gradient, le pas dadaptation doit tre choisi
avec soin si lon veut une vitesse de convergence suffisante, sans toutefois entraner
de risque dinstabilit de lalgorithme. De nombreuses solutions ont t proposes,
mais il ne semble pas que le rapport vitesse/complexit soit toujours convaincant.
Une solution simple et peu coteuse en calculs consiste adapter le pas
dadaptation afin davoir une dcroissance rgulire de lerreur quadratique
moyenne et non pas des paramtres. Elle propose dajuster le pas dadaptation
aprs chaque passage de la base dapprentissage complte.

VII.3.4. Test darrt


La convergence de lalgorithme nest pas assure pour un nombre fini et petit
ditrations. En pratique, il faut calculer un indice de convergence.
Le test le plus simple, mais aussi le moins performant consiste fixer un nombre
ditrations.
De faon naturelle, on cherche arrter lalgorithme si lerreur E est minimale
(infrieure un seuil fix).
VII.3.5. Dimensionnement du rseau
Il nexiste pas de rsultat thorique qui permet de dimensionner correctement un
rseau en fonction du problme rsoudre. Notamment la taille du rseau, le
nombre de couches caches, le nombre de neurones sur la ou les couches caches
etc.
VII.3.6. Base dapprentissage et de gnralisation
Les rseaux de neurones effectuent une modlisation numrique partir
dexemples qui leurs sont fournis dans la phase dapprentissage. La phase de test
dite de gnralisation consiste mesurer les performances sur des exemples non
appris.
La base dapprentissage doit donc tre reprsentative des exemples qui pourront
tre prsents par la suite.
Il faut noter aussi que la normalisation des donnes est essentielle la bonne
convergence de lalgorithme de rtropropagation.

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

VII.4. Exemples dutilisation du rseau multicouches


VII.4.1. Approximation dune fonction

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

VII.4.2. Classification dimages

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

x (m, n).log[x (m, n)] ,

m= 1 n = 1
M

m = 1 n =1
N

MNTk = 1 (x(m,n) x)k (moment dordre k (k=3 et 4))


MN m =1 n =1

HAMMOUCH Ahmed

53

VIII. Rseau de Kohonen


Le modle de Kohonen a t introduit en 1982 par Kohonen, mais il est rest
longtemps ignor. Il rencontre actuellement un important succs et fait l'objet de
nombreuses applications.
Son intrt est la fois thorique et pratique, notamment parce qu'il introduit des
notions d'interaction entre les neurones. Ce quil lui procure la proprit d'laborer
une reprsentation des donnes conservant leur topologie. Des exemples (donnes)
proches dans l'espace dentre vont avoir des reprsentations galement proches
dans le rseau (l'espace des reprsentations) et vont ainsi pouvoir tre classs dans
une mme classe ou dans des classes voisines. La configuration dimensionnelle
rduite du rseau (gnralement un plan) met l'accent sur son aptitude pour la
simplification et la compression des informations issues d'espaces d'entre souvent
multidimensionnels tout en prservant leurs caractristiques topologiques.
Il possde galement deux proprits intressantes, un mode de fonctionnement
intrinsquement parallle et des capacits d'auto-apprentissage. En effet, il se
caractrise par son mode d'apprentissage dit non supervis o les exemples n'ont
pas tre connus et tiquets. Le rseau lui mme dterminera, pendant la phase
d'apprentissage, une classification en s'auto-organisant.
Avant de dtailler le rseau de Kohonen, nous allons dcrire dans un premier temps
le principe gnral dun rseau architecture comptitive qui constitue la base du
modle de Kohonen.
VIII.1. Rseau apprentissage comptitif
Les rseaux apprentissage comptitif sont utiliss essentiellement pour la
classification automatique.
VIII.1.1. Structure du rseau
La figure VIII.1 reprsente larchitecture dun rseau de neurones apprentissage
comptitif. Le rseau est constitu dune couche de neurones de D entres, chacune
reoit une composante de lobservation x(t) prsente. Chaque neurone, dindice k,
calcule sa fonction de transfert, X (t ) _ Wk , dfinie par la distance entre son vecteur

HAMMOUCH Ahmed

54

poids Wk et lobservation X(t). Le neurone, dindice j, gagnant est celui dont le


vecteur poids est le plus proche de lobservation : j = Arg min X (t ) Wk .
k = 1, K

x1

y1

x2

y2

xd

wik

xD

yi

yn

Figure VIII.1 : Rseau de neurones apprentissage comptitif

VIII.1.2. Lapprentissage comptitif standard


Lapprentissage comptitif standard consiste, chaque prsentation dune
observation lentre du rseau, actualiser le vecteur poids le plus proche de cette
observation en lui ajoutant une fraction de la distance les sparants. Les autres
vecteurs poids restent inchangs.
Pour une observation X(t) prsente l'itration de rang t, le critre d'optimisation,
s'crit :
(VIII.1)

K
E (t ) = X (t ) W u
avec
u = 1 si X (t ) Ck
k kt
kt 0 sin on
k =1

o Ck dsigne la classe k et K le nombre de classes (donc de neurones).


Le gradient de E(t) par rapport Wj est dfini par :
(VIII.2)

E (t )
w

= X (t ) W u
j jt

et la rgle d'actualisation des poids du rseau s'crit:

HAMMOUCH Ahmed

(VIII.3)

W (t + 1) = W (t ) (t )
j
j

55
E (t )
W

Soit en remplaant (VIII.2) dans (VIII.3), on obtient:


(VIII.4)

W (t + 1) = W (t ) + (t ). X (t ) W (t )u
j
j
j jt

qui s'crit aussi sous la forme:

(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

3. Tirer alatoirement une observation X(t) de lensemble dapprentissage.


4. Calculer pour chaque neurone k, k = l, , K, la fonction d'activation :
X (t ) W (t ) ,
k

5. Slectionner le neurone gagnant d'indice j vrifiant : j = Arg min X (t ) Wk (t )


k

6. Actualiser le vecteur poids du neurone gagnant :

Wk (t ) + (t ). X (t ) Wk (t ) si k = j
W (t + 1) =
k
W (t )
si k j
k

7. Incrmenter t (tt+1) et mettre jour le coefficient dapprentissage


(t ) = (0)(1 t / T ) ,
8. Rpter les tapes 3 7 jusqu ce que t=T.
Avec le regain d'intrt dont bnficient les rseaux de neurones, de nombreuses
modifications ont t apportes l'apprentissage comptitif standard afin de
lamliorer. Ces modifications, dont certaines sont heuristiques, interviennent au
niveau de la fonction d'activation des neurones et/ou dans l'actualisation des
vecteurs poids. Nous allons en tudier quelques unes.

VIII.1.3. Apprentissage comptitif sensible la frquence et apprentissage


comptitif pnalisant le rival
Le principe de l'apprentissage comptitif consiste actualiser le vecteur poids du
neurone qui gagne la comptition, appel neurone gagnant. Cette solution n'est pas
satisfaisante du fait qu'un neurone qui gagne la comptition, a de plus en plus de
chance de la gagner dans les itrations suivantes vue que son vecteur poids se
trouve de plus en plus rapproch des observations. De ce fait, les neurones dont les
vecteurs poids sont loin de toute observation ont de moins en moins de chance de
gagner la comptition.
VIII.1.3.1. Apprentissage comptitif sensible la frquence
L'apprentissage comptitif sensible la frquence consiste dfavoriser les
neurones qui gagnent souvent la comptition en comptabilisant le nombre de fois
que ces neurones gagnent et en introduisant ce nombre dans leurs fonctions
dactivation.

HAMMOUCH Ahmed

(VIII.7)

57

( X (t ),W (t )) = (t ). X (t ) W (t )
k

o k(t) est dfinie par :


(VIII.8)

(t 1) + 1 si le neurone k est gagnant et (t 1) <

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)

j = Arg min ( X (t ),W (t ))


k
k = 1, K

Au cours de lapprentissage, le neurone gagnant j aura sa frquence augmente de


1, quation (VIII.8), et son vecteur poids actualis grce l'quation (VIII.5).
Lorsque le nombre d'itrations devient assez grand toutes les frquences k(t)
tendent vers la frquence max. Le calcul de la distance devient alors identique
celui de l'apprentissage comptitif standard.
Lalgorithme dapprentissage comptitif sensible la frquence peut tre rsumer
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 et k(0)=1,
3. Tirer alatoirement une observation X(t) de lensemble dapprentissage,
4. Calculer pour chaque neurone k, k = l, , K, la fonction d'activation :
( X (t ),W (t )) = (t ). X (t ) W (t ) ,
k

5. Slectionner le neurone gagnant d'indice j vrifiant :


j = Arg min ( X (t ),W (t ))
k
k = 1, K

6. Actualiser le vecteur poids et la frquence du neurone gagnant :

Wk (t ) + (t ). X (t ) Wk (t ) si k = j
W (t + 1) =
k
W (t )
si k j
k

HAMMOUCH Ahmed

58

(t 1) + 1 si le neurone k est gagnant et (t 1) <

k
max
(t ) = k
k
(t 1) sin on
k

7. Incrmenter t (tt+1) et mettre jour le coefficient dapprentissage


(t)=(0)(1-t/T),
8. Rpter les tapes 3 7 jusqu ce que t=T.

VIII.1.3.2. Apprentissage comptitif pnalisant le rival


Lapprentissage comptitif pnalisant le rival intervient au niveau de lactualisation
non seulement du vecteur poids du neurone gagnant mais aussi de son rival. Le
neurone rival est le second neurone gagnant :
(VIII.10)

r = Arg min X (t ) W (t )
k
k j

Ce type dapprentissage consiste, chaque prsentation dune observation X(t)


dplacer le vecteur poids du neurone gagnant dans le sens de cette observation et
dplacer le vecteur poids du rival dans le sens oppos. Les vecteurs poids des autres
neurones restent inchangs :

(VIII.11)

W (t ) + (t ).[ X (t ) W (t )] si k = j , j est le neurone gagnant


k
k

W (t + 1) = W (t ) (t ).[ X (t ) W (t )] si k = r , r est le neurone rival


k
k
k

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

3. Tirer alatoirement une observation X(t) de lensemble {X1, X2 ..., XN},


4. Calculer pour chaque neurone k, k = 1, ..., K, la fonction dactivation:
||X(t)-Wk(t)||,
5. Slectionner le neurone gagnant j vrifiant : j = Arg min X (t ) Wk (t )
k = 1, K

et le neurone rival r vrifiant :

r = Arg min X (t ) W (t )
k
k j

6. Actualiser les vecteurs poids :


W (t ) + (t ).[ X (t ) W (t )] si k = j , j est le neurone gagnant
k
k

W (t + 1) = W (t ) (t ).[ X (t ) W (t )] si k = r , r est le neurone rival


k
k
k

si k j et k r
W (t )
k

7. Incrmenter t (t t+1) et mettre jour le coefficient dapprentissage


(t)= (0)(1-t/T),
8. Rpter les tapes 3 . 7 jusqu ce que t = T.
Lapprentissage comptitif sensible la frquence et celui pnalisant le rival sont
simples mais heuristiques, vu quils ne sont pas dduits de loptimisation dun
critre mathmatique.
Certains auteurs proposent demployer la fois lapprentissage comptitif sensible
la frquence et celui pnalisant le rival. La mthode est similaire lalgorithme
LVQ de Kohonen (learning vector quantization) mais en apprentissage non
supervis.
En choisissant les coefficients dapprentissage (t) et (t) de telle sorte que (t) soit
trs infrieur (t), le rseau peut dcouvrir automatiquement le nombre de classes
en prsence. Autrement dit, supposons que le nombre des classes est inconnu et que
le nombre de neurones K est suprieur au nombre rel de classes. Grce au
mcanisme dapprentissage sensible la frquence les vecteurs poids des neurones
gagnants convergent vers les centres de groupements dobservations. La
pnalisation du rival a pour effet dloigner les vecteurs poids des neurones rivaux
de toute observation. Les neurones rivaux seront facilement limins. Dans le cas
o le nombre de neurones est infrieur au nombre de classes les vecteurs poids
oscillent entre les classes durant lapprentissage, ce oui peut tre un moyen de
mettre en vidence que le nombre des neurones est infrieur au nombre des classes.
Signalons enfin quil existe un algorithme dapprentissage comptitif dit gnralis
bas sur loptimisation dun critre.

HAMMOUCH Ahmed

60

VIII.2. Cartes auto - organisatrices de Kohonen


Il reprsente un type particulier de rseaux comptitif qui dfinit un voisinage
spatial pour chaque unit de sortie. Il sinspire de la modlisation des systmes de
perception, tels que la vue ou loue, chez les manires. La principale proprit de
ces systmes est de pouvoir coder sur des neurones voisins des signaux dentre qui
se ressemblent. Kohonen propose un modle qui sintgre dans cette constatation.
Ce modle est appel couramment carte topologique auto- adaptative (ou auto
organisatrice) de Kohonen parce que garce cette proprit, la topologie du rseau
sadapte celle de lespace des entres.
En effet, une fois son travail dapprentissage (ou dorganisation) termin, les
neurones du rseau sont disposs de faon reproduire la densit de probabilit
dapparition des vecteurs dentres.
Les cartes auto-organisatrices sont connues depuis longtemps (1977), mais ce n'est
qu partir des annes 90 que des applications les utilisent : carte phontique,
diagnostic de pannes, robotique, compression d'images, etc.

VIII.2.1. Structure du rseau


Un rseau de Kohonen est constitu dun ensemble de k neurones de sortie n
entres. Ces neurones sont connects totalement aux n entres par nk connexions
modifiables.
Les neurones du rseau sont placs dans un espace P dimensions (gnralement
P=1 ou 2). Chaque neurone possde donc des voisins dans cet espace.
Enfin, chaque neurone possde des connexions latrales rcurrentes agissant sur ses
neurones voisins. Cette interaction dpend de la distance entre les neurones
concerns. Ce type de relations correspond, en fait, de faon trs schmatique, aux
relations entre micro - colonnes corticales. En effet on a pu montrer quentre les
neurones qui recevaient les signaux des cellules rceptrices, il existait un
mcanisme dinteraction latrale qui dpendait de la distance entre les neurones
concerns. Cette dpendance est reprsente par la fonction dite chapeau
mexicain (figure VIII.2).

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.

Figure VIII.3 : Structure d'un rseau de Kohonen


a) un rseau 1 D, b) un rseau 2D.
La figure VIII.3.a montre un exemple de couches de Kohonen. Les neurones de
cette couche sont relis aux n entres v1, v2,... vn. Chaque entre est affecte d'un

HAMMOUCH Ahmed

62

poids wri; o r reprsente neurone dans la couche. Dans cette configuration, le


vecteur d'entre est de dimension n et le rseau est de dimension 1 (P=1). Sur la
figure VIII.3.b, on distingue un rseau de Kohonen organis selon une grille de
neurones en 2 dimensions.

VIII.2.2. Fonctionnement du rseau


A la prsentation d'une entre, un neurone sur la carte est slectionn. La rgle de
slection du vainqueur propose par Kohonen est base sur une mesure de distance
euclidienne entre le vecteur V dentre et les vecteurs poids Wr des neurones. Le
neurone r gagnant (ou vainqueur) est celui dont le vecteur poids est le plus proche
du vecteur dentre : ||Wr-V||=min||Wr-V||.
On peut ainsi raliser, avec ce type de rseau, des classifications, de la
reconnaissance de formes etc.
Les coefficients de connexion sont dfinis par un apprentissage non supervis.

VIII.2.3. Apprentissage et voisinage dans une couche de Kohonen


Une autre particularit des rseaux de Kohonen rside dans la structuration
topologique de la couche de neurones qui introduit la notion de voisinage et de
distance entre neurones dans la couche.
La couche neuronale peut ainsi tre considre comme une carte. La structure est
prdfinie et reste fige au cours de lapprentissage. Plusieurs formes de cartes sont
possibles, selon le nombre et la disposition des neurones qui constituent ce
voisinage. La figure VIII.4 illustre quelques exemples.
Les valeurs (1, 2, 3) apparaissant sur les schmas correspondent au rayon du
voisinage. Ainsi, un rayon de 1 dans un voisinage rectangulaire fait appel huit
neurones.
Lapprentissage va permettre dtablir un rapport entre la topologie des neurones et
celle des espaces des entres.
Dans la phase d'apprentissage, le neurone gagnant va modifier ses poids d'entre
pour devenir un peu plus "sensible" au vecteur prsent, c'est--dire que son

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

W (t ) V (t ) = min W (t ) V (t ) avec . norme euclidienne.


r'
r

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 '

o (t) reprsente le coefficient dapprentissage et hrr(t) une fonction dcrivant le


voisinage associ au neurone lu r un instant t donn.
5/ Calcul de ltendue du voisinage et du pas dadaptation,
6/ Retour ltape 2 sauf si le test darrt est vrifi.

VIII.2.4. Paramtres dapprentissage


De faon gnrale, lorganisation de la carte est conue comme une phase
pralable, mme sil existe des variantes en ligne. La phase dapprentissage
comporte alors N cycle dadaptation pendant lesquels les paramtres de et hrr
dcroissent pour favoriser la convergence du rseau vers une solution optimale.
En gnral, on adopte les fonctions suivantes (ceux de Ritter) :
- Coefficient dapprentissage

f
= .
k
i
i

k
max

o i et f reprsentent respectivement les valeurs initiales et finales du coefficient


dapprentissage. La variable temps k marque la succession des vecteurs dentre
prsents au rseau au cours de lapprentissage. kmax est ici gal N, nombre de
vecteurs composant le jeu dapprentissage.
- Fonction de voisinage hrr

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 :

Figure VIII.5 : Evolution des coefficients et

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)

une phase initiale assez courte, pendant laquelle et sont grands,


conduisant une modification rapide des poids et la formation d'une
discrtisation grossire de l'espace d'entre,

ii)

une deuxime phase de convergence 10 100 fois plus longue permettant


d'affiner la reprsentation et d'obtenir la carte finale grce des
paramtres et plus faibles.

VIII.2.5. Quelques remarques pratiques


Le choix des paramtres de voisinage, de et de la vitesse de leur dcroissance
reste empirique, Kohonen les fait dcrotre trs lentement ce qui donne une
bonne convergence, mais conduit des dures d'apprentissage trs longues (de
1000 100000 itrations).
I1 n'y a pas de critre objectif d'arrt, I'algorithme s'arrte lorsque le paramtre
devient trs faible. A ce stade, les poids ne varient pratiquement plus, mais ce
n'est pas une garantie de bon apprentissage si les paramtres ont t mal choisis
au dpart.
L'algorithme a t dcrit sur un espace de reprsentation 2 dimensions. On
peut galement I'appliquer facilement dans un espace de reprsentation une
dimension (voisinage 1D, chaque neurone a au plus 2 voisins), ou mme 3

HAMMOUCH Ahmed

67

dimensions voire plus. II est clair qu' dimensionnalit croissante le temps de


calcul va crotre de faon trs significative.
La norme utilise lors des calculs de distance (tape 2) est une norme
Euclidienne qui donne de bons rsultats si les variances des diffrentes
composantes des vecteurs d'entre sont du mme ordre de grandeur. Par contre
si ces variances sont trs diffrentes, la carte risque de ne pas se dvelopper
correctement. On peut alors utiliser une mesure de distance Euclidienne
pondre, ou normaliser les donnes.
L'initialisation des poids du rseau doit tre ralise, d'aprs des rsultats
exprimentales, avec des valeurs alatoires variant faiblement autour de la
moyenne des donnes ou mieux encore en rpartissant rgulirement les poids
autour du centre de gravit des donnes, ce qui permet d'obtenir une
convergence plus rapide.
Il faut viter d'initialiser les poids avec des valeurs alatoires variant fortement, car
on peut alors se retrouver avec deux cellules initialises avec des poids
diamtralement opposs. Ds lors quand une de ces deux cellules va tre lue lors
de la prsentation d'un prototype d'entre, sa voisine initialise une grande
distance ne va pas pouvoir se dplacer suffisamment pour converger dans la mme
classe ; au contraire, un prototype suivant risque de l'attirer dans une direction
oppose d'o un phnomne de va et vient entre ces deux cellules voisines
topologiquement, qui va empcher une convergence correcte du rseau.

VIII.2.6. Convergence de I'algorithme


La carte topologique de Kohonen, bien que relativement simple, s'est avre
particulirement difficile analyser formellement. I1 n'existe pas de preuve
rigoureuse du comportement de I'algorithme des cartes topologiques en gnral.
Une des difficults est la caractrisation des proprits doptimalit du pavage.
Dans le cas de cartes monodimensionnelles et pour des densits uniformes, la
convergence de lalgorithme a t prouve, partiellement par Kohonen puis de
manire rigoureuse par Cottrell et Fort. Dans le cas de distribution quelconques,
des premier rsultats ont t proposes. Dans tous les cas de figure, la
dmonstration savre dlicate.

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)

Figure VIII.7 : Illustration de la formation d'une carte de Kohonen.

HAMMOUCH Ahmed

72

On constate une rpartition qui devient uniforme au fur et mesure de


l'apprentissage. Cette rpartition est calque sur la densit de probabilit lie au
choix des vecteurs du jeu d'apprentissage. Aprs apprentissage, un motif d'entre
sera reprsent par le neurone prototype dont il se rapproche le plus. Par
consquent, une fois l'apprentissage achev, les valeurs des connexions dfinissent
un pavage de l'espace des entres qui reflte au mieux la distribution de probabilit
des motifs d'entre.
Ces cartes sont appeles cartes sensorielles dans la mesure o elles se limitent une
reprsentation interne d'un environnement externe. Aucune action motrice n'est
associe la perception des signaux.

HAMMOUCH Ahmed

73

IX. LE MODELE DE HOPFIELD


Le modle original de Hopfield, qui a fait par la suite lobjet de nombreuses
amliorations, est bas sur lutilisation des neurones artificiels de MacCulloch et
Pitts, cest dire des neurones artificiels binaires. On parle alors du modle discret
de Hopfield. Dans ce paragraphe, nous utilisons les deux notations {0,1} ou {-1,1}
pour reprsenter les sorties, ou les tats, dun neurone binaire artificiel. En fait, ces
deux notations sont quivalentes puisquil est possible de passer du domaine {0,1}
au domaine {-1,1} et vice-versa par un simple changement de variable. Ainsi,
chaque fois quil sagira dune simplification de calcul, on utilisera lune ou lautre
de ces deux notations.

IX.1. Structure du rseau


Le rseau de Hopfield est un rseau entirement connect. Chaque neurone ni reoit
en entres toutes les sorties des autres neurones (figure IX.1). La connexion du
neurone ni vers le neurone nj est caractrise par un coefficient de couplage ou
poids synaptique not wji. Ce couplage correspond limportance accorde
laction du neurone ni, sur le neurone nj. Vi, reprsente la sortie, ou ltat, du
neurone ni.

Figure IX.1 : Connexion des neurones dans un rseau de Hopfield


La figure IX.2 montre lorganisation dun rseau de Hopfield possdant N
neurones. Les poids des connexions sont matrialiss par des cercles blancs et les
neurones par des cercles gris.

HAMMOUCH Ahmed

74

w1N

w12

w11

n1

V1

w2N

w22

w21

n2

V2

wNN

wN2

wN1

nN

VN

Figure IX.2 : Architecture dun rseau de Hopfield


Un rseau de Hopfield est donc dfini par un ensemble de N neurones en
interaction totale et une matrice W constitue des poids des connexions wij,
i=1,,N et j=1,N. En considrant les tats lmentaires Vi, de tous les neurones
ni, i=1,,N, le systme peut tre dcrit par le vecteur V= (V1,,V2,,...VN)T {1,1}N qui reprsente ltat du rseau.

IX.2. Dynamique du rseau


Considrons un rseau de Hopfield N neurones. Lvolution dynamique du rseau
consiste faire passer le rseau dun tat un autre en modifiant les tats
lmentaires de ses neurones. La mise jour des lments du vecteur dtat peut se
faire en mode synchrone ou en mode asynchrone. Nous rappelons que le
fonctionnement du rseau est temps discret puisque le modle de neurones utilis
est binaire.

HAMMOUCH Ahmed

75

IX.2.1. Mise jour eu mode synchrone


r

En mode synchrone, toutes les composantes du vecteur dtat V sont modifies


simultanment. Ainsi, ltat de chaque neurone linstant t+1 est calcul partir
des tats linstant t, de tous les autres neurones :
V (t + 1) = 1
i

(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

o Ui est le potentiel dentre du neurone ni :


N
U (t + 1) = W V (t )
i
ij j
j =1

IX.2.2. Mise jour en mode asynchrone


r

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

o Ui, est le potentiel dentre du neurone ni :


i 1
N
U (t + 1) = W V (t + 1) + W V (t )
i
ij j
ij j
j =1
j=i
r

A partir du vecteur dtat V (t ) = V1(t ), V2 (t ),..., VN (t ) , qui reprsente ltat du rseau


linstant t, une itration de mise jour asynchrone squentielle implique donc la

HAMMOUCH Ahmed

76

mise jour successive de N composantes suivant lquation IX-2 pour finalement


r

aboutir au nouveau vecteur dtat V (t + 1) = V1 (t + 1),V2 (t + 1),...,VN (t + 1) qui

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

La stabilit du rseau correspond un vecteur dtat Vs qui ne peut


plus
tre
r
r
modifi au cours de la procdure de mise jour, cest dire tel que Vs (t ) = Vs (t + 1) .
Il est important de noter quun mme rseau peut admettre plusieurs tats stables
qui sont accessibles partir de configurations initiales diffrentes.
IX.3. Apprentissage du rseau
Le mcanisme dapprentissage consiste entraner le rseau en lui prsentant
successivement en entre des lments constitutifs dune base dapprentissage.
Chaque lment de cette base est un vecteur qui reprsente une donne
mmoriser. La dimension des vecteurs de la base dapprentissage est gale au
nombre de neurones de la couche dentre du rseau. Les composantes de ces
vecteurs peuvent tre relles ou binaires selon le modle de neurone utilis dans le
rseau.
Lapprentissage dun rseau est essentiellement assur par une dynamique de ses
connexions : au cours de lentranement, le rseau adapte ses poids synaptiques
laide de rgles dites rgles dapprentissage.

HAMMOUCH Ahmed

77

Dans un rseau de Hopfield, lapprentissage est assur par une application


quantitative de la rgle de Hebb. Celle-ci consiste augmenter le poids dune
connexion neurones chaque fois quils sont actifs simultanment.
Supposons que lon souhaite mmoriser dans un rseau de Hopfield N neurones
un ensemble E de M tats :

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

Cela signifie que:


- Tous les tats Em, m = 1,...,M. sont des tats stables du rseau, selon la
dynamique dcrite plus haut.
- Tous ces tats sont, en outre, des tats attracteurs, cest dire que lorsque le
rseau part dun tat initial quelconque, il est attir vers ltat stable le plus
proche.
La procdure dapprentissage peut se dcomposer en trois phases, selon le schma
suivant :
1. Initialisation : On dmarre avec un ensemble de poids de connexions tous
nuls.
2. Prsentation dun tat mmoriser : On force le rseau dans un tat
mmoriser, soit par exemple ltat E m0.
3. Modification des poids des connexions : On examine tous les couples (ni,
0.
nj) de neurones, ij, et on augmente Wij, de la quantit Wij = Eim0 .E m
j
Ainsi, en prsentant successivement les M tats mmoriser, on aboutit au rsultat
suivant :
(IX.3)

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

Table IX.1 : Dynamique des connexions dun rseau de Hopfield


On constate que les poids des connexions sont symtriques, cest dire que
Wij=Wji, Il faut noter aussi que linteraction dun neurone avec lui-mme nest pas
prise en compte, cest dire que Wii=0. Ainsi, aprs la phase dapprentissage, les
deux conditions sur la matrice W sont vrifies, ce qui permet dassurer la
convergence du rseau vers un tat stable lors de son volution.
En phase de fonctionnement, dite aussi de rappel, si lon part dun tat initial
suffisamment proche dun tat Em0 mmoris, la dynamique du rseau fait voluer
celui-ci vers ltat final dsir Em0. De cette manire, un rseau de Hopfield peut
tre assimil une mmoire associative adressable par son contenu. De faon
similaire aux mcanismes de mmorisation du cerveau humain, une information
mmorise nest pas localise des emplacements dtermins, mais elle est
distribue, ou code, sur lensemble des neurones qui constituent ainsi la mmoire.
Lintrt de cette distribution de la mmoire sur plusieurs entits est ce quon
appelle la rsistance au bruit : la perte dun lment de la mmoire nentrane pas la
perte totale de linformation mmorise.
Il est important de noter que lapprentissage du rseau est statique, car il ny a pas
vritablement de dynamique des connexions. En effet, les poids des connexions
peuvent tre calculs directement, tant donn lensemble des tats mmoriser.
Pour cette raison, lapprentissage dans un rseau de Hopfield est parfois qualifi
dapprentissage par cur, par opposition avec les algorithmes dapprentissage par
essai et erreur. Mais, en revanche, le fonctionnement du rseau est dynamique. A
partir dun tat initial, le rseau effectue un certain nombre ditrations afin de
converger vers un tat mmoris. Au cours de chaque itration, le rseau passe dun
tat un autre en changeant les tats des neurones laide de leur rgle
dvolution.

HAMMOUCH Ahmed

79

IX.4. Limites des rseaux de Hopfield


Particulirement simple, un rseau de Hopfield est relativement puissant grce sa
proprit de se comporter comme une mmoire associative. Toutefois les limites
suivantes apparaissent :

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.

Ncessit dun prtraitement pralable : Avant de mmoriser les tats dans le


rseau, ceux-ci doivent tre prtraits pour les orthogonaliser afin dassurer leur
stabilit. Afin dviter cette tape de prtraitement, Personnaz propose une
mthode de calcul des poids des connexions permettant dassurer la stabilit des
tats mmoriser, quils soient orthogonaux deux deux ou pas.

Oubli catastrophique : La capacit dapprentissage de la rgle de Hebb est trs


rduite. Daprs certains auteurs, en supposant le nombre N de neurones trs
grand, le nombre maximal dtats correctement retrouvs est infrieur 0,138N.
Si on dpasse cette limite, cest dire si on veut surcharger la mmoire, tous
les tats appris sont perdus.

Il faut noter que ces insuffisances sont dues principalement lutilisation de la


rgle de Hebb dans la phase dapprentissage du rseau.

HAMMOUCH Ahmed

80

IX.5. Rseau de Hopfield et optimisation combinatoire


On parle de rseaux connexionnistes ds que lon trouve des neurones en
interactions. Mais on connat aussi dautres types dinteractions, comme celles par
exemple des particules en physique statistique. Il nen fallait pas moins quelques
prcurseurs comme Little et Hopfield pour constater ce paralllisme et lexploiter.
Ce paralllisme a permis dintroduire la notion de fonction dnergie dun
ensemble de neurones tous interconnects et de dvelopper un formalisme riche et
bien matris pour aborder un grand nombre de problmes.
IX.5.1. Structure gnrale du rseau
Nous avons vu que, dans un rseau de Hopfield, chaque neurone est soumis
laction des autres neurones, y compris lui-mme. Afin de rendre plus gnrale
lutilisation du rseau, les neurones sont soumis, en plus, une action provenant de
lextrieure. Celle-ci se traduit, pour chaque neurone ni, par une entre externe
note Ii (figure IX.3).

w1N

w12

w11

V1

n1
I1

w2N

w22

w21

V2

n2
I2

wNN

wN2

wN1

VN

nN
IN

Figure IX.3 : Structure gnrale dun rseau de Hopfield

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)

IX.5.2. Fonction dnergie du rseau


Considrons un rseau de Hopfield N neurones.r Soit W la matrice des poids des
connexions Wij, i = 1,...,N et j = 1,...,N, et soit I le vecteur constitu par les N
entres extrieures Ii, i=1,...,N. Hopfield dfinit une application, appele fonction
dnergie du rseau, de {-1,1}N dans R qui tout vecteur dtat
r
V (t ) = V (t ), V (t ),..., V (t ) T associe la quantit :
1
2
N

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

Examinons lvolution de cette fonction dnergie au cours de lvolution


dynamique du rseau. Faisons voluer ltat du neurone ni selon la rgle dcrite au
IX.2.2 (Cf. Equation IX.2). Pour la variation Vi = Vi (t + 1) Vi (t ) de ltat Vi du
neurone ni, la variation correspondante de la fonction dnergie vaut :
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

Appliquons au rseau la rgle dvolution dcrite au IX.2.2. (Cf. Equation IX.2).


Le table IX.2 rcapitule le sens de variation de la fonction dnergie H en fonction
de Vi et Ui.
Vi(t) Ui(t+1) Vi(t+1) Vi= Vi(t+1)-Vi(t) H
1
>0
1
0
0
1
<0
-1
-2
<0
-1
>0
1
2
<0
-1
<0
-1
0
0
Table IX.2 : Sens de variation de la fonction dnergie du rseau.
On constate alors que la variation H de la fonction dnergie engendre par la
variation de ltat dun neurone est toujours ngative. La fonction dnergie H est
donc monotone dcroissante. Comme le nombre de neurones du rseau est fini, la
fonction dnergie H est borne. Par consquent, au bout dun certain nombre
ditrations, une valeur minimale de celte fonction est atteinte et le systme se
stabilise. Ainsi, un tat stable du rseau correspond un minimum de sa fonction
dnergie H. Il faut cependant noter que le rseau peut converger vers lun des
minimums locaux de sa fonction dnergie. Ces minimums locaux, qui peuvent
correspondre diffrentes valeurs de la fonction dnergie, sont accessibles partir
de configurations initiales diffrentes.
Revenons au problme de la mmoire associative que nous avons voqu au IX.3.

HAMMOUCH Ahmed

83

Nous avons vu quaprs apprentissage dun rseau de Hopfield, celui-ci volue, au


cours de son fonctionnement, vers un tat mmoris, sil a t stimul par un tat
proche de celui-ci. Nous avons vu aussi que le rseau peut converger vers des tats,
appels tats poubelles, qui ne sont pas mmoriss (Cf. IX.4). Ces tats parasites
correspondent en fait des minimums locaux de la fonction dnergie du rseau. Ils
peuvent tre atteint lorsque ltat initial du rseau est trop loign des tals
mmoriss. Ces tats sont aussi lis la capacit dapprentissage du rseau. Un
remde ce problme consiste introduire du bruit pour permettre au rseau de
sortir de ces tats parasites que constituent les minima locaux de sa fonction
dnergie. Cette technique, que nous analyserons au IX.6, relve du principe du
recuit simul.
IX.5.3. Formulation duale
Nous avons vu quun rseau de Hopfield peut tre dcrit par une fonction dnergie
dfinie sous une forme quadratique partir de la matrice des poids de ses
connexions et du vecteur de ses entres externes. Nous avons constat que
lvolution dynamique du rseau lamenait se stabiliser sur des minima locaux de
celle fonction. En dautres termes, les minima locaux de la fonction dnergie du
rseau agissent comme des attracteurs au cours de son volution.
Cette proprit qua le rseau de rechercher un minimum de sa fonction
dnergie le rend apte rsoudre certains problmes doptimisation o lobjectif est
de minimiser une fonction de cot reprsente sous une forme quadratique. Cette
dualit a t introduite par Hopfield lui- mme, dans le but de donner une solution
au problme du voyageur de commerce.
Dune manire gnrale, la mthodologie neuronale applique un problme
doptimisation comprend trois tapes successives :
1. Codage du problme. Il sagit de dfinir un systme caractris par un
ensemble de variables dtat binaires et une fonction de cot, sous forme
quadratique, telle que, par construction, les solutions du problme
correspondent des minimums de cette fonction.
2. Construction du rseau. Il sagit, ici, de considrer un rseau entirement
connect, o chaque neurone reprsente une variable dtat binaire, et de
dterminer ses paramtres, cest dire la matrice des poids des connexions et
le vecteur des entres externes, en identifiant la fonction de cot du problme
et la fonction dnergie du rseau dfinie au IX.5.2.

HAMMOUCH Ahmed

84

3. Processus de minimisation. A partir dune configuration initiale du rseau,


les neurones voluent selon la dynamique dcrite au IX.2.2 (Cf. Equation
IX.2) jusqu ce quils ne peuvent plus changer dtat. Ltat stable du rseau
correspond alors un minimum local de sa fonction dnergie qui nest autre
que la fonction de cot. Il faut rappeler que pour assurer la convergence du
rseau, la matrice des poids des connexions doit vrifier les conditions
nonces par Hopfield, cest dire quelle doit tre symtrique avec une
diagonale nulle.
Lintrt de cette mthode doptimisation est quelle est simple mettre en oeuvre
grce lutilisation dune architecture neuronale. Cependant, on peut objecter que
la classe des problmes qui peuvent tre abords semble restreinte puisque les
fonctions minimiser doivent tre des formes quadratiques. Dautre part, on doit
tre conscient du fait que le processus de minimisation induit nest que local.
IX.5.4. Applications
Lutilisation dun rseau de Hopfield pour minimiser une fonction de cot a permis
daborder plusieurs problmes doptimisation combinatoire. Le plus connu de ces
problmes est celui du voyageur de commerce o il sagit, tant donn un certain
nombre de villes, de trouver le plus court chemin passant une fois et une seule par
chaque ville. Hopfield a montr que ce problme peut tre rsolu en utilisant la
mthodologie neuronale que nous avons dcrite plus haut. Pour cela, il a construit
une fonction de cot, sous forme quadratique, telle que les solutions du problme
correspondent des minimums de cette fonction.
Cette approche a t utilise galement dans le domaine de la vision par ordinateur,
dans lestimation de mouvement dans une squence dimages et pour rsoudre le
problme de la mise en correspondance stroscopique, o les problmes sont
formaliss en termes de minimisation de fonctions de cot.

IX.6. Rseaux de Hopfield recuit simul


Le principal inconvnient du modle binaire de Hopfield est celui de la prsence
dtats stables indsirables qui correspondent des minima locaux de la fonction
dnergie du rseau. Ces tats poubelles sont fortement attracteurs car le
processus de minimisation induit par la dynamique du rseau nest que local. Nous
allons montrer, dans ce paragraphe, comment ce problme peut tre rsolu en

HAMMOUCH Ahmed

85

utilisant lalgorithme du recuit simul. Grce sa nature stochastique, celui-ci


permet, lors dun processus de minimisation dune fonction de cot, damliorer la
probabilit de convergence vers un minimum global.
VIII.6.1. Le recuit simul
Introduit en 1983 par Kirkpatrick et ses collaborateurs, lalgorithme du recuit
simul trouve ses origines dans la thermodynamique des systmes physiques o
lon prend en compte les niveaux dnergie.
Considrons un systme constitu dun grand nombre de particules. Un tat de ce
systme peut tre caractris par la donne des tats lmentaires de chacune des
particules, par exemple la position ou le moment magntique dun atome. La
probabilit de trouver ce systme dans un tat E est proportionnelle au facteur de
Boltzmann exp(-H(E)/T) o H(E) reprsente lnergie du systme cet tat et T sa
temprature. Ainsi, les probabilits doccurrence de deux tats E1 et E2 sont lies
par la relation :
(IX.8)

P( E )
H (E ) H (E )
1
2
1 = exp

P( E )
T

Mtropolis a propos un algorithme simple pour simuler un tel ensemble datomes


en quilibre une temprature T donne. A chaque tape de la simulation, on
donne un atome un dplacement alatoire, et on calcule la variation dnergie H
du systme. Si H0, le dplacement est effectu. Le cas o H>0 est trait de
faon probabiliste : la probabilit daccepter le dplacement est p=exp(-H/T). La
temprature T est un paramtre de contrle, qui autorise, lorsquelle est leve, des
sauts dnergie importants.
Par analogie, dans lalgorithme du recuit simul, on considre un systme
caractris par un ensemble de variables dtat. On remplace lnergie par une
fonction de cot minimiser et on utilise la mthode de Mtropolis pour explorer
les tats du systme. Lide du recuit simul est de mettre le systme une
temprature T leve, afin quil explore beaucoup dtats. Lorsque le
systme semble stabilis, on abaisse cette temprature. Cette procdure est rpte
jusqu ce que T atteigne la valeur 0.
On peut illustrer cette mthode de faon intuitive par la minimisation dune
fonction dune variable relle (figure IX.4). On part dun tat initial E0 du systme

HAMMOUCH Ahmed

86

et on fixe la temprature une valeur leve. A chaque tape, on examine la


possibilit de faire varier E de E dans un sens quelconque. Cette variation est
accepte suivant la rgle de Mtropolis. Comme T est leve, on va accepter des
sauts importants qui vont amener E au voisinage du minimum global avec une
bonne probabilit, alors quune mthode de descente de gradient, par exemple,
aurait t rapidement coince dans le premier minimum local rencontr. On
diminue ensuite T progressivement pour geler la variable E.

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

Figure IX.5 : Paysage de la fonction de la figure IX.4 diffrentes tempratures


Face un problme doptimisation, la qualit des solutions produites par
lalgorithme du recuit simul est excellente, car il permet, lors du processus de
minimisation dune fonction de cot, de converger, avec une bonne probabilit,
vers un minimum global. Cependant, sa nature intrinsquement stochastique rend
sa convergence trs lente. De plus, il faut excuter le processus de stabilisation pour
chaque temprature de la squence du recuit, ce qui ncessite une grande quantit
de calculs.
IX.6.2. Utilisation dans les rseaux de Hopfield
Le principe du recuit simul est priori indpendant des rseaux de neurones. Nous
allons montrer comment on peut le mettre en oeuvre sur un rseau de Hopfield.
Nous avons vu que, dans un rseau de Hopfield, un neurone change dtat ds que
son entre totale vrifie une condition de signe (Cf. IX.2.2, Equation IX.2). Nous
avons constat, ensuite, que ce changement dtat va toujours dans le sens de la
diminution de la fonction dnergie associe au rseau (Cf. IX.5.2). Pour avoir un
rseau fonctionnant suivant le principe du recuit simul, il suffit de permettre un
neurone des changements dtat augmentant sa fonction dnergie.
Considrons un rseau de Hopfield constitu de neurones fonctionnant suivant une
rgle stochastique (fonction dactivation stochastique). Dans ce cas, on parle dun
modle stochastique de Hopfield. Dans ce type de rseau, les neurones fonctionnent
de faon alatoire, cest dire quils envisagent simultanment les deux tats
possibles {-1,1} pour modifier leurs tats. Le changement dtat dun neurone du
rseau est effectu par tirage au sort avec des probabilits proportionnelles au
facteur de Boltzmann exp (-H/T). La variation de la fonction dnergie H

HAMMOUCH Ahmed

88

correspondant un changement dtat dun neurone ni de Vi(t) Vi(t+1) est,


comme on la vu plus haut (Cf. IX.5.2) :

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

Table IX.3 : Facteur de Boltzmann pour les quatre transitions possibles


Cherchons maintenant les probabilits de transition dun neurone ni. Supposons
qu linstant t le neurone soit dans un tat donn Vi(t). En utilisant la table IX.3, le
facteur de proportionnalit des probabilits de transition peut tre exprim de la
manire suivante :
(IX.9)

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

on obtient la rgle stochastique suivante :


(IX.10)

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

gnes existants. La mutation enfin reprsente la part cratrice indispensable capable


de produire de nouveau gnes.
Sinspirant de la thorie de lvolution, les premiers travaux sur les algorithmes
gntiques ont commenc dans les annes cinquante lorsque plusieurs biologistes
ont simul des structures biologiques sur ordinateur. Entre 1960 et 1970, Holland,
sur la base des travaux prcdents, dveloppa ensuite les principes fondamentaux
des algorithmes gntiques dans le cadre de loptimisation mathmatique.
La publication en 1975 du livre de Holland "Adaptation in natural and artificial
systems" marque la vritable date dapparition des AGs. Dans sa monographie,
Holland prsente une thorie dvolution et dadaptation des systmes naturels et
montre comment cette thorie permet den dduire des systmes artificiels (des
logiciels) adaptatifs. Les travaux de Holland ont t poursuivis par ses lves.
Ainsi, DeJong a tudi lutilisation des AGs pour loptimisation de fonctions
numriques. Au dbut des 1980, les AGs ont t progressivement tudis par
diffrentes quipes de recherche pour rsoudre une vaste gamme de problmes dans
divers domaines.
Parmi les problmes les plus connus, auxquels ils ont t appliqus avec succs, on
peut citer : le problme du voyageur de commerce, le problme de lemploi de
temps, le problme dordonnancement (o il sagit de grer le droulement des
squences doprations tenant compte des contraintes logiques du fonctionnement
de latelier et en optimisant le rendement),

III. Les algorithmes gntiques (AGs)


III.1. Principe de base dun algorithme gntique
Un AG est un algorithme itratif de recherche globale dont le but est doptimiser
une fonction dfinie par lutilisateur appele fonction dadaptation (fonction cot
ou fonction objectif ou fonction dadquation). Pour atteindre cet objectif,
lalgorithme travaille en parallle sur une population de point candidats, appels
individus ou chromosomes, distribus sur tout lespace de recherche. Chaque
chromosome est constitu dun ensemble dlments appels caractristiques ou
gnes, pouvant prendre plusieurs valeurs (allles) appartenant un alphabet non
ncessairement numrique.

HAMMOUCH Ahmed

94

Dans lalgorithme gntique de base, les allles possibles sont 0 et 1, et un


chromosome est donc une chane binaire. Lobjectif est donc de chercher la
combinaison optimale de ces lments qui donne lieu au maximum dadaptation. A
chaque itration, appele gnration, est cre une nouvelle population avec
souvent le mme nombre dindividus. Cette nouvelle population contient
gnralement des individus mieux adapts lenvironnement au fur et mesure des
gnrations, ainsi les individus tendent se ressembler de plus en plus.
Plus prcisment, tant donn lespace de recherche E={0,1}l, on cherche
optimiser une fonction f (fitness) dfinie sur E valeurs dans R+.
Un lment de E, appel individu ou chromosome, est ici une chane binaire. Une
population P est ensemble de N individus. Lopration de base dun AG consiste
passer de la population courante P(t) la population suivante P(t+1), cette
opration de base constitue une gnration.
Le principe de base dun AG peut tre dcrit par le pseudocode suivant :

{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)

Jusqu (critre darrt valid) }


III.2. Etapes fondamentales dun AG
III.2.1. Codage des solutions
Dans sa version canonique (classique), un AG utilise le codage binaire pur. En
effet, par projection du sous espace propre de chaque variable (phnotype), sur un
sous espace entier convenablement choisi, on associe chaque variable une valeur
entire. Ensuite, on fait correspondre chaque entier son code binaire (gnotype).

HAMMOUCH Ahmed

95

L'ensemble des codes binaires, associs chaque variable, constitue le


chromosome.
III.2.2. Initialisation
Dans le cas le plus frquent, o lutilisateur ne dispose pas de connaissances
particulires relatives la fonction f, la population P(t=0) est initialise
alatoirement de manire la plus uniforme possible. Cependant, cette tape du
processus peut prendre en compte certains types de connaissances a priori de
lutilisateur. Il est possible dinclure dans la population initiale certains individus.
Cest le cas par exemple, lorsquon dispose dj de solutions quon dsire
amliorer.
III.2.3. Evaluation
Cette phase consiste calculer les qualits des diffrents chromosomes composant
une population. Le calcul de qualit d'un chromosome s'effectue en deux tapes.
Dans un premier temps, on recre le phnotype par dcodage du gnotype, et on
applique la fitness de l'individu gnr. L'valuation d'une population consiste en
fait prparer les chromosomes pour la phase de reproduction.
III.2.4. Oprateurs dvolution
Le but de ces oprateurs est de modifier la composition gntique des individus
entre deux gnrations afin de parcourir l'espace de recherche. Les oprateurs de
base que sont la slection, le croisement et la mutation ont, en fait, une double
mission. Ils permettent au processus gntique dexploiter les zones prometteuses
dcouvertes, cest--dire le voisinage des individus constituant les optima et,
dexplorer d'autre part les zones encore inconnues.
Les caractristiques des AGs leur permettent dexploiter les connaissances
accumules durant la recherche en vue dtablir un quilibre entre le besoin
dexplorer de nouvelles rgions de lespace de recherche et la possibilit de
focaliser la recherche lintrieure des zones de hautes performances.
Parmi ces trois tapes majeures de lvolution, la slection est oriente vers
lexploitation seule. Le croisement et la mutation permettent galement
lexploitation et lexploration avec la diffrence suivante : les enfants obtenus par
croisement sont en gnral loin des parents, mais appartiennent une rgion rduite
de lespace de recherche (qui dpend uniquement des parents). Par opposition, les

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

Figure III.1 : Roue de loterie biaise

HAMMOUCH Ahmed

97

On dfinit ensuite pour chaque individu vi une probabilit de slection ps(vi),


reprsentant le taux de surface qui lui sera rserv sur la roue, soit :
(III.1)

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

probabilit pc, appele taux de croisement, est gnralement valeurs dans


lintervalle [0,6 - 1]. Le croisement labore deux enfants x et y partir des parents
v1 et v2. Il existe plusieurs faons de raliser un croisement; on peut citer par
exemple :
-Croisement un point : Cest le croisement le plus simple, il s'effectue de
la manire suivante (figure III.2) :
Tirer un indice k dans [1, l-1], l tant la longueur des chanes codant les
individus, pour marquer le point de croisement.
Pour chaque paire de chromosomes, tirer un nombre rd au hasard dans [0, 1].
Si rd pc il y a croisement, sinon pas de croisement.
1

Figure III.2 : Exemple de croisement simple 1 point


-Croisement deux points : DeJong (1975) analyse l'effet du crossover
multipoint, et conclut que le croisement 2 points donne les meilleurs
rsultats, tandis quaugmenter le nombre de points de coupure dgrade les
performances des individus. Syswerda (1989) et Eshelaman (1989)
confirment galement ce rsultat. La figure suivante montre un croisement
2 points utilisant deux points de coupures choisis alatoirement. Les
chromosomes changent le segment entre les deux points de coupures (figure
III.3).
1

Figure III.3 : Exemple de croisement 2 points


- Croisement uniforme : Cet oprateur a reu une attention particulire,
depuis qu'il a t tudi en dtail par Ackley et popularis par Syswerda
(1989). Chaque gne d'un enfant est cre en copiant le gne correspondant
partir de l'un ou l'autre des parents choisi en utilisant un masque de crossover
gnr alatoirement. Quand le masque est 1, le gne est copi partir du
premier parent, et quand il est zro, il est copi partir du second parent.
Un nouveau masque est gnr pour chaque paire d'individus.

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

o Reprsente la taille de la population et l la longueur de la reprsentation


gntique des individus.
Cette expression est similaire celle dtermine thoriquement par Hesser et
Mnner (1991) pour une variante spciale d'AG :
(III.3)

pm ( t ) =

exp( t / 2)

HAMMOUCH Ahmed

100

qui introduit en plus la dpendance en fonction du temps. , et sont des


constantes.
Difficults
La mutation doit permettre dobtenir tout individu de lespace de recherche, mais il
est souhaitable, notamment pour les dernires tapes de la convergence, dobtenir
en moyenne un enfant proche du parent. Cette condition ne prsente pas de
difficult dans le cas binaire.
III.2.5. Stratgies de remplacement
Dernire tape durant une gnration consiste construire la population de la
gnration suivante partir des parents et des enfants de la gnration courante.
Dans l'AGC, il est engendr autant denfants qu'il y a de parents et tous les enfants
remplacent leurs parents chaque gnration. Cette stratgie est dite
"gnrationnelle". DeJong (1975) a propos de ne pas remplacer l'ensemble de la
population chaque gnration et a introduit pour cela la notion d' cart (ou foss)
des gnrations : generation gap, un nombre qui indique la proportion de parents
qui sont remplacs par des enfants.
Du moment que l'on conserve certains individus mais pas tous, la question du choix
des individus conservs apparat. Ce choix est gnralement bas sur la
performance des individus. Certaines stratgies prennent les meilleurs de manire
dterministe. D'autres utilisent la performance comme biais pour la slection. La
slection des survivants tant stochastique, le meilleur individu d'une gnration
peut ne pas survivre. Aussi, la notion de stratgie litiste (resp. k-litiste) a t
galement introduite pour tre certain que le meilleur individu (resp. les k meilleurs
individus) d'une population soit gard d'une gnration la suivante. Notons que
dans les stratgies de reproduction stable, les descendants remplacent gnralement
les plus mauvais individus de la population.
La stratgie litiste
Le modle litiste, introduit par DeJong, vite la perte des meilleurs individus. En
effet, le meilleur chromosome de la gnration courante est conserv lors de
litration suivante. Limplmentation du modle litiste seffectue de la manire
suivante :

HAMMOUCH Ahmed

101

Sauvegarder le meilleur chromosome (soit C0) de la population initiale.


Appliquer les oprateurs gntiques pour crer la gnration suivante (G1).
Comparer les valeurs de fitness du plus mauvais chromosome (C1) de G1 et la
valeur fitness de C0.
Si f(C0) < f(C1) (minimisation) alors remplacer C0 par C1.
Trouver la meilleure chane de G1 (C2), et remplacer C1 par C2.
Ces tapes sont rptes pour chaque gnration.
III.2.6. Critre darrt
Dterminer larrt dun processus gntique est lune des difficults majeurs. En
effet, si lon excepte le cas des problmes artificiels, on ne sait jamais si lon a
trouv loptimum. Dans la pratique, lutilisateur dclare un nombre de gnrations
maximum, compter du dbut de lvolution ou de la dernire amlioration
trouve. La recherche peut galement tre stoppe lorsque tous les individus dune
mme population sont des copies dun mme individu (ou de quelques individus).
On dit alors quil ya perte de diversit gntique. Dans la pratique, la population
ne se diversifie jamais lorsquelle atteint cet tat ; si alors les solutions optimales ne
figurent pas dans la population, il y a convergence prmature.
III.3. Illustration
On dsire maximiser une fonction de k variables, f(x1,, xk) : RkR. Supposons
que chaque variable xi appartient un domaine Di=[ai, bi] R et f(x1,, xk) >0
xi Di. On souhaite aussi avoir une prcision de 4 chiffres dcimaux. Le domaine
Di doit donc tre subdivis en (bi-ai).104 intervalles gaux. Notons mi le plus petit
entier tel que (bi-ai).1042mi-1. Alors, la formule suivante donne la valeur dune
chane en fonction de son code binaire :
(III.4)

(b a )
i
v = a + decimal (code _ binaire) i
i
i
mi
2

o la fonction decimal retourne la valeur dcimale dune chane binaire. Chaque


k

chromosome sera donc reprsent par une chane binaire de longueur : m = mi ;


i =1

les premiers m1 bits coderont la variable x1 dans lintervalle [a1, b1], etc.

HAMMOUCH Ahmed

102

La premire tape, de lalgorithme gntique, consiste gnrer alatoirement la


population en initialisant chaque variable dans on domaine de dfinition. Les
individus sont ensuite soumis aux diffrents oprateurs gntiques (slection,
croisement et mutation). Le processus est arrt aprs un nombre fixe ditrations.
La slection par roue de loterie est reprsente par le pseudocode suivant :
Calculer la valeur de fitness fi(vi) de chaque individu vi (i=1, , N).
N

Evaluer la valeur de fitness totale f = fi (vi )


i =1

f (v )
Calculer la probabilit de slection pour chaque chromosome pi = i i
f

Calculer la probabilit cumulative pour chaque chromosome vi qi = fi (vi )


j =1

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

Ranger les chromosomes par paire


Pour chaque paire, tirer un nombre pos dans [1, ,l-1] ;l tant le nombre de bits
codant le chromosome, pos indique le point de croisement
Deux chromosomes parents (a1 a1apos apos+1al) et (b1 b1bpos bpos+1bl) seront
remplacs leurs enfants (a1 a1apos apos+1al) et (b1 b1bpos bpos+1bl).
La mutation est ensuite effectue sur la base de bit par bit avec une probabilit pm.
Pour chaque chromosome de la population courante et pour chaque bit de
chromosome ;
On gnre un nombre alatoire r dans lintervalle [0, 1]
Si r<pm, le bit est mut (0 1 et inversement)
La gnration t+1 est ainsi cre par remplacement des parents par les enfants
gnrs. Le reste de lvolution est un processus cyclique des tapes dcrites cidessus.
Soit la fonction deux variables f(x,y)=x+y quon souhaite maximiser, 0.9x1.8
et 2.1y2.4. Pour avoir une prcision de deux dcimales par exemple, le domaine
de dfinition de x sera subdivis en 0.9*100 intervalles gaux, et le domaine de y
sera subdivis en 0.3*100 intervalles.
Sachant que 26<90 27 et 24<30 25, la longueur totale dun chromosome (vecteur
solution) est alors l=7+5=12 bits. Les premiers 7 bits codent la variable x et les 5
derniers la variable y.
Dans la chane (101011100110), 1010111 reprsente la variable x=0,9+decimal
(1010111)*0,9/27-1=1,52. 00110 reprsente la variable y=2,1+decimal
(00110)*0,3/25-1=2,16. Ainsi, le chromosome (101011100110) reprsente le
vecteur (1,52, 2,16).
Supposons quaprs initialisation, on a la population suivante :
V1
V2
V3
V4

100110110011
110010110010
010011110010
100010110110

HAMMOUCH Ahmed

104

V5
V6
V7
V8
V9
V10

000110100111
100010111110
001111110010
001010110010
001000101100
111110010110
10

La fitness totale est donne par : f = f (vl ) = 35,729


l =1

On tourne alors la roue 10 fois, on obtient la squence de nombres suivante :


0.5123
0.9651
0.4521
0.9700
0.2261
0.3827
0.8851
0.0980
0.7897
0.6741
Le premier nombre r=0,5123 est suprieur q5 et infrieur q6, le chromosome V6
est donc slectionn, le second nombre 0.9651 est suprieur q9 est infrieur q10,
le chromosome V10 est slectionn, etc. Les diffrentes caractristiques de la
population sont alors :
Chromosomes
100110110011
110010110010
010011110010
100010110110
000110110111
100010111110
001111110010
001010110010
001000101100

(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

111110010100 (1.778, 2.294)

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

Il est intressant dexaminer les rsultats de cette premire itration, principalement


la valeur de la fonction fitness totale f=36,346>35,729 (fitness totale initiale), le
meilleur individu (V4, f(V4)=4,092) est mieux adapt que le meilleure individu de
la population initiale (V10, f(V10)=4,072).
Ce processus est rpt pendant un nombre de cycle prdfini (nombre de
gnration).
III.4. Problmes associs aux AGs
Les AGs sont une mthode doptimisation dont la plus grande qualit est dtre
applicable une vaste gamme de problmes. Lefficacit des AGs dpend
largement de la reprsentation choisie et peut tre grandement amliore par la
conception doprateurs dvolution, utilisant les connaissances priori de
lutilisateur et les proprits de lespace de reprsentation.

HAMMOUCH Ahmed

107

En revanche, les AGs de base ont deux inconvnients majeurs : La convergence


prmature ou lente. Toutefois, ces deux inconvnients peuvent tre contourns
moyennant certaines prcautions.
III.4.1. Convergence prmature
Ce problme, trs classique des AGs, survient cause de la dominance de la
population par des individus possdant une assez bonne adaptation. Dans ces
conditions, le croisement entre individus presque identiques ne favorise pas
lexploitation. Par suite, la population convergera probablement vers un optimum
local. Seule la mutation permet dexplorer de nouvelles solutions, et dviter ainsi
cette convergence prmature. Il existe galement dautres solutions ce problme,
en particulier lutilisation de fonctions de pnalisation pour arrter la dominance
des individus forts.
III.4.2. Convergence lente
Il arrive quaprs plusieurs itrations, lcart entre ladaptation moyenne et
ladaptation du meilleur individu soit faible. Par suite, lvolution stagnera et
lalgorithme ne favorise plus les meilleurs individus.
Pour pallier ce problme, il est conseill daugmenter la taille de la population.
Une autre stratgie, appele stratgie sans doublons, peut tre utilise cet effet.
Elle consiste en llimination des individus dupliqus dans une mme population.
Une technique de rajustement (changement dchelle) de la fonction dadaptation
fitness scaling, est galement trs utilise pour surmonter ces problmes. Cette
mthode consiste dfinir une fonction dadaptation transforme f, partir de
ladaptation brute f. Parmi les types de transformations utilises, on peut citer la
transformation linaire : f =a*f +b. Les coefficients a et b sont choisis de manire
ce que :
- La moyenne de ladaptation brute (fmoy) soit gale la moyenne de ladaptation
transforme (fmoy).
- Ladaptation transforme maximale soit un multiple dtermin de ladaptation
transforme moyenne : fmax= C * fmoy, la constante C, gnralement gale 2,
reprsente le nombre maximal de copie du meilleur individu de la population.

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)

Figure 1 : rseau avec un seul neurone deux entres e1 et e2


La fonction dactivation des neurones est un chelon et les entres sont en binaires.
Dterminer la fonction raliser par chaque rseau.
2. Dterminer les poids dun rseau un neurone selon la rgle de Hebb pour celuici ralise la fonction OU logique.
3. Un neurone linaire seuil deux entres ralise une partition des vecteurs
dentres qui lui sont soumis en entre en deux classes.

HAMMOUCH Ahmed

109

3.a. Donner lquation de lhyperplan sparant les deux classes.


3.b. Expliquer pourquoi en pratique on remplace le seuil du neurone par une
connexion de poids - reli une constante gale 1.
4. On considre un RN monocouche. Ses neurones ont une fonction dactivation
sigmode :

y =

f ( p ) =

k ( p )

+ 1

Dterminer la rgle dapprentissage selon le principe de Widrow -Hoff.


5. On considre les fonctions sigmodes suivantes :

f1 ( x ) =

e
e

f
et
+ 1

f3 (x) =

(x) =

e
e

+ 1

+ 1

5.a. Calculer la driv f1(t) de f1(t) en fonction de f1(t) et , et f2(t) en fonction de


f2(t) et , et f3(t) en fonction de f3(t) et .
5.b. Que devient f1(t) si =1, f2(t) si =2 et f3(t) si =-1 ?
5.c. Donner les allures de ces fonctions et de leur driv.
5.d. Expliquer pourquoi si la dynamique des entres est trop leve dans un RN
multicouches utilisant ces fonctions, la convergence sera trop lente.
5.e. Proposer une solution alors.
6. On considre un rseau de Hopfield avec deux neurones. On souhaite mmoriser
dans ce rseau deux tats : E1=(-1, +1) et E2=(+1, -1). Dterminer la matrice W des
poids des connexions.

HAMMOUCH Ahmed

110

dxx yxvx u|u|zt{|x


-

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.

Vous aimerez peut-être aussi