Professional Documents
Culture Documents
RESEAUX DE NEURONES
Fabien MOUTARDE
Centre de Robotique (CAOR)
Ecole des Mines de Paris
Fabien.Moutarde@ensmp.fr
http://www.ensmp.fr/~moutarde
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 1
PLAN GENERAL
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 2
PRESENTATION GENERALE
1) INTRODUCTION - HISTORIQUE
4) EXEMPLE
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 3
HISTORIQUE
corps cellulaire
synapse
dendrite
axone
FONDEMENTS BIOLOGIQUES
FORMATION DU CERVEAU - APPRENTISSAGE - MEMOIRE
• EVOLUTION ET APPRENTISSAGE :
interaction avec l'extérieur
évolution des synapses qui peuvent
• dégénérer
• se stabiliser de façon +/- réversible (mémoire)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 6
MODELISATION DES NEURONES
Fréquence f
Entrées
• potentiel de membrane
q ≈ ∑ Ci f i
i
f
~ 500 Hz
sigmoïde
θ Potentiel de
membrane
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 7
Oj
Σ
+1
Oi -1
Wij
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 8
MODELE DE L'APPRENTISSAGE
• Règle de Hebb (1949)
Oi Oj
Wij
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 9
PREMIERS "RESEAUX DE
NEURONES FORMELS"
• LE PERCEPTRON (Rosenblatt, 1957)
• ADALINE (Widrow, 1962)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 10
LIMITES DES PREMIERS MODELES
• PERCEPTRONS, le livre de Minsky et Papert (1969)
Etude approfondie du perceptron et de ses limites
intrinsèques :
- certaines fonctions booléennes impossibles à
apprendre
(XOR, ...)
- limitation aux séparations linéaires
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 11
LE RENOUVEAU DU NEURONAL
• La mécanique statistique au secours des
réseaux de neurones (J.J. Hopfield, 82)
--> intérêt de la dynamique des réseaux totalement connectés
• LA RETROPROPAGATION DU GRADIENT et la
résolution du Credit Assignment Problem (Rumelhart 86,
Le Cun 85) : apprentissage de réseaux à couches
cachées.
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 12
Les réseaux de neurones
aujourd’hui
• Une myriade de modèles connexionnistes et
d'algorithmes d'apprentissage (et des milliers de
thèses!)
• Beaucoup de produits logiciels (et de freewares) pour
développer des réseaux neuronaux
• Quelques chips spécialisés
Des outils mathématiques pour l'ingénieur (souvent
extension non-linéaire de techniques classiques) à mettre
sur le même plan que :
- classifieurs usuels (Arbres de Décisions Binaire, Plus Proche
Voisin, ...)
- splines et autres outils d'interpolation
- modèles ARMA, ...
- filtres linéaires adaptatifs, ...
- contrôleurs PID, ...
...
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 13
DOMAINES D'APPLICATIONS
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 14
EXEMPLES D'APPLICATIONS
• reconnaissance de caractères (EasyReader), de visage
(Mimetics), de la parole, de l'écriture (ordinateur sans
clavier), de signature acoustique (Thomson), d'objets
(Silac: profilés d'aluminium...
• diagnostic (allumage voiture, Renault ; photocopieur,
Canon; circuits VLSI, IBM...)
• compression de données (JVC)
• prévision de consommation d'eau (Lyonnaise, CGE),
d'électricité (EDF), de trafic routier (Cofiroute), de cours
boursiers...
• identification de procédé industriel (Air liquide, Elf
Atochem, ciments Lafarge...)
• commande de véhicule (Sagem)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 15
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 16
LE NEURONE FORMEL
ei : entrées du neurone
ei Aj : activation du neurone
Wij Oj : sortie du neurone
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 17
LE NEURONE SOMMATEUR
PRINCIPE FONCTIONS D'ACTIVATION
• Fonction seuil (Heaviside) ou signe
--> neurones binaires
• Fonction sigmoïde
--> neurones les plus utilisés
Oj
ei Σ f
Wij • Identité
--> neurones linéaires
n j
• Saturation
O j = f W0 j + ∑ Wij ei
i =1
• Gaussienne
W0j = "biais"
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 18
LE NEURONE DISTANCE
e1 W1 j
fonction d'entrée : h ... , ... = ∑ (ei − Wij )2
ei i
Wij ek Wkj
fonction d'activation = Identité ou gaussienne
Oj
DIST f
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 19
Oj
ei
P f
Wij
Par exemple, neurone d'ordre 2 : O j = f ∑
(W ij W e e )
kj i k
i,k
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 20
NEURONES DE TYPE NOYAU
fonction d'entrée : h(e, w) = K (e, w)
avec K symétrique et « positif »
e au sens de Mercer : ∀ψ tq ∫ ψ2(x)dx < ∞,
w
alors ∫ K(u,v)ψ
ψ(u)ψ
ψ(v)dudv≥≥0
Oj fonction d'activation = identité
K Id
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 22
RESEAUX NON BOUCLES
2
Le temps n'intervient pas
les neurones 1, 3 et 4
1
sont dits "cachés" comme variable fonctionnelle
(i.e. le réseau n'a pas de mémoire et
ses sorties ne dépendent pas de son
passé)
X1 X2 X4 neurones
X3 d'entrée
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 23
X1 Y1
X2
Y2
X3 couche de sortie
couche d'entrée
couches cachées (0 à N)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 24
RESEAUX BOUCLES
sortie
sortie
2
x3 x2(t-1)
x2
1 x2(t)
f f f
Σ Σ
1 Σ 1 Σ
0 x3(t)
f
0 0
1 Σ 1 1 1
x3(t-1)
entrée x1 x1(t)
x2(t-2)
entrée x2(t-1)
A chaque connection
est associé un délai
Forme équivalente
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 25
RESEAUX BOUCLES :
forme canonique
sorties yj(t)
xk(t)
variables d'état
..........
........
........
............
ui(t)
xk(t-1)
entrées externes variables d'état
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 26
RESEAU DE HOPFIELD
x3
x2
1
f f
Σ 1 Σ
1 1
1 1 1
1
1 1
f 1
f
Σ
Σ
Σ
1
x1 x4
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 28
L'APPRENTISSAGE
PLAN
• Généralités
• Apprentissage supervisé
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 29
GENERALITES
MODES D'APPRENTISSAGE
SUPERVISE NON SUPERVISE
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 30
L'APPRENTISSAGE SUPERVISE
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 31
GENERALITES ET FORMALISME
• L'apprentissage supervisé est l'adaptation des coefficients
synaptiques d'un réseau afin que pour chaque exemple, la
sortie du réseau corresponde à la sortie désirée.
E (W ) = ∑ (Y − Dp )
2
p
p
L'apprentissage revient à déterminer W =ArgMin(E).
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 32
SEPARATION LINEAIRE PAR
UN SEUL NEURONE
la séparation linéaire
nn
_m
ine
s1W.X
_p
s4
_v
3.p
df
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 33
APPRENTISSAGE DU PERCEPTRON
X W Wk.X> 0
Wk.X < 0
W.X
y
loi d'apprentissage :
Wk+1 = Wk + dX si X mal classé (d : sortie désirée)
Wk+1 = Wk si X bien classé
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 34
REGLES DELTA
AUTRES REGLES D'APPRENTISSAGE POUR LA
SEPARATION LINEAIRE PAR UN NEURONE
• La règle 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)
SEPARATIONS LINEAIRES
COMPARAISON DES SOLUTIONS DES 3 ALGORITHMES
Perceptron
Delta généralisée
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 36
Nécessité de neurones “cachés”
CLASSE 2
CLASSE 1
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 37
LE PROBLEME DE
"CREDIT ASSIGNMENT"
Comment connaître la sortie désirée
pour un neurone caché ?
X
yi wij yj sortie désirée
Σ Σ
d
LA RETROPROPAGATION DU GRADIENT
(en anglais BACKPROPAGATION)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 38
La rétropropagation du gradient (1)
Méthode astucieuse de calcul du
gradient de la fonction de coût en utilisant
la dérivation composée pour rétropropager" l'erreur.
La fonction de coût est E(t) = Σp (Yp-Dp)2
où p parcourt l'ensemble d'apprentissage
σi f
yi σj f
yj σk f dEp/dWij = (dEp/dσj)(dσj/dWij) = (dEp/dσj) yi
wij wjk
Et δj = (dEp/dσj) = (dEp/dyj)(dyj/dσj)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 41
LE THEOREME
D'APPROXIMATION UNIVERSELLE
Cybenko 89
• Pour toute fonction F continue définie et
bornée sur un ensemble borné, et pour
tout ε, il existe un réseau à 1 couche
cachée de neurones sigmoïdes qui
approxime F à ε près.
…Mais on ne sait pas commment le trouver à coup sûr,
et ce réseau a peut-être énormément de neurones cachés...
Sussman 92
• Les réseaux à une couche cachée forment une
famille d'approximateurs parcimonieux : à nombre
égal de paramètres on approxime correctement
plus de fonctions qu'avec des polynômes
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 42
Caractéristiques des
réseaux neuronaux multicouches
AVANTAGES
• Approximateur universel parcimonieux
(et classifieur universel)
• Rapidité d'exécution (++ si multi-processeurs ou chip)
• Robustesse des solutions, résistance au bruit des données
• Facilité de développement
INCONVENIENTS
• Le choix de l'architecture est critique
• Le temps d'apprentissage peut être long
• Présence de minima locaux de la fonction de coût
• Difficultés d'interprétation des résultats
en terme de connaissance
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 43
METHODOLOGIE POUR
l’APPRENTISSAGE
SUPERVISE DE RESEAUX
NEURONAUX A COUCHES
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 44
Bases d’apprentissage, de test,
et de validation
• Espace des entrées possibles infini (si valeurs continues),
ensemble d'apprentissage = ss-ensemble (≈≈ échantillonage)
• Erreur nulle sur tous les exemples ≠ bons résultats sur
tout l'espace des entrées possibles (cf erreur de
généralisation ≠ erreur empirique…)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 45
METHODOLOGIE :
Favoriser bonne généralisation
• éviter d'avoir trop de paramètres libres (nombre de poids)
par rapport au nombre d'exemples d'apprentissage
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 46
Initialisation, pas de gradient,
sélection de modèle
• initialiser les poids à des valeurs petites et
inversement proportionnelles au nombre de
connections entrant dans le même neurone
état initial presque linéaire)
(
• prendre un pas de gradient plutôt constant et
petit, ou adaptatif
⇒ favorise réseaux de complexité “minimale”
• SELECTION DE MODELE:
essayer successivement différentes architectures
avec un nombre croissant de neurones cachés
(ou bien adopter un algorithme "constructif")
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 47
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 49
RESEAU LVQ
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 50
METHODES A NOYAUX
METHODES A NOYAUX : (RBF, Potentiels, ondelettes, SVMs)
Σ f
neurones
à noyau
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 51
L'APPRENTISSAGE
NON SUPERVISE
Motivation
- Pour “organiser”/analyser/catégoriser un grand
volume de données inexploitable tel quel
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 52
TECHNIQUES D'APPRENTISSAGE
NON SUPERVISE
• K-means
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 53
MOTIVATIONS EN CLASSIFICATION
• Faire du clustering, i.e. regrouper les exemples en paquets
"similaires" pour définir des classes
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 54
LES CARTES TOPOLOGIQUES (2)
L'ALGORITHME DE KOHONEN
Entrées
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 55
i i i
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 56
L'ALGORITHME DE KOHONEN (1)
• l'apprentissage :
repérer la cellule la plus active (la plus proche)
essayer de la rendre de plus en plus active
EN MEME TEMPS QUE SON VOISINAGE.
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 57
• Convergence de l'algorithme :
conditions sur α(t) (1/t convient)
• Amélioration de la gaussienne
(réduction au seul paramètre α)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 58
ETUDE DE CAS
RECONNAISSANCE DE MODULATION
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 59
RECONNAISSANCE DE
MODULATION (1)
train
binaire modulateur canal de transmission intercepteur
bruit
filtre de pré-traitement
réception
signal inconnu
modèle neuronal
type de train
modulation démodulateur
modèle classique : PPV binaire
ADB
Bayesien
classification
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 60
RECONNAISSANCE DE
MODULATION (2)
• fort S/N
reconnaissance
visuelle possible
• faible S/N
reconnaissance
visuelle impossible
• Nécessité d'un
classifieur
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 61
RECONNAISSANCE DE
MODULATION (3)
MODULATIONS A RECONNAÎTRE
• FSK2, FSK4, FSK8
• MDP2, MDP4, MDP8 10 types de modulation
• MAQ 16, MAQ64
• OQPSK, MSK
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 62
RECONNAISSANCE DE
MODULATION (4)
• regroupement des modulations en 3 "méta-
classes" naturelles
– FSK2, FSK4, FSK8, OQPSK, MSK
– PSK2, PSK4, PSK8 ==> 4 problèmes plus simples
– QAM 16, QAM 64
itérations
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 63
RECONNAISSANCE DE
MODULATION (5)
• cas d'un apprentissage avec pas de
gradient un peu trop grand
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 64
RECONNAISSANCE DE
MODULATION (6)
• cas d'un apprentissage constructif
(Adaptive BackPropagation)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 65
RECONNAISSANCE DE
MODULATION (7)
metaclass 1
. metaclass 2
. metaclass 3
. 2fsk
2fsk
4fsk
4fsk
8fsk 8fsk
oqpsk 2psk
4psk
msk 8psk
16qam
. 2psk 64qam
4psk oqpsk
. 8psk msk
.
16qam
64qam
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 67
1 2 3 4
X1 X2 X3
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 68
Forme canonique
d’un réseau bouclé
U(t) Y(t)
Réseau
non
X(t-1) bouclé X(t) • X est l'état
du réseau
Retard
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 69
ETAT ET ORDRE
D'UN RESEAU BOUCLE
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 70
DYNAMIQUE
DES RESEAUX BOUCLES
• Un réseau bouclé à temps discret d'ordre K peut être
représenté par K équations aux différences, couplées,
d'ordre 1, mettant en jeu K variables (état) en plus des
N variables d'entrée.
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 71
FONCTIONNEMENT
DES RESEAUX BOUCLES
variables d'état
sorties au temps n : Y(n) au temps n X(n)
Réseau statique
entrées externes au temps n : U(n)
variables d'état X(n-1)
sorties au temps n-1 : Y(n-1) au temps n-1
Réseau statique
entrées externes au temps n-1 : U(n-1)
variables d'état
sorties au temps n-2 : Y(n-2) au temps n-2 X(n-2)
Réseau statique
entrées externes au temps n-2 : U(n-2)
variables d'état
au temps n-3 X(n-3)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 72
APPRENTISSAGE DES
RESEAUX RECURRENTS
L'apprentissage des réseaux bouclés
se fait sur des séquences d'apprentissage
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 73
PARAMETRES SPECIFIQUES :
DEFINITIONS
• Horizon :
nombre Nt d'itérations entre 2 modifications des poids
(donc nb de "copies" du réseau statique mises bout à bout)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 74
PARAMETRES SPECIFIQUES :
SCHEMA
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 75
CATEGORIES
D'ALGORITHMES
• ALGORITHMES DIRIGES :
état entrant dans chaque bloc = valeurs désirées.
• ALGORITHMES SEMI-DIRIGES :
état entrant dans premier bloc de l'horizon = valeurs désirées,
état entrant dans les suivants = état sortant du précédent.
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 76
SCHEMAS DES TYPES
D'ALGORITHMES
e2
e3 algorithme dirigé
n n+1
n+2 n+3
e2 e3 algorithme semi-dirigé
n n+1 n+2 n+3
e2
e3
algorithme non dirigé
n n+1 n+2 n+3
COMPARAISON DES
TYPES D'ALGORITHMES
• Si certaines variables d'état n'ont pas de valeurs désirées
contenues dans la base d'apprentissage (cas des états
purement internes), alors on ne peut faire que du non dirigé.
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 78
FORMULES MATHEMATIQUES
DE L'APPRENTISSAGE
W(t+Nt) = W(t) - λ gradW(E) avec E = Στ (Yτ-Dτ)2
dyn ∂Fy ∂Fy dxn-1
= + •
yn un dw ∂w ∂x dw
=F dxn ∂Fx ∂Fx dxn-1
xn x n-1 = + •
dw ∂w ∂x dw
dxn-1
Si dirigé, = 0 ==> formule usuelle, calculable par rétropropagation
dw
dxn-1
Si semi-dirigé, = 0 au début de chaque horizon ==> on peut rétropropager
dw à travers Nt répliques successives du réseau statique
Si non dirigé, il faut faire un propagation avant du gradient (mais on peut quand
même calculer la Jacobienne du réseau par technique type rétropropagation,
avec une passe par sortie)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 79
IMPLEMENTATIONS POSSIBLES
• Pour algo dirigé, BP à chaque pas pour lequel on prend
erreur en compte, mais modification des poids que tous les
Nt pas.
• propagation avant
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 80
RETROPROPAGATION
SUR UN HORIZON
U(n) U(n+1) D(n+1) U(n+2) D(n+2)
dE/dXn dE/dXn+1
PROPAGATION AVANT
U(n) U(n+1) D(n+1) U(n+2) D(n+2)
δW2 δW3
Le calcul du δW et du dXk+1/dW dans chaque bloc peut se faire :
- soit par calcul direct,
- soit par plusieurs rétropropagations
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 82
IDENTIFICATION NEURONALE
• Types de modèle :
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 83
INTERET DU NEURONAL
EN IDENTIFICATION ?
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 84
FILTRE TRANSVERSE NEURONAL
u1(t)
u1(t)
retard u1(t-1)
retard
u1(t-2)
.
.
.
retard Y(t)
u1(t-n1) Réseau
u2(t)
statique
u2(t)
retard u2(t-1)
.
.
.
retard
u2(t-n2)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 85
TYPES D'IDENTIFICATION
NEURONALE
réseau "récurrent"
U(t-1)
réseau de neurones YN(t) +
X(t-1) "statique" -
retard
• output error
ym(k) = a1 ym(k-1) + ... + an ym(k-n) + b0 u(k) + b1
u(k-1) + ... + bn u(k-n)
MODELE HYBRIDE
CONNAISSANCE/NEURONAL
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 88
CONSEILS PRATIQUES POUR
L’IDENTIFICATION NEURONALE
• non-linéaire ==> pas de théorème de superposition
==> les séquences d'apprentissage doivent bien couvrir
le domaine de fonctionnement
COMMANDE NEURONALE
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 90
OU L'ON RETROUVE LE "CREDIT
ASSIGNMENT"
???
commandes sorties
nécessaires ?? désirées pour
le procédé
commande Procédé
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 91
APPRENTISSAGE DIRECT DE
MODELE INVERSE
action sortie
procédé
+ réseau
- commande
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 92
APPRENTISSAGE INDIRECT DE
MODELE INVERSE
modèle de
référence
+
consigne réseau action sorties
procédé
commande -
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 93
APPRENTISSAGE PAR
RENFORCEMENT
modèle de
référence
"évaluation"
=>
renforcement/inhibition
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 94
AUTRE UTILISATION DU
NEURONAL EN COMMANDE
perturbations
REGULATEUR A MODELE
a y
CORRECTEUR PROCEDE
+
y0
(consigne)
δy
+ MODELE a = grandeurs réglantes
NEURONAL y = grandeurs réglées
-
δy = perturbations reconstituées
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 95
REMARQUES SUR
LA COMMANDE NEURONALE
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 96
APPLICATIONS ET EXEMPLES
DOMAINES DE PREDILECTION
• Prédiction empirique (consommation d'eau,
d'électricité, trafic routier, nb de passagers, ...)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 97
APPLICATIONS
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 98
EXEMPLES PRESENTES
• Identification hybride
• Commande
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 99
EXEMPLE D'IDENTIFICATION
“BOITE NOIRE”
Evaporateur de sucrerie
(étude réalisée pour Cegelec par Alcatel-Alsthom Recherche)
Q1R
bac de Bx0
stockage
QJ0 Bx5
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 100
BASE D'APPRENTISSAGE
3 entrées externes :
• QJ0 (commande)
• Bx0, Q33 (perturbations mesurées)
2 sorties :
• Bx3 et Bx5
(concentrations effectivement mesurées)
séquence d'apprentissage :
série de 30 échelons 3D aléatoires sur les entrées
150 pas de temps entre 2 échelons
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 101
PREDICTEUR NEURONAL
QJ0(t)
Bx0(t) Bx3(t+1)
Q33(t)
Réseau
à
couches Bx5(t+1)
Bx3(t)
Bx5(t)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 102
PREDICTEUR NEURONAL :
RESULTATS
Prédiction à 1 pas de temps en avance
3
-1
-2
-3
0 1000 2000 3000 4000
minutes
MODELE PARALLELE
QJ0(t) Bx3(t+1)
Bx0(t) Modèle
dynamique Bx5(t+1)
Q33(t)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 104
MODELE PARALLELE LINEAIRE
100
80
60
40
20
0 500 1000 1500 2000 2500 3000 3500 4000 4500
minutes
MODELE PARALLELE
NEURONAL (1)
100
80
60
40
20
0 1000 2000 3000 4000
minutes
• PREDICTEUR REBOUCLE
• un bon prédicteur peut avoir un mauvais
comportement en mode parallèle
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 106
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)
– réseau 14-40-2
– (ordre 4 sur les sorties et 2 sur les entrées)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 107
CONCLUSIONS ET REFERENCES
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 108
DIFFICULTES ET PERSPECTIVES
• apprentissage délicat
– modèles non-linéaires à éléments dynamiques linéaires
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 109
EXEMPLE DE
MODELE NEURONAL HYBRIDE
• Colonne de distillation
(application réalisée pour Elf-Atochem par le laboratoire d’électronique de l’ESPCI et la société Netral)
Distillat
condenseur
Alimentation
Résidu
bouilleur
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 110
MODELE DE CONNAISSANCE
D'UN PLATEAU
ya,i V xa,i-1 L
yb,i 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 xa,i L
yb,i+1 xb,i
=> 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 réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 111
RESEAU DE PLATEAU
xa,i-1(t)
xb,i-1(t)
L(t)
V(t)
xa,i(t+1)
xa,i(t)
Ga
xb,i(t)
Gb xb,i(t+1)
P(t)
Ga
xa,i+1(t)
xb,i+1(t) Gb
Réseau spécial
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 112
RESEAU GLOBAL
P(t) xa,1
L(t)
xb,n
V(t)
xa,1
xb,1
. .
. .
. .
xa,n
xb,n
retard
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 113
RESULTATS D'APPRENTISSAGE
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 115
CONCLUSIONS ET REFERENCE
• La connaissance sur le procédé permet de définir une
architecture adaptée, donc un réseau plus simple
• L'existence d'un simulateur basé sur des équations
physique permet de réaliser un bon apprentissage initial
• Le modèle neuronal obtenu a les avantages suivants :
– recalage facile sur la colonne réelle
– exécution beaucoup plus rapide que le simulateur
physique
Référence sur cette application :
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 116
EXEMPLE DE
COMMANDE NEURONALE
• Commande du volant d'un véhicule 4x4 autonome
(application réalisée par la société Sagem et le laboratoire d’électronique de l’ESPCI)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 117
ARCHITECTURE GLOBALE
DU SYSTEME
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 118
MODELE HYBRIDE DU SYSTEME
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 119
IDENTIFICATION
• Algorithme semi-dirigé
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 120
APPRENTISSAGE DE
LA COMMANDE NEURONALE
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 121
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 122
REGULATEUR NEURONAL
A MODELE
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 123
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
(NeuroNîmes 93), p. 219-229 (1993).
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 124
Un réseau bouclé très particulier :
le réseau de Hopfield
Réseau totalement connecté et sans aucune entrée
• Connections symétriques
• Pas d’auto-activation : Wii = 0
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 125
Origine historique du
réseau de Hopfield
Neural networks and physical systems with emergent
collective computational properties, Hopfield and
Tank, PNAS, 1982.
J.J. Hopfield
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 126
Fonctionnement réseau de Hopfield
• Mémoire auto-associative :
– initialisation des sorties
– évolution dynamique stabilisation (dans un attracteur)
… …
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 opposés. Si le neurone i est inchangé, E=Cte. Sinon :
∑ (W ij S i (t + 1 )S (t + 1 )) − ∑ (W ij S i (t )S j (t )) = (S i ( t + 1) − S i ( t ) )∑ (W ij S (t ))
1 1
∆E = − j − j
2 i< j i< j 2 j
∆E forcément <0 si chgt état, alors que E borné par E > -Σi<jWij
convergence vers un point fixe (minimum local ≡ attracteur)
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 128
Réseau de Hopfield et théorie des
systèmes dynamiques
Introduction aux réseaux de neurones Fabien Moutarde, CAOR, MINES ParisTech Mai 2008 129
Apprentissage Hopfield
• La mémorisation comme attracteurs d’un ensemble de
motifs (patterns) {(Pi)k, k=1,…, K} est TRES SIMPLE :
Wij = Σk PikPjk (~ règle Hebb)
tous les Pm stables sous certaines conditions :
ΣjΣk (PikPjk Pjm)=Σ
Σj(WijPjm)=Σ Σj(Pim+ΣΣk≠≠m (PikPjk Pjm))
= NPim +ΣΣk≠≠m (PikΣj(Pjk Pjm))