Vous êtes sur la page 1sur 68

INTRODUCTION AUX

RESEAUX DE NEURONES

Fabien MOUTARDE
Centre de Robotique (CAOR)
Mines ParisTech (ENSMP)
Fabien.Moutarde@mines-paristech.fr
http://perso.mines-paristech.fr/fabien.moutarde
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

PLAN GENERAL

A Prsentation gnrale des rseaux de neurones

B Application des rseaux neuronaux en Automatique


C Travaux pratiques sur machine

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

PRESENTATION GENERALE
1) INTRODUCTION - HISTORIQUE
2) LES RESEAUX DE NEURONES FORMELS
3) LES TECHNIQUES D'APPRENTISSAGE
4) EXEMPLE

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

HISTORIQUE
Comprhension et modlisation cerveau

Essai imitation pour reproduire


fonctions volues

Outils mathmatiques pour l'ingnieur


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

NEURONES BIOLOGIQUES
corps cellulaire

synapse

dendrite
axone

Signal lectrique dendrites --> corps --> axone --> synapses


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

FONDEMENTS BIOLOGIQUES
FORMATION DU CERVEAU - APPRENTISSAGE - MEMOIRE
FORMATION: programme hrditaire dict par
- un rseau de neurones totalement connect
- le mcanisme interne de chaque type de neurones
- le potentiel d'volution des synapses
EVOLUTION ET APPRENTISSAGE :
interaction avec l'extrieur
volution des synapses qui peuvent
dgnrer
se stabiliser de faon +/- rversible (mmoire)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

MODELISATION DES NEURONES


Frquence f
Entres

potentiel de membrane

q Ci f i
i

f
~ 500 Hz
sigmode

Introduction aux rseaux de neurones

Potentiel de
membrane

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

NAISSANCE DU NEURONE FORMEL


LES DEBUTS : Mc Culloch et Pitts (1943)
- modle de neurone simple
- but de modliser le cerveau

Oi

Oj

+1
-1

Wij

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

MODELE DE L'APPRENTISSAGE
Rgle de Hebb (1949)
Renforcement des connections entre neurones
activs simultanment

Oi

Oj
Wij

Wij (t + t) = Wij (t) + OiOj

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

PREMIERS "RESEAUX DE
NEURONES FORMELS"
LE PERCEPTRON (Rosenblatt, 1957)
ADALINE (Widrow, 1962)
neurone formel Mac Culloch & Pitts
+
rgle d'apprentissage de Hebb

ralisation de fonctions boolennes


par apprentissage partir d'exemples

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

10

LIMITES DES PREMIERS MODELES


PERCEPTRONS, le livre de Minsky et Papert (1969)
Etude approfondie du perceptron et de ses limites
intrinsques :
- certaines fonctions boolennes impossibles
apprendre
(XOR, ...)
- limitation aux sparations linaires

Les progrs des ordinateurs squentiels ont pouss le


dveloppement du traitement symbolique et de
l'Intelligence
Artificielle (systmes experts) et
l'abandon des rseaux de neurones.
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

11

LE RENOUVEAU DU NEURONAL
La mcanique statistique au secours des
rseaux de neurones (J.J. Hopfield, 82)
--> intrt de la dynamique des rseaux totalement connects
LA RETROPROPAGATION DU GRADIENT et la rsolution
du Credit Assignment Problem (Rumelhart 86, Le Cun 85)
: apprentissage de rseaux couches caches.
Puissance de calcul des ordinateurs
==> rsolution empirique de problmes rels.
Des rsultats mathmatiques
universels parcimonieux
Introduction aux rseaux de neurones

approximateurs

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

12

REVIVAL RECENT
deep neural networks, avec plusieurs couches
caches de grandes dimensions :
initialisation intelligente non-supervise
apprentissage usuel ensuite fine-tuning des
poids
couches caches
features appris (bas niveau sur
premire couche cache, + ht niveau sur 2eme)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

13

Les rseaux de neurones


aujourdhui
Une myriade de modles connexionnistes et
d'algorithmes d'apprentissage (et des milliers de
thses!)
Beaucoup de produits logiciels (et de freewares) pour
dvelopper des rseaux neuronaux
Quelques chips spcialiss
Des outils mathmatiques pour l'ingnieur (souvent
extension non-linaire de techniques classiques) mettre
sur le mme plan que :
- classifieurs usuels (Arbres de Dcisions Binaire, Plus Proche

Voisin, ...)
- splines et autres outils d'interpolation
- modles ARMA, ...
- filtres linaires adaptatifs, ...
- contrleurs PID, ...
...
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

14

DOMAINES D'APPLICATIONS
Apprentissage d'une relation entre-sortie
connue par l'exemple :
Reconnaissance de formes
Classification
Identification
Prdiction
Filtrage
Commande, rgulation

+ Optimisation combinatoire (rseaux de Hopfield)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

15

EXEMPLES D'APPLICATIONS
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...
diagnostic (allumage voiture, Renault ; photocopieur,
Canon; circuits VLSI, IBM...)
compression de donnes (JVC)
prvision de consommation d'eau (Lyonnaise, CGE),
d'lectricit (EDF), de trafic routier (Cofiroute), de cours
boursiers...
identification de procd industriel (Air liquide, Elf
Atochem, ciments Lafarge...)
commande de vhicule (Sagem)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

16

Les rseaux de neurones formels


DEFINITIONS DU NEURONE FORMEL
Une dfinition trs gnrale : processeur qui applique une
opration simple ses entres et que l'on peut relier
d'autres pour former un rseau qui peut raliser une
relation entre-sortie quelconque.

DEFINITION USUELLE : processeur trs simple qui


calcule une somme pondre et qui applique cette
somme une fonction de transfert non linaire (chelon,
sigmode, gaussienne, ...)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

17

LE NEURONE FORMEL
ei

ei : entres du neurone
Aj : activation du neurone
Oj : sortie du neurone

Wij

h f g

Oj

Aj

Wij : poids (synaptiques)


h : fonction d'entre
f : fonction d'activation
(ou de transfert)
g : fonction de sortie

Aj = f( h(ei, {Wij, i=0 kj}) )


Oj = g(Aj) (= Aj le plus souvent)

La combinaison (h,f,g) dfinit le type de neurone


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

18

LE NEURONE SOMMATEUR
FONCTIONS D'ACTIVATION
Fonction seuil (Heaviside) ou signe

PRINCIPE

--> neurones binaires

Fonction sigmode

ei

--> neurones les plus utiliss

Oj

Wij

Identit
--> neurones linaires

Saturation

O j = f W0 j + Wij ei
i =1

Gaussienne
W0j = "biais"
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

19

LE NEURONE DISTANCE
ei

e1 W1 j

fonction d'entre : h ... , ... = (ei Wij )2
i
ek Wkj

Wij
DIST

Oj

fonction d'activation = Identit ou gaussienne

L'activation reprsente donc la distance


entre le vecteur d'entre (ei)i et le vecteur poids (Wij)i

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

20

LES NEURONES POLYNOMIAUX

ei

Oj

Wij

Par exemple, neurone d'ordre 2 : O

Introduction aux rseaux de neurones

= f (W ijW kj e i e k )
i,k

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

21

NEURONES DE TYPE NOYAU


fonction d'entre :

Id

Oj

h(e, w) = K (e, w)

avec K symtrique et positif


au sens de Mercer : tq 2(x)dx < ,
alors K(u,v)
(u)
(v)dudv
0
fonction d'activation = identit

Exemples de noyaux admissibles :


Polynomiaux : K(u,v) = [u.v + 1]p
Radial Basis Function : K(u,v) = exp(-||u-v||2 / 2
2)
quivalent distance+activation gaussienne
Sigmodes : K(u,v) = tanh(u.v+
)
quivalent sommateur+activation sigmode
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

22

RESEAUX DE NEURONES FORMELS


DEUX FAMILLES DE RESEAUX
RESEAUX NON BOUCLES : sont utiliss en classification,
reconnaissance des formes (caractres, parole, ...), en
prdiction

RESEAUX BOUCLES : sont utiliss comme mmoire


associative (Hopfield, rseaux attracteurs) ou pour des
tches de traitement du signal ou de commande.

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

23

RESEAUX NON BOUCLES


Les neurones peuvent tre ordonns
d'une faon telle qu'il n'y a
aucune connection "vers l'arrire"

Y2

Y1

(terme anglais : "FEEDFORWARD" neural network)


4
3
2

Le temps n'intervient pas


comme variable fonctionnelle

les neurones 1, 3 et 4
sont dits "cachs"

(i.e. le rseau n'a pas de mmoire et


ses sorties ne dpendent pas de son
pass)

X1

X2

X3

X4

Introduction aux rseaux de neurones

neurones
d'entre
Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

24

RESEAUX NON BOUCLES


A COUCHES
X1

Y1

X2

Y2

X3

couche de sortie

couche d'entre
couches caches (0 N)

En gnral, avec neurones sommateurs sigmode


C'est le rseau le plus utilis
Nom anglais : Multi-Layer Perceptron (MLP)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

25

RESEAUX BOUCLES
sortie
sortie
2

x2

x2(t)

x2(t-1)

x3

x3(t)
f

entre x1

x1(t)

entre

A chaque connection
est associ un dlai

x3(t-1)
x2(t-2)
x2(t-1)

Forme quivalente
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

26

RESEAUX BOUCLES :
forme canonique
sorties yj(t)

xk(t)
variables d'tat

..........

........

Rseau statique

....... 1

........

............
ui(t)
entres externes

xk(t-1)
variables d'tat

FORME CANONIQUE DES RESEAUX BOUCLES


Les sorties t dpendent non seulement des entres externes t,
mais aussi (via les variables d'tat) de toute la squence des entres
externes prcdentes (et de l'initialisation des variables d'tat)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

27

RESEAU DE HOPFIELD
x3

x2

1
1

1
1

1
1

x1

x4

Rseau boucl totalement connect


pas d'entres externes ( part initialisation des tats des neurones)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

28

UTILISATION D'UN RESEAU


entre
x

sortie

rseau
y=F

(x)
A,W

poids W

y=

FA,W (x)

architecture A

Deux modes :
apprentissage : partir d'exemples de couples
(entre, sortie) , le rseau modifie
les paramtres W (poids des connexions)
ventuellement son architecture A
(en crant/liminant neurones ou connexions)

reconnaissance :
calcul de la sortie associe une entre
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

29

L'APPRENTISSAGE
PLAN

Gnralits
Apprentissage supervis
Apprentissage non supervis
Mthodologie pour l'apprentissage

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

30

GENERALITES
MODES D'APPRENTISSAGE
NON SUPERVISE

SUPERVISE

exemples : x1, ..., xm


Architecture : A
Poids initiaux : W

exemples : (x1, d1) ... (xm, dm)


Architecture : A
Poids initiaux : W

TROUVER DES POIDS W (et ventuellement modifier A) POUR QUE :


- interpolation : dk = F (xk) pour k=1, ..., m
A,W
- gnralisation : d = F
(x)
A,W
pour de nouveaux couples (x,d)

Introduction aux rseaux de neurones

- Les images des exemples sont bien


groupes

- Les images des nouveaux exemples


sont "proches" de leurs semblables

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

31

L'APPRENTISSAGE SUPERVISE
Rseaux de neurones sommateurs seuil
- la sparation linaire
- les rseaux multicouches : la rtropropagation
Rseaux de neurones "distance"
- Learning Vector Quantization (LVQ)
- Mthodes noyaux type Radial Basis Function
Rseaux neurones d'ordre suprieur
Support Vector Machines (SVM)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

32

GENERALITES ET FORMALISME
L'apprentissage supervis est l'adaptation des coefficients
synaptiques d'un rseau afin que pour chaque exemple, la
sortie du rseau corresponde la sortie dsire.
FONCTION DE COT : problme de minimisation
Soient n exemples (Xp;Dp) et Yp la sortie donne par le rseau :
On dfinit l'erreur qui peut tre quadratique de la forme

E (W ) =

(Y

Dp )

L'apprentissage revient dterminer W =ArgMin(E).


En gnral, on utilise des mthodes de gradient, total, partiel
ou stochastique :

W (t + 1) = W (t ) . grad W (E )

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

33

SEPARATION LINEAIRE PAR


UN SEUL NEURONE
la sparation linaire

W.X

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

34

APPRENTISSAGE DU PERCEPTRON
X

Wk.X> 0

W
W.X

Wk.X < 0

==> SEPARATION LINEAIRE


loi d'apprentissage :
Wk+1 = Wk + dX si X mal class (d : sortie dsire)
Wk+1 = Wk
si X bien class
Convergence de l'algorithme dans le cas sparable
Impossible de savoir si un problme est non sparable.
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

35

REGLES DELTA
AUTRES REGLES D'APPRENTISSAGE POUR LA
SEPARATION LINEAIRE PAR UN NEURONE
La rgle Delta ou de Widrow-Hoff :
E(W) =

p (p - dp)2 o : avant fonction d'activation

Le gradient partiel calcul donne W = (dp - W.Xp)Xp


CONVERGE VERS SOLUTION MOINDRES CARRES :
W = (XXT)-1 Xd o X: matrice (X1, ..., Xn) et d: vecteur (d1, ..., dn)
La rgle Delta gnralise :
E(W) =

==>

p (yp - dp)2 y: aprs fonction d'activation


W= (dp - f(W.Xp)) f'(W.Xp) Xp

(la rgle Delta est le cas o f est l'identit)


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

36

SEPARATIONS LINEAIRES
COMPARAISON DES SOLUTIONS DES 3 ALGORITHMES

Perceptron

Delta gnralise

Widrow-Hoff (= moindres carrs)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

37

Ncessit de neurones cachs


L'INSUFFISANCE DE LA SEPARATION LINEAIRE

CLASSE 2
CLASSE 1

Ncessit de plusieurs couches pour un rseau de neurones


Ncessit d'un nouvel algorithme pour ces rseaux

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

38

LE PROBLEME DE
"CREDIT ASSIGNMENT"
Comment connatre la sortie dsire
pour un neurone cach ?
X

yi

wij

yj

sortie dsire
d

Problme non rsolu par Minsky


Cause de la dsaffection du domaine jusqu'en 80
UTILISER DES NEURONES DERIVABLES
+
METHODE DE GRADIENT

LA RETROPROPAGATION DU GRADIENT
(en anglais BACKPROPAGATION)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

39

La rtropropagation du gradient (1)


Mthode astucieuse de calcul du
gradient de la fonction de cot en utilisant
la drivation compose pour rtropropager" l'erreur.
La fonction de cot est E(t) = p (Yp-Dp)2
o p parcourt l'ensemble d'apprentissage
Gradient total : W(t+1) = W(t) - (t) gradW(E(t))
Gradient stochastique : W(t+1) = W(t) - (t) gradW(Ep(t))
o Ep = (Yp-Dp)2, erreur calcule sur un seul exemple
que l'on tire au hasard chaque t
(t) = pas de gradient (fixe, dcroissant, ou adaptatif)

Reste calculer dEp/dWij


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

40

La rtropropagation du gradient (2)


i

yi

wij

y0=1

yj

wjk

k f

dEp/dWij = (dEp/dj)(dj/dWij) = (dEp/dj) yi

On pose j = (dEp/dj), d'o Wij(t+1) = Wij(t) - (t) yi j


(et W0j(t+1) = W0j(t) - (t)j)

Mais j = (dEp/dj) = k (dEp/dk)(dk/dj) = k


d'o

k(dk/dj) = k kWjk(dyj/dj)

j = (k Wjkk)f'(j)

si neurone j est cach

Et j = (dEp/dj) = (dEp/dyj)(dyj/dj)
d'o

j = 2(yj-Dj)f'(j) si neurone j en sortie

j se calcule de proche en proche par


rtropropagation de l'erreur
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

41

Rtropropagation v.s.
rseau monocouche
nn
_m
ine
la sparation linaire
s1
W.X
_p
s4
_v
3.p
df rtropropagation : cas gnral

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

42

LE THEOREME
D'APPROXIMATION UNIVERSELLE
Cybenko 89

Pour toute fonction F continue dfinie et


borne sur un ensemble born, et pour
tout , il existe un rseau 1 couche
cache de neurones sigmodes qui
approxime F prs.
Mais on ne sait pas commment le trouver coup sr,
et ce rseau a peut-tre normment de neurones cachs...
Sussman 92
Les rseaux une couche cache forment une
famille d'approximateurs parcimonieux : nombre
gal de paramtres on approxime correctement
plus de fonctions qu'avec des polynmes
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

43

Caractristiques des
rseaux neuronaux multicouches
AVANTAGES
Approximateur universel parcimonieux
(et classifieur universel)
Rapidit d'excution (++ si multi-processeurs ou chip)
Robustesse des solutions, rsistance au bruit des donnes
Facilit de dveloppement
INCONVENIENTS
Le choix de l'architecture est critique
Le temps d'apprentissage peut tre long
Prsence de minima locaux de la fonction de cot
Difficults d'interprtation des rsultats
en terme de connaissance
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

44

METHODOLOGIE POUR
lAPPRENTISSAGE
SUPERVISE DE RESEAUX
NEURONAUX A COUCHES

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

45

Bases dapprentissage, de test,


et de validation
Espace des entres possibles infini (si valeurs continues),
ensemble d'apprentissage = ss-ensemble ( chantillonage)

Erreur nulle sur tous les exemples bons rsultats sur


tout l'espace des entres possibles (cf erreur de
gnralisation erreur empirique)
collecter suffisamment d'exemples reprsentatifs
mettre de ct un ensemble d'exemples qui ne servira que
de base de test pour estimer le taux de gnralisation
final (ie quand apprentissage termin)
sparer
les
exemples
restants
en
une
base
d'apprentissage et une base de validation cette dernire
servira pour arrter l'apprentissage quand l'erreur cesse
de baisser en test (viter le sur-apprentissage)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

46

METHODOLOGIE :
Favoriser bonne gnralisation
viter d'avoir trop de paramtres libres (nombre de poids)
par rapport au nombre d'exemples d'apprentissage

polynme de degr 20 fitt sur 4 points

OU SINON, ajouter la fonction de cot un terme de


rgularisation qui pnalisera les combinaisons de
paramtres donnant un rseau trop complexe
(typiquement, cot K=Erreur+
ijWij2 weight decay)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

47

Initialisation, pas de gradient,


slection de modle
initialiser les poids des valeurs petites et
inversement proportionnelles au nombre de
connections entrant dans le mme neurone
( tat initial presque linaire)
prendre un pas de gradient plutt constant et
petit, ou adaptatif
favorise rseaux de complexit minimale
SELECTION DE MODELE:
essayer successivement diffrentes architectures
avec un nombre croissant de neurones cachs
(ou bien adopter un algorithme "constructif")
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

48

Autres conseils mthodologiques


importance des prtraitements de entres : en
classification, extraction de paramtres discriminants
pour diminuer la dimension des vecteurs d'entre
normaliser les valeurs de sorties dsires des exemples
selon la fonction d'activation des neurones de sortie
(a priori entre 0 et +1 ou entre -1 et +1)
normaliser les valeurs d'entre des exemples
(typiquement entre -1 et +1)
pour classification, choisir de prfrence le codage
"grand-mre" :
1 neurone par classe, et classe 1 = (1,0,0,...,0), classe 2 = (0,1,0,...,0),
...

diviser pour rgner : en classification, essayer de scinder


le pb en sous-problmes plus simples
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

49

Intrt initialisation non-alatoire


Travaux trs rcents montre grand intrt de
initialisation NON-alatoire des poids, par algo
non-supervis type machine de Boltzman

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

50

AUTRES TECHNIQUES
NEURONALES SUPERVISEES

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

51

RESEAU LVQ

- On associe plusieurs rfrences chaque classe


- Les frontires de classification sont dtermines par le diagramme de
Vorono
- L'apprentissage dplace les rfrences pour optimiser la frontire
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

52

METHODES A NOYAUX
METHODES A NOYAUX : (RBF, Potentiels, ondelettes, SVMs)

neurones
noyau

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

53

L'APPRENTISSAGE
NON SUPERVISE
Motivation
- Pour organiser/analyser/catgoriser un grand
volume de donnes inexploitable tel quel
- Indispensable en classification lorsqu'on
possde beaucoup d'exemples dont une trop
faible proportion est labelle.

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

54

TECHNIQUES D'APPRENTISSAGE
NON SUPERVISE
K-means
cartes topologiques de Kohonen
(Self-Organizing Feature Maps, SOFM)
Adaptive Resonance Theory (ART)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

55

LES CARTES TOPOLOGIQUES (1)


L'inspiration initiale est biologique :
auto-organisation des rgions du systme nerveux.

MOTIVATIONS EN CLASSIFICATION
Faire du clustering, i.e. regrouper les exemples en paquets
"similaires" pour dfinir des classes
Construire une reprsentation visualisable (1D ou 2D en
gnral) des entres par une sorte de "projection nonlinaire" de l'espace des entres (en gnral de grande
dimension) qui respecte la topologie initiale (les
"projections" de points proches restent proches).

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

56

LES CARTES TOPOLOGIQUES (2)


L'ALGORITHME DE KOHONEN
neurones distance en sortie
connexion totale

neurones
de
sortie

neurone de sortie espace dpart


systme de voisinages sur la
carte de sortie
"projection non linaire"

X1

X2

Xn

Entres

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

57

LES CARTES TOPOLOGIQUES (3)

dfinition de voisinages sur la carte :

Vi(t) voisinage dcroissant avec t


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

58

L'ALGORITHME DE KOHONEN (1)

La rponse d'une cellule i de poids Wi = (wi1, ... , win)


une forme X = (x1, ..., xn) est la distance euclidienne de
X Wi.
l'apprentissage :
reprer la cellule la plus active (la plus proche)
essayer de la rendre de plus en plus active
EN MEME TEMPS QUE SON VOISINAGE.
2 paramtres : la taille du voisinage (rayon)
le pas (t) de la modification des poids
qui diminuent avec le temps

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

59

L'ALGORITHME DE KOHONEN (2)


t=0, initialiser les poids (hasard ?)
date t, prsenter l'exemple X
dterminer le neurone de poids le plus proche
dterminer le voisinage Vi(t) et et le pas (t)
modifier les poids :
Wj(t+1) = Wj(t) + (t) (X-Wj (t)) si j Vi(t)
Wj(t+1) = Wj(t) sinon.
t = t+1
Convergence de l'algorithme :
conditions sur (t) (1/t convient)
Amlioration de la gaussienne
(rduction au seul paramtre )
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

60

ETUDE DE CAS

RECONNAISSANCE DE MODULATION

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

61

RECONNAISSANCE DE
MODULATION (1)
train
binaire

modulateur

canal de transmission

intercepteur

bruit
filtre de
rception

pr-traitement
signal inconnu

modle neuronal

modle classique : PPV


ADB
Bayesien

type de
modulation

dmodulateur

train
binaire

classification

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

62

RECONNAISSANCE DE
MODULATION (2)
fort S/N
reconnaissance
visuelle possible

faible S/N
reconnaissance
visuelle impossible
Ncessit d'un
classifieur
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

63

RECONNAISSANCE DE
MODULATION (3)
MODULATIONS A RECONNATRE
FSK2, FSK4, FSK8
MDP2, MDP4, MDP8
MAQ 16, MAQ64
OQPSK, MSK

10 types de modulation

DONNEES BRUITEES (canal de transmission) :


rapport signal/bruit en dB/bit de 0 50 dB
Filtre d'interception (bande raliste)
2048 chantillons temporels pour chaque exemple

CHOIX DES ECHANTILLONS


- 1 gnrateur
- 3000 exemples, quitablement rpartis entre les classes de
modulation (300 chacune) et les niveaux de signal/bruit
- 11 paramtres discriminants (moments statistiques) calculs sur les
exemples (==> espace entre classifieur dimension 11 au lieu 2048)
- apprentissage = 1500 exemples, validation = 1500 exemples

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

64

RECONNAISSANCE DE
MODULATION (4)
regroupement des modulations en 3 "mtaclasses" naturelles
FSK2, FSK4, FSK8, OQPSK, MSK
==> 4 problmes plus simples
PSK2, PSK4, PSK8
QAM 16, QAM 64
courbe d'apprentissage typique
EQM

itrations
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

65

RECONNAISSANCE DE
MODULATION (5)
cas d'un apprentissage avec pas de
gradient un peu trop grand

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

66

RECONNAISSANCE DE
MODULATION (6)
cas d'un apprentissage constructif
(Adaptive BackPropagation)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

67

RECONNAISSANCE DE
MODULATION (7)
.
.
.

.
.
.

metaclass 1
metaclass 2
metaclass 3
2fsk
4fsk
8fsk
oqpsk
msk
2psk
4psk
8psk

2fsk
4fsk
8fsk
2psk
4psk
8psk
16qam
64qam
oqpsk
msk

16qam
64qam

0-50 dB > 90% de bon classement (5-50 dB > 95%)


erreurs < 2% si le classifieur rejette les cas litigieux
(> 81% de bon classement et 17% de rejet)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

68

Rseaux neuronaux boucls et


applications en Automatique
1) Les rseaux boucls (ou rcurrents)
2) L'apprentissage des rseaux rcurrents
3) Identification par rseaux de neurones
4) Commande neuronale
5) Applications et exemples

Introduction aux rseaux de neurones

mars
2011
avril 2013

Fabien Moutarde, CAOR, MINES ParisTech

69

LES RESEAUX BOUCLES


RESEAU STATIQUE
Y1

RESEAU BOUCLE
(ou RECURRENT)

Y2
5
1

X1

X2

X3

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

70

Forme canonique
dun rseau boucl

U(t)

Rseau
non
X(t-1) boucl

Y(t)
X(t)

X est l'tat
du rseau

Retard
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

71

ETAT ET ORDRE
D'UN RESEAU BOUCLE
Pour calculer la sortie l'instant t, on doit connatre :
- les valeurs d'entre du rseau t
- un nombre minimum de sorties de neurones t-1
Ces sorties sont appeles VARIABLES D'ETAT
(pas uniques)
Leur nombre est l'ORDRE DU RESEAU
L'ensemble des variables d'tat est L'ETAT DU RESEAU

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

72

DYNAMIQUE
DES RESEAUX BOUCLES
Un rseau boucl temps discret d'ordre K peut tre
reprsent par K quations aux diffrences, couples,
d'ordre 1, mettant en jeu K variables (tat) en plus des
N variables d'entre.
Soit le vecteur d'entre U(t) = [u1(t), ...,uN(t)]
et le vecteur d'tat X(t) = [x1(t), ...,xK(t)]
Comportement dynamique du rseau :
X(t) = [U(t), X(t-1)]
Y(t) = [U(t), X(t-1)]

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

73

FONCTIONNEMENT
DES RESEAUX BOUCLES
variables d'tat
au temps n X(n)

sorties au temps n : Y(n)

Rseau statique
entres externes au temps n : U(n)
sorties au temps n-1 : Y(n-1)

variables d'tat X(n-1)


au temps n-1

Rseau statique
entres externes au temps n-1 : U(n-1)
variables d'tat
au temps n-2 X(n-2)

sorties au temps n-2 : Y(n-2)

Rseau statique
entres externes au temps n-2 : U(n-2)
variables d'tat
au temps n-3 X(n-3)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

74

APPRENTISSAGE DES
RESEAUX RECURRENTS
L'apprentissage des rseaux boucls
se fait sur des squences d'apprentissage
Plusieurs techniques d'apprentissage proposes :

Rtropropagation rcurrente
Rtropropagation dans le temps (BPTT)
Apprentissage temporel rcurrent en temps rel (RealTime Recurrent Learning, RTRL)
diffrences = ce que a fait, ou la faon de calculer, voire
simplement le nom de l'auteur...
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

75

PARAMETRES SPECIFIQUES :
DEFINITIONS
Horizon :
nombre Nt d'itrations entre 2 modifications des poids
(donc nb de "copies" du rseau statique mises bout bout)
Fonction de cot calcule sur une plage Nc <= Nt
Frquence de recalage du vecteur d'tat

sur des valeurs dsires

Ce dernier paramtre dtermine


plusieurs grands types d'algorithmes
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

76

PARAMETRES SPECIFIQUES :
SCHEMA

erreurs prises en compte


sur plage Nc = 2

Horizon Nt = 4
W(n)

W(n)

W(n)

W(n)
e4

e3
squence d'apprentissage

n+1

W(n+4)
n+2

n+3
n+4

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

77

CATEGORIES
D'ALGORITHMES

ALGORITHMES DIRIGES :
tat entrant dans chaque bloc = valeurs dsires.
ALGORITHMES SEMI-DIRIGES :
tat entrant dans premier bloc de l'horizon = valeurs dsires,
tat entrant dans les suivants = tat sortant du prcdent.
ALGORITHMES NON DIRIGES :
l'tat n'est jamais recal sur des valeurs dsires.

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

78

SCHEMAS DES TYPES


D'ALGORITHMES
e2
n

n+1

e3

n+2

n+3

e2
n

n+1

n+2

e3

n+1

algorithme semi-dirig

n+3

e2
n

algorithme dirig

n+2

e3

algorithme non dirig

n+3

(Horizon Nt = 3, erreurs prises en compte sur plage Nc = 2)


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

79

COMPARAISON DES
TYPES D'ALGORITHMES
Si certaines variables d'tat n'ont pas de valeurs dsires
contenues dans la base d'apprentissage (cas des tats
purement internes), alors on ne peut faire que du non dirig.
Plus l'algorithme est dirig, plus il est stable, avec erreur
faible en apprentissage. Mais le comportement dynamique
n'est pas assur en gnralisation.
Un algorithme non dirig est difficile apprendre. Il offre
plus de garantie en dynamique.

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

80

FORMULES MATHEMATIQUES
DE L'APPRENTISSAGE
W(t+Nt) = W(t) - gradW(E) avec E =
yn
xn

=F

Si dirig,

Fy Fy dxn-1
dyn
=
+

dw w
x dw

un

Fx Fx dxn-1
dxn
+

=
x dw
dw w

x n-1

dxn-1
dw

Si semi-dirig,

(Y-D)2

= 0 ==> formule usuelle, calculable par rtropropagation

dxn-1
dw

= 0 au dbut de chaque horizon ==> on peut rtropropager


travers Nt rpliques successives du rseau statique

Si non dirig, il faut faire un propagation avant du gradient (mais on peut quand
mme calculer la Jacobienne du rseau par technique type rtropropagation,
avec une passe par sortie)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

81

IMPLEMENTATIONS POSSIBLES
Pour algo dirig, BP chaque pas pour lequel on prend
erreur en compte, mais modification des poids que tous les
Nt pas.
dmultiplication du rseau statique + BP globale
==> calculs rapides, MAIS :
- pb de memoire si horizon grand,
- ne convient pas pour algo non dirig
analyse des quations et reformulation matricielle globale
==> compliqu
propagation avant
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

82

RETROPROPAGATION
SUR UN HORIZON
U(n)

U(n+1)

D(n+2)

U(n+2)

bloc 2
W(n)

bloc 1
W(n)
Xd(n-1)

D(n+1)

bloc 3
W(n)
X(n+2)

X(n+1)

X(n)

dE/dXn

dE/dXn+1

W3

W2

W1

W = W1 + W2 + W3
Introduction aux rseaux de neurones

mars
2011
avril 2013

Fabien Moutarde, CAOR, MINES ParisTech

83

PROPAGATION AVANT
U(n)

U(n+1)

bloc 1
W(n)
X(n-1)

dXn-1/dW

D(n+1)

D(n+2)

U(n+2)

bloc 2
W(n)

bloc 3
W(n)

X(n)

X(n+1)

X(n+2)

dXn/dW

dXn+1/dW

dXn+2/dW

W2

W3

Le calcul du W et du dXk+1/dW dans chaque bloc peut se faire :


- soit par calcul direct,
- soit par plusieurs rtropropagations
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

84

IDENTIFICATION NEURONALE
GENERALITES SUR L'IDENTIFICATION
Identification = obtention d'un modle mathmatique
pour reprsenter le comportement dynamique d'un processus.
Types de modle :
- parfois, modle de connaissances (quations diffrentielles)
mais 1) souvent trop idalis par rapport au systme rel,
2) difficult connatre la valeur des paramtres physiques,
et 3) lourdeur des calculs pour rsolution des equa. diff.
- le plus souvent, modle mathmatique simple (en gnral
linaire) avec des paramtres sans signification physique :
c'est l'identification "bote noire".

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

85

INTERET DU NEURONAL
EN IDENTIFICATION ?
proprit d'approximateurs universels parcimonieux
==> modles NON-LINEAIRES quelconques
rapidit de calcul en excution
capacit naturelle raliser un modle adaptatif

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

86

FILTRE TRANSVERSE NEURONAL


u1(t)

u1(t)
retard
retard

u1(t-1)
u1(t-2)

.
.
.
retard

u1(t-n1)
u2(t)

u2(t)
retard

Rseau
statique

Y(t)

u2(t-1)

.
.
.

retard

u2(t-n2)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

87

TYPES D'IDENTIFICATION
NEURONALE
rseau "rcurrent"
U(t-1)

rseau de neurones
"statique"

X(t-1)

YN(t) +
-

retard

systme dynamique
modliser

Y(t)

srie-parallle (equation error, NARX) =


algorithme dirig (valeur tat prise sur systme
modliser)
parallle (output error) = algorithme non dirig
(rseau reboucl pendant l'apprentissage)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

88

SIMILITUDE AVEC
IDENTIFICATION LINEAIRE
equation error (ARX)
ym(k) = a1 y(k-1) + a2 y(k-2) + ... + an y(k-n) + b0 u(k)
+ b1 u(k-1) + ... + bn u(k-n)

c'est un neurone linaire...


output error
ym(k) = a1 ym(k-1) + ... + an ym(k-n) + b0 u(k) + b1
u(k-1) + ... + bn u(k-n)

rseau rcurrent avec sortie reboucle


n fois, et 1 neurone linaire.
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

89

MODELE HYBRIDE
CONNAISSANCE/NEURONAL
Si on connait certaines quations
explicites du systme, s'en servir soit
simplement pour contraindre
l'architecture du rseau, soit comme
une partie du modle
On peut utiliser des neurones "ad hoc"
(sin, cos, ...)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

90

CONSEILS PRATIQUES POUR


LIDENTIFICATION NEURONALE
non-linaire ==> pas de thorme de superposition
==> les squences d'apprentissage doivent bien couvrir
le domaine de fonctionnement
si possible faire d'abord identification linaire avec
laquelle on initialise le rseau, ou bien laquelle la
contribution du rseau est ajoute
Pour de la prdiction court terme, prferer filtre
transverse
Pour modle dynamique hors ligne, prferer rseau
rcurrent + apprentissage parallle
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

91

COMMANDE NEURONALE
Commande = laboration de signaux d'entre d'un
processus qui permette d'obtenir un comportement
spcifi d'avance
(rgulation : maintenir autour pt de fonctionnement)

Intrts essentiels des rseaux neuronaux :


1) capacit synthtiser des modles inverses non-linaires
2) capacit naturelle raliser de la commande adaptative

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

92

OU L'ON RETROUVE LE "CREDIT


ASSIGNMENT"
???

sorties
dsires pour
le procd

commandes
ncessaires ??

commande

Introduction aux rseaux de neurones

Procd

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

93

APPRENTISSAGE DIRECT DE
MODELE INVERSE
action

procd

sortie

rseau
commande

Problme si plusieurs actions peuvent donner la mme


sortie...
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

94

APPRENTISSAGE INDIRECT DE
MODELE INVERSE
modle de
rfrence

consigne

rseau
commande

action

sorties

procd

rtropropagation

modle neuronal (fix)


de la dynamique du
procd

Technique la plus couramment utilise


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

95

APPRENTISSAGE PAR
RENFORCEMENT
modle de
rfrence

consigne

rseau
commande

action

procd

sorties

"valuation"
=>
renforcement/inhibition

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

96

AUTRE UTILISATION DU
NEURONAL EN COMMANDE
perturbations
REGULATEUR A MODELE
y

a
CORRECTEUR

PROCEDE

y0
(consigne)

y
+
-

MODELE
NEURONAL

a = grandeurs rglantes
y = grandeurs rgles
y = perturbations reconstitues

Modle neuronal dans un "rgulateur modle" classique

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

97

REMARQUES SUR
LA COMMANDE NEURONALE
Intrt de travailler d'abord sur un modle du procd, et
de ne faire que recalage/raffinement sur le vrai systme...
Comme pour l'identification non-linaire, ncessit de
squences d'apprentissage couvrant bien le domaine dde
fonctionnement
Difficults lies l'absence de preuve de stabilit (comme
toute commande non-linaire)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

98

APPLICATIONS ET EXEMPLES
DOMAINES DE PREDILECTION

Prdiction empirique (consommation d'eau,


d'lectricit, trafic routier, nb de passagers, ...)
modlisation de procds physico-chimiques,
thermiques, voire biologiques (car quations
complexes, difficiles rsoudre, voire inconnues)
commande non-linaire de systme mcanique (prise
en compte saturations, frottements, ...)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

99

APPLICATIONS
prvision de consommation d'eau (Lyonnaise, CGE),
d'lectricit (EDF), de trafic routier (Cofiroute),
d'affluence de voyageurs (SNCF), de cours boursiers...
identification de procd industriel (Air liquide, Elf
Atochem, ciments Lafarge...), modle de dynamique
thermique de btiment, ...
commande de vhicule (Sagem), de robot autonome, de
station de pompage (Mitsubishi)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

100

EXEMPLES PRESENTES

Identification boite noire


Identification hybride
Commande

Introduction aux rseaux de neurones

mars
2011
avril 2013

Fabien Moutarde, CAOR, MINES ParisTech

101

EXEMPLE D'IDENTIFICATION
BOITE NOIRE
Evaporateur de sucrerie
(tude ralise pour Cegelec par Alcatel-Alsthom Recherche)

Q13

Q23

Q33

Q43

Q53

Q1R

bac de
stockage

Bx0
QJ0

Bx5
Bx1

Bx2

Bx3

Bx4

QJD

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

102

BASE D'APPRENTISSAGE
3 entres externes :
QJ0 (commande)
Bx0, Q33 (perturbations mesures)
2 sorties :

Bx3 et Bx5
(concentrations effectivement mesures)

squence d'apprentissage :
srie de 30 chelons 3D alatoires sur les entres
150 pas de temps entre 2 chelons

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

103

PREDICTEUR NEURONAL

QJ0(t)
Bx0(t)
Q33(t)

Bx3(t+1)

Rseau

couches

Bx5(t+1)

Bx3(t)
Bx5(t)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

104

PREDICTEUR NEURONAL :
RESULTATS
Prdiction 1 pas de temps en avance
3
2
1
0
-1
-2
-3

1000

2000
minutes

3000

4000

erreur moyenne - 0,8 % (base de test)


rseau 5-15-2
(ordre 1 sur les sorties prcdentes et les entres)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

105

MODELE PARALLELE

QJ0(t)

Bx3(t+1)

Bx0(t)

Modle

Q33(t)

dynamique

Bx5(t+1)

Pour prdire volution long terme,


ou faire simulation off-line
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

106

MODELE PARALLELE LINEAIRE


100

80

60

40

20
0

500

1000

1500

2000

2500

3000

3500

4000

4500

minutes

erreur moyenne - 8,7 % (base de test)


(ordre 4 sur la sortie et 2 sur les entres)

saturations non reproduites


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

107

MODELE PARALLELE
NEURONAL (1)
100

80

60

40

20
0

1000

2000

3000

4000

minutes

PREDICTEUR REBOUCLE
un bon prdicteur peut avoir un mauvais
comportement en mode parallle
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

108

MODELE PARALLELE
NEURONAL (2)
100

80

60

40

20
0

500

1000

1500

2000

2500

3000

3500

4000

4500

minutes

APPRENTISSAGE RECURRENT
erreur moyenne - 6,2 % (base de test)
rseau 14-40-2
(ordre 4 sur les sorties et 2 sur les entres)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

109

CONCLUSIONS ET REFERENCES
Rseau statique + rtropropagation
==> bon prdicteur
Rseau boucl + APPRENTISSAGE RECURRENT
==> modle parallle meilleur que modles linaires
Rfrences sur cette application :
"Rseaux de neurones pour l'identification de procds industriels",
F. Moutarde, P. Delesalle & M. Menahem, proceedings of Neuro-Nimes 92,
Nmes, 2-6 novembre 1992 (pages 443-454).
"Potentialits d'applications des techniques neuronales en diagnostic et contrle
de procds industriels", F. Moutarde, A. Benveniste & Q. Zhang, rapport final
de ltude MRT numro 90S0866, dcembre 1992.
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

110

DIFFICULTES ET PERSPECTIVES
squence d'apprentissage couvrant bien l'espace
(x,u) ?
influence du bruit sur l'apprentissage ?
apprentissage dlicat
modles non-linaires lments dynamiques linaires

ajout composante linaire pour cas faiblement nonlinaires

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

111

EXEMPLE DE
MODELE NEURONAL HYBRIDE
Colonne de distillation
(application ralise pour Elf-Atochem par le laboratoire dlectronique de lESPCI et la socit Netral)
condenseur

Distillat

Alimentation

bouilleur
Introduction aux rseaux de neurones

Rsidu

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

112

MODELE DE CONNAISSANCE
D'UN PLATEAU
ya,i V
yb,i

xa,i-1 L
xb,i-1

a, b : constituants
x, y : fractions molaires
(resp. ds le liquide et dans la vapeur)

L : flux de liquide
V : flux de vapeur

ya,i+1 V
yb,i+1

xa,i L
xb,i

Mi (dxa,i/dt) = Lxa,i-1 + Vya,i+1 - Lxa,i - Vya,i


Mi (dxb,i/dt) = Lxb,i-1 + Vyb,i+1 - Lxb,i - Vyb,i
et

ya,i = Ga(P, xa,i , xb,i )


yb,i = Gb(P, xa,i , xb,i )

donc on peut liminer les ya, yb

=> xa,i(t+1) = LKixa,i-1(t) - LKixa,i(t) + VKi Ga(P,xa,i+1(t),xb,i +1(t)) - VKi Ga(P,xa,i(t),xb,i (t))
et idem pour les xb
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

113

RESEAU DE PLATEAU
xa,i-1(t)
xb,i-1(t)
L(t)
V(t)

xa,i(t)
xb,i(t)

xa,i(t+1)
Ga

xb,i(t+1)

Gb
P(t)
Ga

xa,i+1(t)
xb,i+1(t)

Gb

Rseau spcial
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

114

RESEAU GLOBAL
P(t)

xa,1

L(t)

xb,n

V(t)

xa,1
xb,1
.
.
.

.
.
.

xa,n
xb,n
retard
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

115

RESULTATS D'APPRENTISSAGE

rseau entran sur simulateur v.s. colonne relle

rseau aprs recalage par apprentissage sur donnes relles


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

116

UTILISATION

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

117

CONCLUSIONS ET REFERENCE
La connaissance sur le procd permet de dfinir une
architecture adapte, donc un rseau plus simple
L'existence d'un simulateur bas sur des quations
physique permet de raliser un bon apprentissage initial
Le modle neuronal obtenu a les avantages suivants :
recalage facile sur la colonne relle
excution beaucoup plus rapide que le simulateur
physique
Rfrence sur cette application :
"From Knowledge-based Models to Recurrent Networks: an Application to an
Industrial Distillation Process" , Ploix J.-L., Dreyfus G., Corriou J.-P. & Pascal D.,
NeuroNmes 94 (1994).
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

118

EXEMPLE DE
COMMANDE NEURONALE
Commande du volant d'un vhicule 4x4 autonome
(application ralise par la socit Sagem et le laboratoire dlectronique de lESPCI)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

119

ARCHITECTURE GLOBALE
DU SYSTEME

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars 2011

120

MODELE HYBRIDE DU SYSTEME

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars 2011

121

mars
2011
avril 2013

122

IDENTIFICATION

Algorithme semi-dirig
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

APPRENTISSAGE DE
LA COMMANDE NEURONALE

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars 2011

123

COMMANDE PAR RETOUR DETAT

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars 2011

124

REGULATEUR NEURONAL
A MODELE

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars 2011

125

REFERENCES SUR
CETTE APPLICATION
"Real-time control of an autonomous vehicle: a neural network approach to the
path-following problem", Rivals I., Personnaz L., Dreyfus G. & Canas D.,

5th International Conference on Neural Networks and their Applications


(NeuroNmes 93), p. 219-229 (1993).
"Modeling and control of mobile robots and intelligent vehicles by neural
networks", Rivals I., Canas D., Personnaz L. & Dreyfus G., IEEE Conference on
Intelligent Vehicles, 24-26 octobre 1994, Paris, pp. 137-142 (1994).
"Modlisation et commande de processus par rseaux de neurones ; application au
pilotage dun vhicule autonome", Rivals I., Thse de Doctorat de lUniversit Paris
6, (1995).

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars 2011

126

Un rseau boucl trs particulier :


le rseau de Hopfield
Rseau totalement connect et sans aucune entre

N neurones (ici N=5)


sorties binaires (+1 ; -1)

Connections symtriques
Pas dauto-activation : Wii = 0
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

127

Origine historique du
rseau de Hopfield
Neural networks and physical systems with emergent
collective computational properties, Hopfield and
Tank, PNAS, 1982.

J.J. Hopfield

Inspiration de la physique statistique : modle des verres de spin


de Ising, savoir pour N atomes avec spins Si
{-1 ; +1}, chacun
contribue au champ global par hi = j(JijSj) avec Jij = influence de
atome i sur atome j
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

128

Fonctionnement rseau de Hopfield


Mmoire auto-associative :
initialisation des sorties
volution dynamique stabilisation (dans un attracteur)

tat initial
(pattern bruit)

tat final

volution

Plusieurs modes volutions possibles :


synchrone vs asynchrone(s)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

129

Convergence rseau de Hopfield


En mode asynchrone, la convergence est garantie par
lexistence (si Wij=Wji) dune fonction de Lyapunov qui ne
peut que dcrotre au fil des itrations :

E=

1
(Wij Si S j )

2 i< j

En effet, un neurone ne change de sortie que si Si(t) et (WijSj(t))


sont de signes opposs. Si le neurone i est inchang, E=Cte. Sinon :
E =

1
2

(W ij S i (t + 1 )S

i< j

(t + 1 )) (W ij S i (t )S j (t )) =
i< j

1
(S i ( t + 1) S i ( t ) ) (W ij S
2
j

(t ))

E forcment <0 si chgt tat, alors que E born par E > -i<jWij
convergence vers un point fixe (minimum local attracteur)
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars 2011

130

Rseau de Hopfield et thorie des


systmes dynamiques

Un Hopfield efficace est un systme dynamique


dont on a choisi les attracteurs, et fait en sorte que leurs
bassins dattraction soient les plus larges possible
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

131

Apprentissage Hopfield
La mmorisation comme attracteurs dun ensemble de

motifs (patterns) {(Pi)k, k=1,, K} est TRES SIMPLE :

Wij = k PikPjk (~ rgle Hebb)

tous les Pm stables sous certaines conditions :


j(Pim+
km (PikPjk Pjm))
j(WijPjm)=
jk (PikPjk Pjm)=
= NPim +
km (Pikj(Pjk Pjm))

En pratique a ne marche bien que si


le taux de chargement K/N < 0.138 !!
(voire moins si motifs corrells entre eux)

De plus, il se forme des attracteurs parasites


Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

132

Hopfield et attracteurs parasites


Par symtrie, tous les motifs inverses sont aussi
mmoriss :
stockage de

mmorisation de

Dautres sont des combinaisons linaires des patterns


mmoriss, et autres tats poubelles

ventuellement les dsapprendre par Wij=-


SiSj avec <<1
ou mieux : orthogonaliser les motifs
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

133

Applications rseau Hopfield


Du fait de la contrainte nbMotifs<<nbNeurones,
et des pb dattracteurs parasites, assez peu
dapplications pratiques de type mmoire
auto-associative
Par contre, en faisant en sorte que la fonction de
Lyapunov du Hopfield corresponde qqch que lon
veut minimiser, quelques applications :
En optimisation combinatoire (pb NP-complets) :
type voyageur de commerce
affectation de ressources des tche, ordonnancement,
En amlioration dimages

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

134

QUELQUES REFERENCES
SUR LES RESEAUX NEURONAUX
Des livres :
Rseaux de neurones : mthodologie et applications,
G. Dreyfus et al., Eyrolles, 2002.
Rseaux de neurones formels pour la modlisation, la
commande, et la classification, L. Personnaz et I. Rivals, CNRS
ditions, collection Sciences et Techniques de lIngnieur, 2003.
Rseaux de neurones : de la physique la psychologie,
J.-P. Nadal, Armand Colin, 1993.
Sur le Web :

La FAQ sur les rseaux neuronaux :


http://www.faqs.org/faqs/ai-faq/neural-nets/part1/

Les pages du groupe neuronal de lUTC de Compigne :


http://www.hds.utc.fr/~grandval/rna/
Les pages du cours neuronal de lINSA de Rouen :
http://asi.insa-rouen.fr/~scanu/coursRNA/
Voir aussi les liens depuis ma homepage :
http://www.ensmp.fr/~moutarde/rech_neuronal.html
Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

mars
2011
avril 2013

135