Sleon une édtue de l'Uvinertisé de Cmabrigde, l'odrre des ltteers dnas un mtos n'a pas...

Post on 04-Apr-2015

107 views 1 download

Transcript of Sleon une édtue de l'Uvinertisé de Cmabrigde, l'odrre des ltteers dnas un mtos n'a pas...

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.