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://www.ensmp.fr/~moutarde Introduction aux rseaux de neurones
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 1

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

Janvier 2010

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

Janvier 2010

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 Janvier 2010 4

NEURONES BIOLOGIQUES
corps cellulaire synapse

dendrite axone

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


Introduction aux rseaux de neurones
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 5

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

Janvier 2010

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
Janvier 2010 7

Fabien Moutarde, CAOR, MINES ParisTech

NAISSANCE DU NEURONE FORMEL


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

Oi

Wij

+1 -1

Oj

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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

Oi Wij

Oj

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

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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

Janvier 2010

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 Janvier 2010 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

Janvier 2010

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

Janvier 2010

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 Janvier 2010 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

Janvier 2010

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 Janvier 2010 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

Janvier 2010

17

LE NEURONE FORMEL
ei Wij
ei : entres du neurone Aj : activation du neurone Oj : sortie du neurone

h f g
Aj

Oj

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 Janvier 2010 18

LE NEURONE SOMMATEUR
PRINCIPE FONCTIONS D'ACTIVATION Fonction seuil (Heaviside) ou signe
--> neurones binaires

Fonction sigmode ei Wij


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

Oj

--> neurones les plus utiliss

Identit
--> neurones linaires

Saturation

Gaussienne
W0j = "biais"
Introduction aux rseaux de neurones
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 19

LE NEURONE DISTANCE
ei
e1 W1 j fonction d'entre : h ... , ... = (ei Wij )2 i ek Wkj
DIST

Wij Oj f

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

Janvier 2010

20

LES NEURONES POLYNOMIAUX

ei Wij

Oj

Par exemple, neurone d'ordre 2 : O

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

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

21

NEURONES DE TYPE NOYAU


fonction d'entre :

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

Id

Oj

avec K symtrique et positif au sens de Mercer : tq 2(x)dx < , alors K(u,v)(u)(v)dudv0


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 / 22) 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 Janvier 2010 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

Janvier 2010

23

RESEAUX NON BOUCLES


Y1 Y2 5

Les neurones peuvent tre ordonns d'une faon telle qu'il n'y a aucune connection "vers l'arrire"
(terme anglais : "FEEDFORWARD" neural network)

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

Le temps n'intervient pas comme variable fonctionnelle


(i.e. le rseau n'a pas de mmoire et ses sorties ne dpendent pas de son pass)

X1

X2

X3

X4

neurones d'entre
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 24

Introduction aux rseaux de neurones

RESEAUX NON BOUCLES A COUCHES


X1 X2 X3
couche d'entre couches caches (0 N)

Y1

Y2
couche de sortie

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

Janvier 2010

25

RESEAUX BOUCLES
sortie sortie
2

x2
1

x3

x2(t-1) x2(t)
1

0 0 0

x3(t) f

entre x1

x1(t)

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

entre

A chaque connection est associ un dlai

Forme quivalente
Introduction aux rseaux de neurones
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 26

RESEAUX BOUCLES : forme canonique


sorties yj(t) ..........
xk(t) variables d'tat

........
1

Rseau statique
............ ui(t) entres externes ........
xk(t-1) variables d'tat

....... 1

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 Janvier 2010 27

RESEAU DE HOPFIELD
x2 x3
1

1 1 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 Janvier 2010 28

UTILISATION D'UN RESEAU


entre x rseau
y=F

sortie y=

poids W

(x) A,W

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 Janvier 2010 29

L'APPRENTISSAGE
PLAN

Gnralits Apprentissage supervis Apprentissage non supervis Mthodologie pour l'apprentissage

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

30

GENERALITES
MODES D'APPRENTISSAGE
SUPERVISE exemples : (x1, d1) ... (xm, dm) Architecture : A Poids initiaux : W NON SUPERVISE exemples : x1, ..., xm 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)

- Les images des exemples sont bien groupes

- Les images des nouveaux exemples sont "proches" de leurs semblables

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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

Janvier 2010

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
p

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 )
Fabien Moutarde, CAOR, MINES ParisTech

Introduction aux rseaux de neurones

Janvier 2010

33

SEPARATION LINEAIRE PAR UN SEUL NEURONE


la sparation linaire

W.X

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

34

APPRENTISSAGE DU PERCEPTRON
X W
W.X

Wk.X> 0 y

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 Janvier 2010 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

Janvier 2010

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

Janvier 2010

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

Janvier 2010

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 Janvier 2010 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 Janvier 2010 40

La rtropropagation du gradient (2)


i
f yi

wij

j
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)
si neurone j est cach

j = (k Wjkk)f'(j)

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 Janvier 2010 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

Janvier 2010

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 Janvier 2010 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 Janvier 2010 44

METHODOLOGIE POUR lAPPRENTISSAGE SUPERVISE DE RESEAUX NEURONAUX A COUCHES

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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 Janvier 2010 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 Janvier 2010 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 Janvier 2010 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 Janvier 2010 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

Janvier 2010

50

AUTRES TECHNIQUES NEURONALES SUPERVISEES

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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 Janvier 2010 52

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

neurones noyau

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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

Janvier 2010

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

Janvier 2010

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

Janvier 2010

56

LES CARTES TOPOLOGIQUES (2)


L'ALGORITHME DE KOHONEN neurones distance en sortie connexion totale neurone de sortie espace dpart systme de voisinages sur la carte de sortie "projection non linaire"
X1 X2 Entres Xn neurones de sortie

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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 Janvier 2010 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 W i. 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

Janvier 2010

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 Janvier 2010 60

ETUDE DE CAS

RECONNAISSANCE DE MODULATION

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

61

RECONNAISSANCE DE MODULATION (1)


train binaire modulateur canal de transmission intercepteur

bruit
filtre de rception signal inconnu
modle neuronal

pr-traitement

modle classique : PPV ADB Bayesien

type de modulation

dmodulateur

train binaire

classification

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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 Janvier 2010 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

Janvier 2010

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 Janvier 2010 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

Janvier 2010

66

RECONNAISSANCE DE MODULATION (6)


cas d'un apprentissage constructif (Adaptive BackPropagation)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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 Janvier 2010 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

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

69

LES RESEAUX BOUCLES


RESEAU STATIQUE Y1 Y2 5 1 2 3 4 RESEAU BOUCLE (ou RECURRENT)

X1

X2

X3
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 70

Introduction aux rseaux de neurones

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 Janvier 2010 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

Janvier 2010

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

Janvier 2010

73

FONCTIONNEMENT DES RESEAUX BOUCLES


sorties au temps n : Y(n) variables d'tat au temps n X(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) sorties au temps n-2 : Y(n-2) variables d'tat au temps n-2 X(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

Janvier 2010

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 Janvier 2010 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 Janvier 2010 76

PARAMETRES SPECIFIQUES : SCHEMA

Horizon Nt = 4
W(n) W(n) W(n)

erreurs prises en compte sur plage Nc = 2

W(n) e3 e4 W(n+4)

squence d'apprentissage

n+1

n+2

n+3 n+4

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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

Janvier 2010

78

SCHEMAS DES TYPES D'ALGORITHMES


e2
n n+1 n+2

e3
n+3

algorithme dirig

e2
n n+1 n+2

e3
n+3

algorithme semi-dirig

e2
n n+1 n+2

e3
n+3

algorithme non dirig

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


Introduction aux rseaux de neurones
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 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

Janvier 2010

80

FORMULES MATHEMATIQUES DE L'APPRENTISSAGE


W(t+Nt) = W(t) - gradW(E) avec E = yn xn un x n-1 dy Fy Fy dxn-1 n = + dw w x dw Fx Fx dxn-1 dxn = + dw w x dw
= 0 ==> formule usuelle, calculable par rtropropagation

(Y-D)2

=F

Si dirig,

dxn-1 dw

Si semi-dirig,

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 Janvier 2010 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 Janvier 2010 82

RETROPROPAGATION SUR UN HORIZON


U(n) U(n+1) D(n+1) U(n+2) D(n+2)

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


X(n)

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

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

dE/dXn

dE/dXn+1

W1

W2 W = W1 + W2 + W3

W3

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

83

PROPAGATION AVANT
U(n) U(n+1) D(n+1) U(n+2) D(n+2)

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


X(n)

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

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

dXn-1/dW

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 Janvier 2010 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

Janvier 2010

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

Janvier 2010

86

FILTRE TRANSVERSE NEURONAL


u1(t)
retard retard

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

. . .
retard

u1(t-n1) u2(t)

Rseau statique

Y(t)

u2(t)
retard

u2(t-1)

retard

. . .

u2(t-n2)

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

87

TYPES D'IDENTIFICATION NEURONALE


rseau "rcurrent"
U(t-1) X(t-1)

rseau de neurones "statique"


retard

YN(t) + -

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 Janvier 2010 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 Janvier 2010 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

Janvier 2010

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 Janvier 2010 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

Janvier 2010

92

OU L'ON RETROUVE LE "CREDIT ASSIGNMENT"


???

commandes ncessaires ??

sorties dsires pour le procd

commande

Procd

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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 Janvier 2010 94

APPRENTISSAGE INDIRECT DE MODELE INVERSE


modle de rfrence

consigne

rseau commande

action

procd

sorties -

rtropropagation

modle neuronal (fix) de la dynamique du procd

Technique la plus couramment utilise


Introduction aux rseaux de neurones
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 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

Janvier 2010

96

AUTRE UTILISATION DU NEURONAL EN COMMANDE


perturbations REGULATEUR A MODELE a
CORRECTEUR
+

y
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

Janvier 2010

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

Janvier 2010

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

Janvier 2010

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

Janvier 2010

100

EXEMPLES PRESENTES

Identification boite noire Identification hybride Commande

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

101

EXEMPLE D'IDENTIFICATION BOITE NOIRE


Evaporateur de sucrerie
(tude ralise pour Cegelec par Alcatel-Alsthom Recherche)

Q13 Q1R

Q23

Q33

Q43

Q53

bac de stockage

Bx0 QJ0 Bx1 QJD Bx2 Bx3 Bx4 Bx5

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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

Janvier 2010

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

Janvier 2010

104

PREDICTEUR NEURONAL : RESULTATS


Prdiction 1 pas de temps en avance
3 2 1 0 -1 -2 -3 0 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 Janvier 2010 105

MODELE PARALLELE

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

Bx3(t+1)

Modle dynamique
Bx5(t+1)

Pour prdire volution long terme, ou faire simulation off-line


Introduction aux rseaux de neurones
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 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 Janvier 2010 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 Janvier 2010 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 Janvier 2010 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 Janvier 2010 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

Janvier 2010

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
Janvier 2010 112

Fabien Moutarde, CAOR, MINES ParisTech

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)

ya,i+1 V yb,i+1

xa,i L xb,i

L : flux de liquide V : flux de vapeur

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 Janvier 2010 113

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

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

xa,i(t+1)
Ga Gb Ga

xb,i(t+1)

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

Rseau spcial
Introduction aux rseaux de neurones
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 114

RESEAU GLOBAL
P(t) L(t) V(t)

xa,1 xb,n

xa,1 xb,1
. . . . . .

xa,n xb,n
retard
Introduction aux rseaux de neurones
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 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 Janvier 2010 116

UTILISATION

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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 Janvier 2010 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

Janvier 2010

119

ARCHITECTURE GLOBALE DU SYSTEME

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

120

MODELE HYBRIDE DU SYSTEME

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

121

IDENTIFICATION

Algorithme semi-dirig
Introduction aux rseaux de neurones
Fabien Moutarde, CAOR, MINES ParisTech Janvier 2010 122

APPRENTISSAGE DE LA COMMANDE NEURONALE

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

123

COMMANDE PAR RETOUR DETAT

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

124

REGULATEUR NEURONAL A MODELE

Introduction aux rseaux de neurones

Fabien Moutarde, CAOR, MINES ParisTech

Janvier 2010

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

Janvier 2010

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 Janvier 2010 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 Janvier 2010 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 Janvier 2010 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
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 Janvier 2010 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 Janvier 2010 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(WijPjm)=jk (PikPjk Pjm)=j(Pim+km (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 Janvier 2010 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 Janvier 2010 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 Janvier 2010 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 Janvier 2010 135