Vous êtes sur la page 1sur 54

Rseaux de neurones

Objectifs de ce module
Aborder une approche
radicalement diffrente des
autres modes de programmation.
Comprendre les principaux
concepts de simulation
informatique d'un neurone.
Matriser deux algorithmes
majeurs d' "apprentissage".
Evaluer les performances et les
limites d'un rseau neuronal.
Structurer et tester des "mini-
rseaux" (ex: OCR).
Les rseaux neuronaux
Plan du module

Notions de base

Le perceptron

Rseaux multicouches rtro-propagation de lerreur
Voici les parties que nous allons aborder:
Les rseaux neuronaux
Plan de la partie
Historique et dveloppements
Modlisation du neurone
Types dapprentissage

Voici les chapitres que nous allons aborder:
Notions de base
Approche algorithmique (programmation complte)

Cration des moteurs dinfrence (programme qui
raisonne ; rgles SI..ALORS.. ; systme expert)

Approche connexionniste : le rseau sorganise par
apprentissage (pas de programmation)
Approches informatiques pour rsoudre un problme :
Historique et dveloppements
Notions de base
Calcul non-algorithmique
Information et mmoire distribue dans le rseau
Architecture massivement parallle (processeurs
lmentaires interconnects)
Apprentissage par entranement sur des exemples
Inspir du fonctionnement du cerveau
Caractristiques de lapproche connexionniste
(rseaux neuronaux) :
Historique et dveloppements
Notions de base
Niveaux de modlisation :
CIRCUITS NEURONAUX
MECANISMES MENTAUX
COMPORTEMENT INTELLIGENT
Historique et dveloppements
Notions de base
1943 J.Mc Culloch et W.Pitts tablissent le "modle logique" du
neurone qui ouvre la voie des modles techniques.
1949 D.Hebb labore une thorie formelle de lapprentissage
biologique par modifications des connexions neuronales.
1957 F.Rosenblatt ralise le Perceptron, le premier modle technique
bas sur la modification des poids.
1960 B.Widrow ralise Adaline (Adaptive Linear Element), un rseau
adaptatif de type perceptron.
1969 M.Minsky et S.Papert mettent des critiques et dmontrent les
limites des modles neuronaux de type perceptron.
La recherche s'arrte durant un peu plus d'une dizaine d'annes.
1982 J.Hopfield (physicien) propose une nouvelle approche des
rseaux neuronaux base sur lanalogie avec les milieux grand
nombre de particules. Cela relance lintrt pour les rseaux
neuronaux
depuis 1984 : dveloppement croissant du domaine connexionniste
aussi bien en IA quen informatique.
Historique
Historique et dveloppements
Notions de base
Applications
Historique et dveloppements
Notions de base
Traitement des images
Identification des signatures
Reconnaissance des caractres (dactylos ou manuscrits)
Reconnaissance de la parole
Reconnaissance de signaux acoustiques (bruits sous-
marins, )
Extraction dun signal du bruit
Contrle de systmes asservis non-linaires (non
modlisables)
Robotique (apprentissage de tches)
Aide la dcision (domaine mdical, bancaire,
management, )
Dans un cerveau, il y a
10^12 neurones avec 10^3
10^4 connexions par
neurone.
Dendrite : rcepteur des
messages
Corps : gnre le potentiel
daction (la rponse)
Axone : transmet le signal
aux cellules suivantes
Synapse : jonction axone -
dendrite (plus ou moins
passante)
Neurone : lment autonome
dpourvu dintelligence
Modlisation du neurone
Notions de base
Le neurone rel
La modlisation du systme nerveux biologique repose
sur la correspondance suivante
Systme nerveux Systme de calcul
neuronal
Neurone Processeur
Dendrite
Corps du neurone
Axone
Synapse
Fonction de combinaison
Fonction de transfert
Elment de sortie
Poids
Modlisation du neurone
Notions de base
p
La reprsentation graphique (conventionnelle) d'un
neurone formel modlis par Mc Culloch et Pitts.
Modlisation du neurone
Notions de base
f
E
1

E
2

E
3

E
4

E
n
S
w
1

w
2
w
3
w
4
w
n
Les entres "E" du
neurone proviennent soit
dautres lments
"processeurs", soit de
lenvironnement.
Les poids "W"
dterminent linfluence de
chaque entre.
La fonction de
combinaison "p" combine
les entres et les poids.
La fonction de transfert
calcule la sortie "S" du
neurone en fonction de la
combinaison en entre.
Les lments constitutifs du neurone artificiel
Modlisation du neurone
Notions de base
Fct
E
1

E
2

E
3

E
4

E
n
S
w
1

w
2
w
3
w
4
w
n
f
p
FONCTION
de
TRANSFERT
FONCTION
de
COMBINAISON
La Fonction de Combinaison calcule linfluence de
chaque entre en tenant compte de son poids. Elle
fait la somme des entres pondres :
Modlisation du neurone
Notions de base


p = W
i
E
i
W
i
:
Poids de la connexion
lentre i.
E
i
:
Signal de lentre i.
p
f
E
1

E
2

E
3

E
4

E
n
S
w
1

w
2
w
3
w
4
w
n
FONCTION
de
COMBINAISO
N
La Fonction de Transfert dtermine l'tat du neurone
(en sortie)
Modlisation du neurone
Notions de base

Calcul de la sortie :
S = f(p)

ou encore :
S = f( W
i
E
i
)
La fonction de transfert
"f" peut avoir plusieurs
formes.

p
f
E
1

E
2

E
3

E
4

E
n
S
w
1

w
2
w
3
w
4
w
n
FONCTION
de
TRANSFERT
Fonction en chelon.

Fonction linaire par morceaux.

Fonction drivable (sigmode).
La fonction f peut tre de la forme :
Modlisation du neurone
Notions de base
S = f(p)
Fonction de transfert en chelon :
SEUIL
Modlisation du neurone
Notions de base
+1
-1
p
S = f(p)
Fonction de transfert linaire par morceaux :
SEUIL
Modlisation du neurone
Notions de base
+1
-1
p
S = f(p)
Fonction de transfert drivable (sigmode) :
SEUIL
Modlisation du neurone
Notions de base
+1
-1
p
Apprentissage supervis: un systme instructeur corrige
les rponses ronnes.

Apprentissage non supervis: le systme neuronal
apprend tout seul en formant des classes dentres
rponses communes.
Le but des rseaux neuronaux est dapprendre rpondre
correctement diffrentes entres.
Moyen : modification des poids par apprentissage supervis, ou
non supervis.
Types dapprentissage
Notions de base
Association impose entre un
vecteur dentre (forme
multidimensionnelle) et un
vecteur de sortie (la rponse
dsire).

Lerreur est calcule chaque
essai afin de corriger les
poids.

Les poids sont modifis
jusqu lerreur minimale,
voire aucune erreur.
Apprentissage supervis (ex: OCR)
Types dapprentissage
Notions de base
a
RESEAU






La rponse attendue est le "a". Un seul et unique vecteur
de sortie doit tre activ.
Apprentissage supervis (ex: OCR)
f
a
b
c
d

z
Types dapprentissage
Notions de base
Pas dindication sur les erreurs.
Le rseau dtecte les caractristiques communes des
diffrentes entres.
Il tente ainsi de former des classes de faon
autonome.
Il apprend donner des rponses aux classes
Apprentissage non supervis
Types dapprentissage
Notions de base
Pause-rflexion sur cette 1
re
partie
Avez-vous des questions ?
Notions de base
Le perceptron
Les rseaux neuronaux
Plan de la partie
Les phases apprentissage-utilisation
Lalgorithme d'apprentissage
Apprentissage des fonctions
logiques
Les limites du perceptron
Voici les chapitres que nous allons aborder:
Le perceptron
Les phases apprentissage-utilisation
Le perceptron
Phase 1: APPRENTISSAGE, le concept du Perceptron est
bas sur un algorithme d'apprentissage dont l'objectif est de
corriger les poids de pondration des entres afin de fournir
une activit (en sortie) en adquation avec les lments
apprendre.

Phase 2: UTILISATION, une fois les exemples appris, chaque
neurone active ou non sa sortie (en correspondance avec le
domaine acquis), en fonction des lments appliqus en
entre.

Les phases apprentissage-utilisation
Le perceptron
APPRENTISSAGE
UTILISATION
du RESEAU
PHASE 1 PHASE 2



Toute utilisation du rseau doit tre prcde dune phase
dapprentissage durant laquelle on lui prsente des
exemples type.
p
Le perceptron est un
classificateur linaire
Il ralise une partition de son
espace dentre (E1,,En)
en deux, ou plusieurs
classes C1, , Cm.
sparables linairement
On considre deux classes :
C1 (S = +1)
C2 (S = -1)
f
E
1

E
2

E
3

E
4

E
n


-1
+1



S



-1
w
1

w
2
w
3
w
4
w
n
Seuil


Lalgorithme dapprentissage
Le perceptron
Classes et sparabilit linaire
Algorithme du perceptron (algorithme de principe)
1: INITIALISATION: W1 et W2:[-1;+1], SEUIL et PAS:[0;+1]
Base d'apprentissage: (E1;E2)-> "Sortie correcte"
ET logique:(+1;+1)->+1;(-1;+1)->-1;(-1;-1)->-1;(+1;-1)->-1
2: REPETER
3: POUR chaque exemple de la base:(E1;E2)-> "S_correcte"
4: Calcul de la sortie "S_calcule" pour chaque exemple:
4a: Fonction de combinaison:(sa sortie"p": potentiel)
"p" = (W1 x E1) + (W2 x E2) - SEUIL
4b: Fonction dactivation:
SI("p")>= 0 ALORS "S_calcule" = +1
SINON "S_calcule" = -1
5: SI la sortie "S_calcule" est diffrente de la sortie
"S_correcte" (ERREUR = "S_correcte" - "S_calcule")
ALORS Modification des poids:
5a: W1(t+1)= W1(t) + ( E1 x PAS x ERREUR )
5b: W2(t+1)= W2(t) + ( E2 x PAS x ERREUR )
6: Revenir 4 pour recalculer la sortie
7: TANTQUE une ERREUR subsiste revenir 4
Lalgorithme dapprentissage
Le perceptron

Dans le cas de la fonction ET la
sparation des deux classes se
fait par une ligne droite:
W1xE1 + W2xE2 - SEUIL = 0
Deux classes (deux rponses):
C1 (S = +1):
Pour les entres: (+1;+1)
C2 (S = -1):
Pour les entres:
{(-1;-1); (+1;-1); (-1;+1)}
Apprentissage des fonctions logiques
Le perceptron
Simulation de la fonction ET logique par apprentissage:
E1
E2

+
ET logique



Dans le cas de la fonction OU,
une droite permet toujours la
sparation des deux classes.

Pour deux classes :
C1 (S = +1):
{(+1;+1); (+1;-1);(-1;+1)}
C2 (S = -1):
(-1;-1)
Apprentissage des fonctions logiques
Le perceptron
OU logique
E1
E2

+
+
+
Simulation de la fonction OU logique par apprentissage:
Dans le cas de la fonction
OU-EXCLUSIF, la
sparation des deux
classes ne peut se faire par
une droite mais par une
courbe.
C1 (S = +1):
{(-1;+1); (+1;-1)}
C2 (S = -1):
{(+1;+1); (-1;-1)}
Les limites du perceptron : la fonction logique OU exclusif.
E1
E2
+
+
OU-Exc logique

Les limites du perceptron
Le perceptron
Le perceptron est un classificateur linaire.

Il ne peut traiter les problmes non linaires du type OU
EXCLUSIF, COMPARATEUR (et bien dautres).

La structuration d'un rseau neuronal (constitu de
plusieurs couches), et l'utilisation conjointe d'un
algorithme d'apprentissage appropri vont permettre de
pallier les limites identifies ici.
Les limites du perceptron
Le perceptron
Pause-rflexion sur cette 2
me
partie
Avez-vous des questions ?
Le perceptron
Rseaux multicouches
rtro-propagation de lerreur
Les rseaux neuronaux
Plan de la partie
Rseaux de neurones formels
Apprentissage dun rseau
multicouche
Lalgorithme dapprentissage



Voici les chapitres que nous allons aborder:
Rseaux multicouches rtro-propagation de lerreur
Rseau une couche de neurones















*Les entres des rseaux sont soit des sorties d'autres neurones, soit
des entres directes dans le rseau (par exemple des pixels).
fT
fT
fT
COUCHE UNIQUE*
Rseaux de neurones formels
Rseaux multicouches rtro-propagation de lerreur
f
f
f
f
f
COUCHE EN ENTREE*
COUCHE EN SORTIE
Rseaux de neurones formels
Rseaux multicouches rtro-propagation de lerreur
Rseau deux couches de neurones
















*Les entres des rseaux sont soit des sorties d'autres neurones, soit
des entres directes dans le rseau (par exemple des pixels).


Rseau avec une couche cache (3 couches de neurones).
















*Les entres des rseaux sont soit des sorties d'autres neurones, soit des entres
directes dans le rseau (par exemple des pixels).
f
f
f
f
f
COUCHE EN ENTREE*
COUCHE EN SORTIE
?
COUCHE
CACHEE
Rseaux de neurones formels
Rseaux multicouches rtro-propagation de lerreur


Principe de fonctionnement gnral.
f
f
f
f
f
COUCHE EN ENTREE
COUCHE EN SORTIE COUCHE
CACHEE
ACTIVATION
ACTIVATION
CORRECTION
de l'ERREUR CORRECTION
de l'ERREUR
E
R
R
E
U
R
f
Apprentissage dun rseau multicouche
Rseaux multicouches rtro-propagation de lerreur
f
Notations :
Apprentissage dun rseau multicouche
Rseaux multicouches rtro-propagation de lerreur
x1, x2, x3, , xk : les formes prsentes en entre.
xk : vecteur I lments.
X : matrice I K des K formes apprendre.
Chaque couche fournit un vecteur rponse :
hk : vecteur L lments, rponse de la couche cache la k
ime
forme.
ok : vecteur J lments, rponse de la couche de sortie la k
ime

forme.
tk : vecteur J lments, rponse dsire (thorique) de la couche de
sortie la k
ime
forme.
T : matrice J K des rponses dsires (thoriques).
W : matrice L I des poids de connexions entre les entres et la
couche cache (W l,i : connexion entre i - neurone l cach).
Z : matrice J L des poids de connexions entre la couche cache et la
couche de sortie (Z j,l : connexion neurone l cach - neurone j
sortie).
(
(
(
(

=
KI K K
I
I
x x x
x x x
x x x
X

2 1
2 22 21
1 12 11


Les synapses modifiables (et leur matrice W et Z).
x
ENTREES
I
o
COUCHE EN SORTIE
J neurones
h
COUCHE
L neurones
Apprentissage dun rseau multicouche
Rseaux multicouches rtro-propagation de lerreur
x
n
x
2
x
1
E
R
R
E
U
R
f
f
f
f
f
W Z
Principe d'activation non linaire.
Apprentissage dun rseau multicouche
Rseaux multicouches rtro-propagation de lerreur
Soit un neurone n (dune couche cache ou de sortie) et
son potentiel nomm a ; sa sortie o sera de la forme :


avec f : sa fonction de transfert (non linaire, drivable).
Exemples courants de fonction de transfert :
La fonction logistique (ou sigmode) :



) (
n n
a f o =
x
e
x f

+
=
1
1
) (
Reprsentation graphique des fonctions de transfert.
Apprentissage dun rseau multicouche
Rseaux multicouches rtro-propagation de lerreur

La fonction logistique (ou sigmode) :




et sa drive :
x
e
x f

+
=
1
1
) (
( )
| | ) ( 1 ) (
1 1
1
1
) (
2
x f x f
e
e
e
e
e
x f
x
x
x
x
x
=
+

+
=
+
=
'

Soit le vecteur xk lentre


(forme k).
La rponse de la cellule
cache est le vecteur :
La rponse des cellules de la
couche de sortie est le
vecteur :
Les matrices des poids, W et
Z, dterminent le
comportement du rseau.
Algorithme de rtro-propagation de l'erreur,
Etape 1 : Transmission du signal entre lentre et la sortie via la
couche cache
) (
k k
Zh f o =
Lalgorithme dapprentissage
Rseaux multicouches rtro-propagation de lerreur
) (
k k
Wx f h =
On compare la rponse donne (vecteur ok) la
rponse thorique (vecteur tk).
Erreur pour la kime forme :
Le signal derreur rsulte en pondrant lerreur ek par
ltat dactivation de chaque cellule (une activation
forte est plus nocive quune activation faible).
Algorithme de rtro-propagation de l'erreur,
Etape 2 : Calcul de lerreur en sortie
) (
k k k
o t e =
sortie de cellules des activation l' de intensit : ) (
matrices deux de Hadamar) (de produit :
) ( ) 1 ( ) (
,
k
k k k k k k k sortie
Zh f
o t o o e Zh f
'
-
- - = -
'
= o
Lalgorithme dapprentissage
Rseaux multicouches rtro-propagation de lerreur

La matrice des connexions Z est corrige par des
itrations successives.
Algorithme de rtro-propagation de l'erreur,
Etape 3 : Correction des poids des connexions "cache/sortie"
age) apprentiss d' pas (le positif rel nombre :
. .
, 1
q
o q Z Z h Z Z
t t
T
k k sortie t t
A + = + =
+
Lalgorithme dapprentissage
Rseaux multicouches rtro-propagation de lerreur

Le problme est destimer lerreur de l'activit
(inconnue) des cellules caches (pour une rponse
attendue et connue en sortie uniquement !)
Il ny a pas de rponse idale disponible.
On lestime partir :
du signal derreur :
de lactivation des cellules caches.
Algorithme de rtro-propagation de l'erreur,
Etape 4 : Calcul de lerreur en sortie des couches caches
k sortie,
o
Lalgorithme dapprentissage
Rseaux multicouches rtro-propagation de lerreur

Lerreur se propage en sens inverse
(back-propagation) travers les connexions Z.
Elle est pondre par lactivation des
cellules caches.
Le signal derreur :
Algorithme de rtro-propagation de l'erreur,
Etape 4 (suite) : Calcul de lerreur en sortie des couches caches
k sortie,
o
) (
k
Wx f
'
( ) ( ) ( )
k sortie
T
t k k k sortie
T
t k k cache
Z h h Z Wx f
, , ,
1 ) ( o o o - - = -
'
=
Lalgorithme dapprentissage
Rseaux multicouches rtro-propagation de lerreur

Calcul des poids des neurones d'entre :
Algorithme de rtro-propagation de l'erreur,
Etape 5 : Correction des poids des connexions "entre/cache"
W W x W W
t t
T
k k cache t t
A + = + =
+
. .
, 1
o q
Lalgorithme dapprentissage
Rseaux multicouches rtro-propagation de lerreur
Pause-rflexion sur cette 3
me
partie
Avez-vous des questions ?
Fonction Transfert :
en chelon, ou
linaire par morceaux,
ou drivable

Perceptron :
principe de
sparabilit
linaire


NEURONE
=
Combinaison
+
Transfert

Rtro-
propagation de
l'erreur :
estimation de
l'erreur en
couches
caches
Rsum du module
Fonction
Combinaison :

Wi Ei
Les rseaux neuronaux
Pour aller plus loin
Publications
Rseaux
neuronaux
Une introduction
(modle JAVA)
J-P RENNARD
(Vuibert) 2006

Les rseaux de
neurones
Herv ABDI
(PUG) 1994
Si vous voulez approfondir vos connaissances:
Les rseaux neuronaux
Rseaux de
neurones
Grard Dreyfus,
Manuel Samuelides,
Jean-Marc Martinez,
Mirta B. Gordon,
Fouad Badran,
Sylvie Thiria,
Laurent Hrault
(Eyrolles) 2004