Vous êtes sur la page 1sur 61

Réseaux de Neurones Artificiels

Roukhe Ahmed
A.U. 2019-2020 Faculté des Sciences
Département de Physique Meknès
Réseaux de Neurones Artificiels

Introduction
Fondements Biologiques

Définition & réseaux de neurones

Contexte Scientifique

Historique
Fondements Biologiques
Structure des neurones

Diamètre de la cellule : 0.01 – 0.05 mm,


Soma (corps cellulaire) Formes variables (gén.
Sphériques) 20 m de diamètre.
Contient le noyau. Entourée d’une membrane
de 5 nm d’ép.
Sens des informations

Axone: unique cellules nerveuses,


Diamètre: 1-25 m (humain)
Longueur: 1mm – 1m
Connexion vers les autres neurones (synapses)
permet la transmission d’information.
Dendrites: reçoivent les signaux des autres
neurones.chacune couverte de centaines de
synapses.
Fondements Biologiques
Fonctionnement des neurones
L’information traitée par le neurone chemine ensuite le long de l’axone (unique) pour
être transmise aux autres neurones. La transmission entre deux neurones n’est pas
directe. En fait, il existe un espace intercellulaire de quelques dizaines d’Angstroms
(10-9 m) entre l’axone du neurone afférent et les dendrites. La jonction entre deux
neurones est appelée la synapse
L’influx nerveux est assimilable à un signal électrique se propageant comme ceci :

 Les dendrites reçoivent l’influx nerveux d ’autres neurones.


 Le neurone évalue l’ensemble de la stimulation reçue. Si elle est suffisante, il est
excité : il transmet un signal (0/1) le long de l ’axone.
 L’excitation est propagée jusqu’aux autres neurones qui y sont connectés via les
synapses.
Poids synaptique (Contact : émission-réception ) , modulation de l'information
transmise vers le soma.
Quelques chiffres ...

• nn: nombre de neurones dans le cerveau: ~ 1011 (100 000 000 000)
•nc: nombre de connexions par neurone: ~ 104 à 105
•tc: temps de cycle (switching time): ~ 10-3 seconde
•tm: temps moyen d'une activité cognitive: ~ 0.1 seconde
(ex. reconnaissance de visages)
tc*100=0.1 seconde
Il n'y a donc de la place que pour 100 cycles de traitement,
ce qui est insuffisant pour une activité complexe !!!
Le cerveau doit donc effectuer des opérations en parallèle !!!
Caractéristiques du système nerveux

• Robuste et tolérant aux erreurs et aux "pannes".

• Flexible et doté de capacités d'apprentissage, pas besoin d'être


explicitement "programmé" (plasticité synaptique).

• Capable de traiter de l'information partielle (floue), incertaine


(probabiliste) ou incomplète.

• Très massivement parallèle.


Définition
réseaux de neurones

 Le terme "réseaux de neurones" peut prendre des


significations différentes:
• réseaux de neurones artificiels,
• modèles connexionnistes,
• neurosciences calculatoires,
• modélisation neuronale.
Réseaux de Neurones
Les réseaux de neurones artificiels sont des réseaux fortement connectés de processeurs
élémentaires fonctionnant en parallèle.
Chaque processeur élémentaire (neurone artificiel)
 Calcule une sortie unique sur la base des informations qu’il reçoit.
 Calculs élémentaires et parallèles
 Données/Informations distribuées dans le réseau
Inspiration naturelle : analogie avec le cerveau
Principe :
– Graphe orienté : interconnexion éléments simples (les neurones)
– Échange d'information via les connexions
– Calcul distribué et coopératif
Réseaux de Neurones (suite)

 Caractéristiques :
• architecture
 type d'interconnexion
 choix des fonctions de transferts
• mode d'apprentissage
– comment estimer (=apprendre) les poids

 Utilisation :
• système de décision

• approximation de fonctions

• résolution de problèmes

• mémorisation et compression
Réseau de Neurones (suite)

 Outil de représentation des connaissances :

– représentation distribuée : chaque neurone "participe"

 Avantages :

– Tolérance par rapport aux fautes (élimination d'un neurone...)

– Apprentissage automatique des poids

– Capacité de généralisation

 Inconvénients :

– Représentation complexe

– Paramètres difficiles à interpréter physiquement (boite noire)


Contexte Scientifique

• Penser comme un humain = science cognitive

• Agir comme un humain = test de Turing

• Penser rationnellement = approche logique

• Agir rationnellement = agir pour atteindre un objectif

Neuromimétisme et sciences de la cognition :

comprendre et simuler le fonctionnement du cerveau

reproduire les phénomènes cognitifs (I.A.)


Contexte Scientifique
Intelligence Artificiel :
• IA est la reproduction des méthodes ou des résultats du raisonnement ou de
l’intuition humains
• IA est l’étude des facultés mentales par des méthodes calculatoires et informatiques
• Utiliser des modèles calculatoires pour simuler un comportement Intelligent
Intelligence computationnelle :
• une intelligence basée sur le calcul numérique opposée à l ’intelligence artificielle
(calcul symbolique) réseau de neurones; logique floue; algorithmes génétiques; ...
• IA est l'art de créer des machines qui réalisent des fonctions exigeant de
l'intelligence lorsqu'elles sont effectuées par des humains
• Méthodologie: soit une tâche intellectuelle dans laquelle l'homme est meilleur et la
faire réaliser par un ordinateur
Contexte Scientifique

les neurones. Ils sont idéalisés en neurones logiques, car ne


connaissent que les réponses binaires (0 ou 1). Ce qui à l'époque
était neurologiquement correct. Chaque neurone est connecté à
d'autres neurones,
les connexions pouvant être soient inhibitrices, soient excitatrices.
Périodiquement, le neurone calcule son activation, si l'activation
est supérieure à un certain seuil, le neurone est actif sinon il est
passif.
 Les ordinateurs à codage binaire (Von Neumann)
 L ’intelligence artificielle (calcul symbolique)
 Les réseaux de neurones
Historique la préhistoire
- 1890 : W. James, célèbre psychologue américain introduit le concept de mémoire
associative, et propose ce qui deviendra une loi de fonctionnement pour
l’apprentissage sur les réseaux de neurones connue plus tard sous le nom de loi de
Hebb.
- 1943: McCulloch & Pitts, on fait remonter les travaux sur les réseaux de neurones
pour essaient de comprendre les propriétés du système nerveux à partir de ses
constituants élémentaires :
- 1949: Donal Hebb, psychologue canadien, tentait d'expliquer les effets
d'apprentissage, de mémoire et de conditionnement (Organisation of behavior) à
partir d'un groupe de cellules. Pour expliquer les effets d'apprentissage en fonction
de l'expérience, il propose que les cellules apprennent à modifier l'intensité des
connexions qui les relient en fonction de leur activité simultanée. C'est la ``loi de
Hebb''
Historique la préhistoire
- 1957 : F. Rosenblatt développe le modèle du Perceptron. Il construit le
premier neuroordinateur basé sur ce modèle et l’applique au domaine de la
reconnaissance de formes.
- 1960 : B. Widrow, un automaticien, développe le modèle Adaline (Adaptative
Linear Element). Dans sa structure, le modèle ressemble au Perceptron,
cependant la loi d’apprentissage est différente. Celle-ci est à l’origine de
l’algorithme de rétropropagation de gradient très utilisé aujourd’hui avec les
Perceptrons multicouches.
- 1969 : M. Minsky et S. Papert publient un ouvrage qui met en évidence les
limitations théoriques du perceptron. Concernant l’impossibilité de traiter par
ce modèle des problèmes non linéaires.
Historique la préhistoire
- 1967-1982 : Toutes les recherches ne sont, bien sûr, pas interrompues. Elles
se poursuivent, mais limité.
- 1982 : J. J. Hopfield est un physicien reconnu à qui l’on doit le renouveau
d’intérêt pour les réseaux de neurones artificiels. J. J. Hopfield fixe
préalablement le comportement à atteindre pour son modèle et construit à
partir de là, la structure et la loi d’apprentissage correspondant au résultat
escompté. Ce modèle est aujourd’hui encore très utilisé pour des problèmes
d'optimisation.
- 1983 : La Machine de Boltzmann est le premier modèle connu apte à traiter de
manière satisfaisante les limitations recensées dans le cas du perceptron. Mais
l’utilisation pratique s’avère difficile, la convergence de l’algorithme étant
extrêmement.
Historique les premiers succès

- 1985 : La rétropropagation de gradient. C’est un algorithme


d‘apprentissage adapté aux réseaux de neurones multicouches. Sa
découverte réalisée par trois groupes de chercheurs indépendants. Dès
cette découverte, nous avons la possibilité de réaliser une fonction non
linéaire d’entrée/sortie sur un réseau en décomposant cette fonction en
une suite d’étapes linéairements séparables.
- 1986 : Rumelhart & McClelland Rétropropagation
nouvelles architectures de Réseaux de Neurones
Domaines d’application
 Classification :
 répartir en plusieurs classes des objets
 données quantitatives  informations qualitatives
 reconnaissance des formes
 Recherche Opérationnelle
 résoudre des problèmes dont on ne connaît pas la solution
 Mémoire Associative
 restituer une donnée à partir d’informations incomplètes et/ou bruitées.
 Reconnaissance de formes :
 Détection de visages dans des fonds complexes
 Reconnaissance de caractères ,Reconnaissance de la parole
 Contrôle des processus industriels :
 Diagnostic des systèmes industriels
 Diagnostic en médecine
Les modèles Mathématiques

 Le neurone de McCulloch & Pitts

 Le neurone formel

 Architecture générale d ’un RNA

 Structure d ’Interconnexion
Les modèles mathématiques

Les réseaux de neurones biologiques réalisent facilement un certain


nombre d'applications telles que la reconnaissance de formes, le traitement du
signal, l'apprentissage par l'exemple, la mémorisation, la généralisation. Ces
applications sont pourtant, malgré tous les efforts déployés en algorithmique et en
intelligence artificielle, à la limite des possibilités actuelles.

C'est à partir de l'hypothèse que le comportement intelligent émerge de la structure


et du comportement des éléments de base du cerveau que les réseaux de neurones
artificiels se sont développés. Les réseaux de neurones artificiels sont des modèles,
à ce titre ils peuvent être décrit par leurs composants, leurs variables descriptives et
les interactions des composants.
Neurone formel de McCulloch & Pitts
Le Neurone de McCulloch & Pitts

La figure 1 montre la structure d'un neurone artificiel. Chaque neurone


artificiel est un processeur élémentaire. Il reçoit un nombre variable
d'entrées en provenance de neurones amonts. A chacune de ces entrées
est associée un poids w abréviation de weight (poids en anglais)
représentatif de la force de la connexion. Chaque processeur élémentaire
est doté d'une sortie unique, qui se ramifie ensuite pour alimenter un
nombre variable de neurones avals. A chaque connexion est associée un
poids.
1 U. biais

X U. entrée 0
La figure 1
U. Entrée
X
Le Neurone Formel

3 éléments de base:
 un ensemble de synapses caractérisées par un poids wkj

– wkj > 0 ⇒ la synapse est excitatrice,

– wkj < 0 ⇒ la synapse est inhibitrice,

 un additionneur (ou unité de sommation) pour sommer les signaux d'entrée,


 une fonction d'activation pour limiter l'amplitude de la valeur de sortie.
(version actuelle du modèle
de McCulloch & Pitts)

La figure 2
Modèle étendu

• le modèle peut être modifié en introduisant une valeur de biais bk à la place de


la valeur de seuil: x0 = +1 et wk0 = bk
• Le biais d’entrée (bias input): unité fictive dont le poids permet de régler le seuil de
déclenchement du neurone ce qui donne alors le modèle suivant:

La figure 3
Modèle non-linéaire (suite)

Le modèle de lafigure 3, est mathématiquement décrit par 2 équations:

où: x1, x2, ..., xp sont les entrées,

wk1, wk2, ..., wkp sont les poids synaptiques du neurone k,

uk est la sortie de l'unité de sommation,

k est le seuil,

ϕ(.) est la fonction d'activation,

yk est le signal de sortie du neurone k.


Fonctions d'activation

La fonction d'activation définit la valeur de sortie d'un neurone en termes des


niveaux d'activité de ses entrées.
3 types de fonctions d'activation :
• fonction à seuil

• fonction linéaire par parties


Le Neurone Formel
Les fonctions d’activation :
Architecture générale d’un RNA

Pattern Pattern
d'entrée de sortie

0 1
1 1
0 Réseau 0
1 0
Stimulus Réponse
1 1
déc odage
codage 1 0
0 1
0 0
Structure d’Interconnexion
propagation avant (feedforward)

couche d’entrée

couche cachée

couche de sortie

réseau à connections
réseau multicouche
locales
propagation des activations : de l ’entrée vers la sortie
Structure d’Interconnexion
modèle récurrent (feedback network)

Réseau à connexions récurrentes Réseau à connexions complète


les connexions récurrentes ramènent
c'est la structure d'interconnexion
l'information en arrière par rapport au
la plus générale . Chaque neurone
sens de propagation défini dans un
est connecté à tous les neurones
réseau multicouche. Ces connexions
du réseau (et à lui-même).
sont le plus souvent locales .
propagation des activations :
synchrone : toutes les unités sont mises à jour simultanément
asynchrone : les unités sont mises à jours séquentiellement
Apprentissage

 Définition

 Apprentissage supervisé

 Apprentissage non supervisé

 Règles d ’apprentissage
Définition
L ’apprentissage (Learning) est une phase du développement d’un
réseau de neurones durant laquelle le comportement du réseau est
modifié jusqu’à l’obtention du comportement désiré.

On distingue deux grandes classes d’algorithmes d’apprentissage :

 L’apprentissage supervisé

 L’apprentissage non supervisé

 L’ apprentissage par renforcement


Apprentissage supervisé
 apprentissage supervisé : l’environnement apparaît dans ce cas, vu
du système apprenant, comme une source de couples (X;D)
éventuellement ordonnés, où X est un vecteur de stimulation et D la
réponse (commande motrice) attendue, compte tenu de la stimulation.
Le réseau est alors chargé de mimer le comportement modèle fourni
par l’environnement et éventuellement de l’étendre grâce à ses capacités
de généralisation;

superviseur sortie désirée

erreur

réseau sortie obtenue


L ’apprentissage non supervisé
 apprentissage non supervisé : l’environnement ne fournit ici que la
suite des vecteurs de stimulation X. Le réseau a donc la charge
d’extraire des régularités de la suite des vecteurs X ;

réseau sortie obtenue

L’apprentissage non supervisé a pour modèle de référence les cartes dites «


autoorganisatrices » (Self Organizing Maps, SOM) de Kohonen (1982).
L ’apprentissage par renforcement

apprentissage par renforcement : L’apprentissage par


renforcement permet de contourner certaines des limitations de
l’apprentissage supervisé. Il consiste en une espèce d’apprentissage
supervisé, mais avec un indice de satisfaction scalaire au lieu d’un signal
d’erreur vectoriel. Ce type d’apprentissage est inspiré des travaux en
psychologie expérimentale de Thorndike (1911) :
Donc dans l’apprentissage par renforcement, l’environnement
est source de vecteurs de stimulation X et d’un signal de renforcement
SR décrivant qualitativement son état. Le réseau doit alors produire un
comportement visant à maximiser le signal SR reçu.
Apprentissage par renforcement

Acteur(s) ou Agent(s)

Action Situation Renforcement


at st Sr t+1

Environnement

Schéma de principe

 Le renforcement est déterminé par l’objectif à atteindre : définition ?


Le but de l’acteur est de maximiser les récompenses à venir : estimation ?
L’acteur apprend par processus essai/erreur : méthode ?
Il doit résoudre un dilemme exploration/exploitation: compromis ?
Cas des systèmes distribués et des systèmes dynamiques : qui et quand récompenser ?
Apprentissage de la marche d ’un robot hexapode

• But de l’étude
– Montrer que grâce aux propriétés d ’apprentissage, il n ’est pas nécessaire de construire un modèle du robot.
• La coordination des mouvements est guidée par les informations renvoyées par l’environnement.
Architecture du réseau
Inputs :
Pos ition of
the six legs
Output : Ej : Si :
E1 Ci1 Movement of the positions movements
leg i

Si
Learning
(weight computing)

Ci6: s ynaptic weight which


E6
connects the input 6 to the
Robot and environment
neuron i.
responses

NEURON MODEL NETWORK ARCHITECTURE


[A. Johannet ]
• Les neurones calculent la probabilité d’effectuer une poussée
• L’action Si est binaire
– 1 : la patte exerce une poussée vers l ’arrière
– 0 : la patte est ramenée en position avant
• Les traitements sont distribués : un neurone par patte mais l’apprentissage est centralis
(même renforcement pour toutes les pattes).
Règles d’apprentissage

L’apprentissage consiste à modifier le poids des connections


entre les neurones.

i j
Wij
Il existe plusieurs règles de modification :
– Loi de Hebb : wij=Raiaj

– Règle de Widrow-Hoff (delta rule) : wij=R(di - ai)aj

– Règle de Grossberg : wij=R(aj - wij)ai

Règles d’apprentissage

Loi de Hebb :
Si deux unités connectées sont actives simultanément, le poids
de leur connexion est augmenté ou diminué. R est une constante
positive qui représente la force d'apprentissage (learning rate).

ai = -1 ai = 1 j i
w ij
aj = -1 Wij = R Wij = -R
aj = 1 Wij = -R Wij = R

Wij  Rai a j
Règles d’apprentissage

Loi de Widrow-Hoff (delta rule) :


ai activation produite par le réseau

di réponse désirée par l'expert humain

Par exemple si la sortie est inférieure à la réponse désirée, il va falloir


augmenter le poids de la connexion à condition bien sûr que l'unité j soit
excitatrice (égale à 1). On est dans l'hypothèse d'unités booléennes {0,1}.
ai = 0 ai = 1 j i
w ij
di = 0 Wij = 0 Wij = -R
di = 1 Wij = R Wij = 0 Wij  R(d i  a i )a j
Règles d’apprentissage

Loi de Grossberg :
On augmente les poids qui entrent sur l'unité gagnante ai s'ils sont trop faibles, pour
les rapprocher du vecteur d'entrée aj. C’est la règle d’apprentissage utilisée dans les
cartes auto-organisatrices de Kohonen

Wij  Ra i a j  Wij  j i
w ij
Différents modèles

Le perceptron
Limite du perceptron
Le perceptron multicouche
Le modèle de Hopfield
Le modèle d ’Elmann
Les réseaux concurrentiels
Les réseaux ART
Le réseau RBF
Le perceptron

Le perceptron de Rosenblatt (1957) est le premier RNA opérationnel.

C’est un réseau à propagation avant avec seulement deux couches (entrée


et sortie) entièrement interconnectées.

Il est composé de neurones à seuil.

L ’apprentissage est supervisé et les poids sont modifiés selon la règle


delta.
Moindres carrés « stochastiques »
ADALINE (Widrow Hoff 1960)

n
C(D) = å( yi - di ) avec yi = y ( wxi + b)
2

i=1
n n
C(w, b) = å(y ( wxi + b) - di ) = å(y (WX ) - di )
2 2

i=1 i=1

¶C(W) n ¶y (WX) n
¶W i=1
(
= 2 å yi - y (WX)
¶W
) (
= 2 å yi - y (WX) y ' (WX) X = D
i=1
)
Trouver des poids permettant au réseau de réaliser une relation entrée-sortie
spécifiée par des exemples de cette relation
(Toujours le problème de la généralisation)
• Apprentissage:
 Minimiser la fonction de coût E(w,{xl,ul}) en fonction du paramètre w
 Utiliser pour ceci une méthode de descente de gradient
¶C(W)
DW = - (algorithme de rétro-propagation de gradient)
¶W
Algorithme itératif de gradient

1. Initialisation des poids synaptiques winit


2. Présentation d’un exemple parmi l’ensemble d’apprentissage
Séquentielle, aléatoire, en fonction d’un critère donné
3. Calcul de l’état du réseau n
C(D) = å( yi - di )
2

4. Calcul de l’erreur = fct(sortie - sortie désirée) i=1

5. Calcul des gradients


Par l’algorithme de rétro-propagation de gradient
6. Modification des poids synaptiques wnew = wold - 
7. Critère d’arrêt
 Sur l’erreur. ¶C(W) < e
¶W
 Nombre de présentation d’exemples (iterations), ...
8. Retour en 2
Algorithme de gradient

• Illustration dans le plan (w1 ,w2)


Minimum du coût
• Lignes d’iso-coût :
C(W) = constante
w2 +

Direction du gradient
C’(W)

Le gradient est orthogonal aux lignes


w1 d’iso-coût : argument à la « Taylor »
Algorithme de gradient
• Illustration dans le plan (C(w),w) : la « descente » de gradient

C(w)

Direction du gradient
C’(W)

Minimum du coût w
3 solutions
¶C(W) n

Le gradient : = 2å( di - y (Wxi ))y ' (Wxi ) xi


¶W i=1

¶C(W) n
= 2å( di - y (Wxi ))xi
¶W i=1

• Approximation linéaire (Adaline)

¶C(W) n

• Perceptron : ’=1 = 2å( yi - y (Wxi ))xi


¶W i=1

• Neurone formel : on remplace  par une fonction  dérivable


ex : (x)=th(x) fonction sigmoïde

¶C(W) n
= 2å( di - f (Wxi ))f ' (Wxi ) xi
¶W i=1
Discrimination Linéaire
X v.a. à valeurs dans R d (d caractéristiques)

d
frontière de décision linéaire : å w x + b = 0
j=1 j j

règle de décision linéaire

ì
ï d
ï å w jx j + b > 0 (ronds rouges)
ï j=1
í +
ï d + +
ï å w x +b£0 (croix verte) +
ï j=1 j j
î
+ + + +
+
é ù é ù + + +
ê x ú ê w ú +
ê 1 ú ê 1 ú
ê ... ú ê ... ú
ê ú ê ú
x ºê x ú , w ºê w ú , frontière de décision : wx + b = 0
ê j ú ê j ú
ê ... ú ê ... ú
ê ú ê ú
ê x ú ê w ú
ë d û ë d û

Codage {-1,1}, fonction de décision de type « heaviside »


Géométrie : illustration dans R2
  w1   x1 
w  , x  D(x) = sign( wx + b)
 w2   x2 

D º wx + b = 0 wx + b > 0

b 
 w x
w2
°
wx + b
b dist ( x, D ) =
d 
wx + b < 0 w
w

b

w1
si x et y Î D Û wx + b = 0 et wy + b = 0

w(x - y) = 0 Û w est orthogonal à la frontière de décision D


Limite du perceptron
Les limitations
En fait, un unique neurone est particulièrement limité car il ne sait calculer qu'une
séparation linéaire. Or, si on choisit aléatoirement deux ensembles de vecteurs dans un
espace vectoriel de dimension n, la probabilité qu'ils soient linéairement séparables
décroît très vite avec le nombre de vecteurs (en fait pour n grand, elle peut être
considérée comme nulle dès que le nombre de vecteurs en plus grand que 2n). En
termes plus simples, les ensembles linéairement séparables sont plutôt rares.
Le perceptron est incapable de distinguer les patterns non séparables linéairement
[Minsky 69] fonction ET logique fonction XOR (ou exclusif)
P P
input P 0 1 0 1
input Q 1 0 0 1 1 0 1 1 1 0

ET 0 0 0 1
XOR 1 1 0 0
0 0 0 0 0 1
0 1 Q 0 1 Q

patterns séparables linéairement patterns non sépa rables linéairement


Supprimer les limitations

On se demande alors si on ne peut pas imiter plus fidèlement la structure


du cerveau en faisant travailler ensemble plusieurs neurones. Supposons
que notre but soit de séparer deux ensembles de points arbitrairement
choisis, ceci en utilisant seulement un nombre fini de séparations
linéaires. En dimension n, on peut utiliser 2n hyperplans afin d'enfermer
un point dans une petite boite. Donc en choisissant bien les coefficients
de 2n neurones, on peut s'arranger pour que seuls les points d'un petit
cube de l'espace donnent une réponse égale à 1 pour chacun des
neurones. Un point extérieur donnera toujours au moins un 0. Si on
dispose de p points, on peut ainsi associer à ces points 2np neurones qui
permettent de les reconnaître.
L'opération logique de reconnaissance sera en fait un et effectué sur
tous les neurones correspondant à une "boite" donnée. En utilisant ainsi
2np neurones suivis de p portes logiques, on est capable d'associer une
porte à chaque point. Il suffit ensuite de faire un ou logique sur les
portes afin de séparer certains points des autres. Or, il se trouve que
quelque soit la dimension de l'espace, les opérations et et ou sont
linéairement séparables, c'est à dire qu'il existe pour chacune d'entre
elles un neurone permettant de la calculer. En utilisant un ensemble de
neurones possédant une structure particulière, on peut donc séparer
deux ensembles de points choisis arbitrairement
Taxonomie de Jain et al. (1996)
Le perceptron multicouche
Le perceptron multi-couches (noté MLP pour Multi Layer Perceptron) est
directement inspiré du raisonnement présenté au dessus. L'idée principale
est de grouper des neurones dans une couche. En place ensuite bout à bout
plusieurs couches et connecte complètement les neurones de deux couches
adjacentes. Les entrées des neurones de la deuxième couche sont donc en
fait les sorties des neurones de la première couche. Les neurones de la
première couche sont reliés au monde extérieur et reçoivent tous le même
vecteur d'entrée (c'est en fait l'entrée du réseau). Ils calculent alors leur
sorties qui sont transmises aux neurones de la deuxième couche, etc. Les
sorties des neurones de la dernière couche forment la sortie du réseau.
Le perceptron multicouche
architecture

S Y S T E M E

bias 1
1 bias
En vironn emen t

En vironn emen t
co uche
co uche
d'en trée co uche
de sort ie
(inp ut) i cachée
(o ut put ) k
(h idden ) j
Le perceptron multicouche
activation

ai

x j   w jiai
j aj
a j  f (x j )
W ji W bi as

bias = 1

fonction sigmoïde fonction tangente hyperbolique

1
a  f x   x
e x  e x
a  f x   x
1 e e e
x

f  x   f  x .1  f  x  f  x   1  f  x .1  f  x 
Le perceptron multicouche
apprentissage : retropropagation de l’erreur

• L'apprentissage (supervisé) En ajustant les paramètres d'un MLP, on peut lui faire calculer
toute sorte de fonction. Si on se donne une fonction vectorielle particulière, on peut tenter de
faire apprendre cette fonction par un MLP : c'est l'apprentissage. La méthode classique pour
l'apprentissage supervisé consiste à se donner un ensemble d'exemples, c'est à dire un
ensemble fini de couple de vecteurs (xi,yi). Dans un tel couple, xi désigne l'entrée du réseau et
yi la sortie désirée pour cette entrée. On écrit alors la fonction calculée par le réseau sous une
forme paramétrique : f(x,w) désigne la sortie du réseau quand on lui présente en entrée le
vecteur x et qu'il utilise les poids synaptiques contenus dans le vecteur w. On se donne enfin
une distance sur l'espace vectoriel de sortie, c'est à dire un moyen de mesurer l'erreur
commise en un point par le réseau. Si cette distance est notée d, on cherche alors à trouver la
valeur de w qui minimise la somme l'erreur totale commise par le réseau, c'est à dire la
somme des distances entre les sorties obtenues et les sorties désirées, c'est à dire somme des
d(f(xi,w),yi). Cette erreur est une fonction de w et on peut donc utiliser les techniques
classiques d'optimisation de fonction pour trouver son minimum.
Le perceptron multicouche
apprentissage : retropropagation de l’erreur

Sj = å aiVij
i S k   a jW jk
aj = f ( Sj ) j
1 Calcul a ctiva tions 2 Calcul a ctiva tions ak  f S k 
unités cachées unités de sortie

Unités
a Unités a
d'entrée i Unités de sortie k
aj
ca chées
Calcul E rreur 3
entre
sorties d ésirées ek  d k  ak
et
sorties obtenues

 
 j    W jk  k . f S j  Calcul d e l'erreur 5 Calcul d e l'erreur 4
 k  ek . f S k 
 k  sur les u nités cachées sur les u nités de s ortie

6 Ajustemen t des poids


Apprentis sage Apprentis sage
des u nités cachées des u nités de s ortie

DVij = ed j ai W jk   k a j
Le perceptron multicouche
Règle du delta généralisé

• Les paramètres de l’apprentissage


DWijt = a Wijt-1 + ed j ai
– La force d’apprentissage ε ou taux d’apprentissage
– Gradient local δ
– Le momentum α
– Cumulative Delta-Rule a W t-1
ij

• Les performances du réseaux


– Erreur globale sur le jeu de test
– Généralisation

Vous aimerez peut-être aussi