Download - Chapitre 1
Sleon une édtue de l'Uvinertisé de Cmabrigde, l'odrre des ltteers dnas un mtos n'a pas d'ipmrotncae, la suele coshe ipmrotnate est que la pmeirère et la drenèire soit à la bnnoe pclae. Le rsete peut êrte dnas un dsérorde ttoal et vuos puoevz tujoruos lrie snas porlblème. C'est prace que le creaveu hmauin ne lit pas chuaqe ltetre elle-mmêe, mias le mot cmome un tuot.
Chapitre 1
Réseaux de neurones artificiels
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 3
Plan
1- Neurone artificiel Modèle Activation Apprentissage Réseaux Historique Parallèle avec la statistique Taxonomie Simulateurs
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 4
Découverte J.M. Zurada, Introduction
to Artificial Neural Systems, West Publishing, 1992. Approche ingénierie Orientation pédagogique Livre de référence pour
études supérieures (SYS-843 Réseaux de neurones et systèmes flous)
S. Thiria, Y. Lechevalier, O. Gascuel et S. Caru (Eds.), Statistiques et méthodes neuronales, Dunod (Paris), 1997. Découvert en France durant
le sabbatique (2001-2003) Aspect statistique des
réseaux de neurones.
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 5
Aperçu des grands domaines d’application des RNAsOn utilise des réseaux de neurones artificiels (RNAs) pour tenter de résoudre des problèmes complexes qui sont plus faciles à résoudre par le cerveau que par un ordinateur Reconnaissance d’un visage familier Système de sonar chez la chauve-souris Conduire sous la pluie Reconnaissance de forme
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 6
Exemple en reconnaissance de forme
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 7
Utilité des réseaux de neurones (1)
Modèles de systèmes nerveux biologiques et de l’intelligence
Corps cellule unité de calcul
Axone signal de sortie
impulsions électriques
Dendrites entrées du neurone
impulsions électriques
Synapses poids d’une entrée
impuls. réaction impuls.
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 8
Utilité des réseaux de neurones (2)
Processeurs adaptatifs de signal en temps-réel
Le processeur COKOS (Speckmann et al., 1994, tiré de Kohonen, SOM, 1997) :
• 8 unités parallèles de calcul MAB (Memory Arithmetic Board)• Fonctions arithmétiques de base, structure SIMD.• Mémoire RAM• Représentation des données en 16 bits• Prise de décision par un réseau Winner-Takes-All
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 9
Utilité des réseaux de neurones (3)
Contrôleurs pour des applications de robotique
Visuomotor Control of Robot Arm (Kohonen, SOM, 1997) :
• Le vecteur u de données d’entrée est donné par la position de la cible • Un réseau de neurone SOM à trois dimensions est l’espace de représentation du bras robot• Les coordonnées angulaires des joints du bras sont stockées dans le vecteur • Apprentissage supervisé
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 10
Utilité des réseaux de neurones (4)Analyse et interprétation de données - classification des canneberges
0 1-1
40 50 60tacy
Indicecanneberge
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 12
Architecture de von Neumann (1)
Unité centrale
de
traitement
Mémoire
DonnéesInstructions
et
Données
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 13
Cycle d’opération1. Charger une instruction de la mémoire2. Charger les données requises par l’instruction
3. Exécuter l’instruction (traiter les données)
4. Emmagasiner les résultats en mémoire5. Retour à l’étape 1
Utilisation Description d’un problème par un algorithme Traitement de symboles selon des règles
Architecture de von Neumann (2)
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 14
Caractéristiques des machines de von Neumann La machine doit connaître à l’avance la séquence des opérations à effectuer: c’est le programme
Les données sont dans un format connu et précis Dégradation brusque des performances en cas de bris (crash)
Correspondance entre les symboles manipulés et le matériel (chaque objet occupe un bloc précis de mémoire)
Architecture de von Neumann (3)
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 15
Difficultés pour les algorithmes de traitement d’image Certaines lettres inversées
Changement de contexte
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 16
1.1 Modèle d’un neurone Neurone artificiel
Unité de calcul simple qui essaie de mimer le fonctionnement d’un neurone biologique
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 17
Le neurone biologique
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 18
Modèle électrique de la membraneNa : sodiumK : potassiumCl : chloreBatteries : pompes à ionsCm : capacité de la
membrane Modèle Shunt (Grossberg)
Le potentiel VCl est approximé nul
CmdVmdt
=(VNa−VK )GNa+(VK −Vm)GK +(VCl −Vm)GCl
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 19
Sortie
x1
x2
x3
x4
xn
xN
x5
Entrée Xk
Wm 1
Wm 2
Wm 3
Wm 4
Wm 5
Wm n
Wm N
€
ym
Modèle d’un neurone artificiel
ym
=
f(a)
netm
m
f :
Binaire ouSigne
Linéaireà seuil
Sigmoïde
€
netm
= wmn
xn
± θmn=1
N∑
€
ym
= f F wmn
n = 0
N∑ x
n,a
m
⎛
⎝ ⎜ ⎜
⎞
⎠ ⎟ ⎟
⎛
⎝ ⎜ ⎜
⎞
⎠ ⎟ ⎟= f a
m( )
am (k)
F(net,a)
=
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 20
Notationnetm valeur d’entrée
du neurone m.Généralement
1 site par neurone.
ym valeur de sortiedu neurone m.
Wmnpoids de la connexionde la sortie du
neurone n au synapse d’entréedu neurone m
am activation du neurone m. Aussi appelépotentiel (noté xm)
F() fonction d’activation
f() fonction de sortie
m seuil ou polarisation du neurone m
€
−m∑
€
+βm∑
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 21
1.2 Fonction de site
Utilisation d’un seuil ou d’une polarisation jEn général, on considère m comme une connexion supplémentaire.
netm
m xn
m m1
seuil
polarisation βm
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 22
netm : Somme pondérée de toutes les entrées à ce site du neurone
netm : lorsqu’il y a 1 site
sim : lorsqu’il y a plus d’un site par neurone
€
netm = wmnxn =v
W m •v X k
n=0
N
∑
€
netm =v
W m ⋅v X k cos θ( )
W
X
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 23
1.3 Fonction d’activation F() Linéaire : la plus courante
€
am
= netm
= wmn
xn
n = 0
N∑
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 24
Shunt: simulation d’une cellule nerveuse
On part de l’équation dynamique
d’unecellule nerveuse
da=−Aa+(B−a)E−(C+a)I
CmdVmdt
=(VNa−VK )GNa+(VK −Vm)GK +(VCl −Vm)GCl
Excitation Inhibition passif
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 25
1.4 Fonction de sortie f()
Linéaire : ym = am
Binaire : souvent avec seuil m Signe : +1 si am positive, -1 sinon Sigmoïde : compression de la plage
de sortie, différentiable (pour
la rétropropagation d’erreur)
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 26
SigmoïdeLe paramètre T commande la pente à l’origine
Sortie unipolaire
Sortie bipolaire
€
y= 1
1+e−aT
€
y=tanha2T( )
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 27
RésuméUn neurone (ou une couche) est caractérisé principalement (la plupart des modèles) par sa fonction de sortie et par la valeur de son seuil ou polarisation que l’on indique dans le cercle du neurone. On modélise ce paramètre par un lien relié à 1
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 31
1.5 Apprentissage Apprentissage
Modification des poids jusqu’à atteindre une sortie «correcte» pour les formes d’entrée du set d’apprentissage
Généralisation Capacité du réseau à produire une réponse correcte à une forme non-apprise
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 32
Règle d’apprentissage Fonction de modification des poids
avec r : signal d’apprentissage
avec : constante d’apprentissage
Catégories d’apprentissage Supervisé présence du tuteur dj
Non-supervisé absence de signal-tuteur
€
Δwji∝xi⋅r
€
Δwji=η⋅xi⋅r wji,yj,dj( )
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 33
€
neti= winxn±θin=1
N∑
=
ai (k)
F(net,a)
yi =
f(a)
neti
j
x1
x2
x3
x4
xn
xN
x5
Sortie yi
Wi 1
Wi 2
Wi 3
Wi 4
Wi 5
Wi n
Wi N
Entrée X
€
Δwin=η⋅xn⋅r win,yi,di( )
€
ΔWi=ηr(Wi,yi,di)X
Générateur du
signal
d’apprentissage
xn
wi n
di r
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 34
1.6 Réseaux de neurones Simple couche, par anticipation
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 35
Multicouche, en cascade
entrée cachée sortie
y1
y2 d2
d1
x2
x1
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 36
Multicouche, en cascade, partiel
Champrécepteurde i i
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 37
Multicouche, résonant
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 38
Monocouche, récurrent
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 39
1.7 Historique McCulloch & Pitts 1943
Modèle simple de neurone biologique.Sortie binaire, poids fixes
Réseaux pour simuler opérations logiques de base
(ex.: portes ET, OU, OU Exclusif) Donald Hebb (McGill) 1949
Professeur éminent de psychologie
Première loi d’apprentissage
Rosenblatt 1959Perceptron
€
Δwji∝xi⋅yj
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 40
Minsky & Papert 1969Article qui monte les limitations du Perceptron
Période de grande noirceur
Chercheurs actifs : Grossberg ; Fukishawa
Kohonen ; Amari ; Anderson
Hopfield 1982Groupe PDP 1986 Renaissance de l’intérêt
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 41
Statistique et réseaux de neuronesUne question de nomenclature?
Réseaux de neurones Statistiques
Apprentissage Estimation
Poids Paramètres
Connaissance Valeur des paramètres
Apprentissage supervisé Régression / classification
Classification Discrimination / classement
Apprentissage non-supervisé
Estimation de densité / clustering
Clustering Classification / taxinomie
Réseau de neurones Modèle
Grand : 100 000 poids Grand : 50 paramètres
Ensemble d’apprentissage Échantillon
Grand : 50 000 exemples Grand : 200 cas.
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 42
1.8 TaxonomieLa taxonomie consiste à bâtir un arbre de classification des réseaux neuroniques selon le nombre de couches, la méthode de recherche de solution et la règle d’apprentissage
Une des toutes premières taxonomies proposée dans la littérature fut l’arbre de classification de Lippmann, en 1987. Cet arbre de classification a longtemps été considéré comme un classique dans le domaine.
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 43
Taxonomie de Lippmann (1987)
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 44
Taxonomie de Jain et al. (1996)
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 45
Taxonomie générale
# couches
dynamique
modèle
apprentis.
Réseauxmonocouches
Anticipation Récurrent Anticipation Résonant
supervisénon
supervisé
PerceptronAdalineMémoireassociative
Compétition Oja SangerCellulaire
LVQ1-2 LVQSOFM
Réseauxmulticouches
supervisénon
supervisé
Perceptron(rétroprop)MadalineRBF
Multiréso- lutionBCS
supervisénon
supervisé
HopfieldBoltzmann
BSBEidos
supervisénon
supervisé
ARTMAP ART 1-2BAM
CognitronConvolution
SARDSRN
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 46
Espace d'entrée
XExtraction
desprimitives
Espace des primitives
YSystème
dedécision
Espace des décisions
D
Problématique
Taxonomie pour la reconnaissance de formes
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 54
Taxonomie pour la reconnaissance de formes
Extraction de primitives Système de décision
Type (a) : vecteurs propresréseau d’Oja; réseau de Sangercomposantes principalescomposantes indépendantes
Type (c) : primitives visuellesréseau cellulaire; BCSpyramide multirésolutionréseau impulsionnel de Eckhorn
Type (b) : vecteurs prototypesréseaux LVQ; LVQ1 et LVQ2réseau SOFM de Kohonen
Réseaux de classificationneurone de McCulloch & Pittsperceptron de RosenblattAdaline; Madalineréseau à base radiale (RBF)
Mémoires associativesstatiques : matricesitératives : Hopfield, BAMséquentielles : SARDSRN, SARDNET
ACP : Brain State in a Box, EIDOS
Réseaux mixtes d’extraction de primitives et de classificationréseaux multicouches : rétropropagation du gradient d’erreur ; G.A.L.réseaux résonants : ART1, ART2, ARTMAP
réseaux convolutifs :Néocognitron; convolution
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 55
1.9 Simulateurs Approche objet
Environnement graphique évolué
Inspirée de la POO Neurone objet
– Attributs Valeur d’activation
Valeur de sortie Poids etc.
– Méthodes Fonctions d’activation, de sortie
Apprentissage
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 56
Approche matricielle Utilisation de logiciels spécialisés en traitement matriciel– MATLAB– Mathematica
couche vecteur
poids matrice
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 57
Approche par programmation Environnement de simulation
Language orienté objet : C++ ou Java
Objet informatique :– Attributs– Méthodes
Valentini, G. & Masulli, F. (2002). NEURObjects: an object-oriented library for neural network development. Neurocomputing, 48, 623-646.
GPA-779 Application des réseaux de neurones et des systèmes expertsCours #2 - 58
YANNSYet Another Neural Network Simulatorhttp://www-rocq.inria.fr/~crucianu/yanns/ Langage de description simple Interface graphique
multiplateforme en Java Noyau de simulation et
bibliothèque en C++
Boné, R., Crucianu, M., et Asselin de Beauville, J.-P., «Yet Another Neural Network Simulator», dans Proceedings of the NEURal networks and their APplications (NEURAP'98), 1998, Vol., tenue à Marseille, Francep. 421-424.