• Aucun résultat trouvé

1 Réseaux neuronauxPerceptronMulti-Couche

N/A
N/A
Protected

Academic year: 2022

Partager "1 Réseaux neuronauxPerceptronMulti-Couche"

Copied!
7
0
0

Texte intégral

(1)

J.Korczak, ULP 1

Jerzy Korczak, LSIIT, ULP email : jjk@dpt-info.u-strasbg.fr

http://lsiit.u-strasbg.fr/afd

Réseaux neuronaux Perceptron Multi-Couche

J.Korczak, ULP 2

R R R

Ré é éseaux neuronaux é seaux neuronaux seaux neuronaux seaux neuronaux

Les fondements biologiques

synapse

dendrites soma

influx nerveux

cortex : 1011neurones neurone : ~104entrées

axone

J.Korczak, ULP 3

10 000 neurones 3 km fil

1mm

Signal:

action potentielle (ang.spike)

action potential

100µm

Neurone biologique

J.Korczak, ULP 4

Cortex : les couches et les cellules

J.Korczak, ULP 5

Canaux ionique

Comportement Populations

de neurones

Modéles Neurones

Molecules

Signaux

Modélisation de réseaux de neurones biologiques

J.Korczak, ULP 6

Mod Mod Mod

Modèèèèle de cellule de Purkinje le de cellule de Purkinje le de cellule de Purkinje ((((le de cellule de Purkinje Schutter 2005))))

Le modèle comporte:

32000 équations différentielles!

8021 modèles des canaux ioniques

19200 paramètres d’affinement

description morphologique

(2)

J.Korczak, ULP 7

Histoire Histoire Histoire Histoire

La modélisation du neurone [McCulloch, Pitts, 1943]

• Le processus d’apprentissage [Hebb, 1949]

• PERCEPTRON [Rosenblatt,1958-1962]

Convergence d’un algorithme itératif d’adaptation de poids

• Limitations du PERPTRON [Minsky, Papert, 1969]

séparation linéaire Problème du OU-exclusif (XOR)

• Machine de Bolzmann [Hopfield, 1982]

• Rétro-propagation - MLP [Rumelhart, Parker, Le Cun, 1985]

Cartes topologiques auto-adaptatives [Kohonen, 80s]

J.Korczak, ULP 8

Traitement de l'information dans le cerveau et l'ordinateur de von Neumann

Ordinateur de von Neumann Cerveau

calcul et mémoire calcul et mémoire

séparés et centralisés intégrés et distribués

programme = séquence d’instr. calcul = satisfaction de multiples contraintes

exécution d'un sous- combinaison simultanée de programme à la fois multiples sources d'information un seul processeur des centaines de milliards

très rapide d'unités de calcul très lentes

J.Korczak, ULP 9

Caractéristiques des systèmes

J.Korczak, ULP 10

Séparation linéaire

x1

x2 wkx > s

wkx < s

XOR 1

0 1

?

Un ensemble d'exemples est linéairement séparable si il existe un classifieur linéaire qui peut tous les apprendre.

Pour n entrées binaires, il existe 2nvecteurs d'entrées possibles, et 22nfonctions binaires.

J.Korczak, ULP 11

Applications Applications Applications Applications

Reconnaissance des formes, classification Reconnaissance/synthèse de la parole Prévision et modélisation

Diagnostic

Compression de données

Vision, robotique, commende de véhicule, contrôle adaptatif Nouvelles applications

• Recherche d’informations dans le Web

• Extraction d’information, veille technologique

• Multimédia (indexation)

• Data mining

J.Korczak, ULP 12

OCR : reconnaissance de caract OCR : reconnaissance de caract OCR : reconnaissance de caract

OCR : reconnaissance de caractèèèères par RNres par RNres par RNres par RN

(3)

J.Korczak, ULP 13

Qu’est-ce qu’un réseau de neurones ?

RN est un réseau d’automates finis partiellement ou totalement connectés entre eux, en interaction locale ou globale. Il est entièrement caractérisé par son architecture et les fonctions de transition d’état des neurones.

Deux grands classes de RN :

• RN dont l’apprentissage est supervisé

Une méthode d’apprentissage supervisé est une méthode qui utilise directement les connaissances d’un expert et essaye de reproduire ces connaissances.

• RN dont l’apprentissage est non supervisé

Une méthode d’apprentissage non supervisé est une méthode qui essaye de dériver des généralisations à partir des données, de segmenter l’espace de données.

J.Korczak, ULP 14

R R

R Ré é éseaux neuronaux : é seaux neuronaux : seaux neuronaux : seaux neuronaux : ‘‘‘‘bonnes applications bonnes applications bonnes applications’’’’ bonnes applications

Des caractéristiques d’une bonne application :

Problèmes très difficiles à expliciter ou à formaliser

On dispose d’un ensemble d’exemples

Le problème fait intervenir des données bruitées

Le problème peut évoluer

Le problème nécessite une grande rapidité de traitement

Il n’existe pas de solutions technologiques courantes

J.Korczak, ULP 15

Le Perceptron Multi-Couche (MLP)

Le MLP est composé de couches successives : une couche d’entrée (où sont présentées les entrées), une ou plusieurs couches cachées, et une couche de sortie (où sont présentées les sorties calculées par le MLP).

L’apprentissage des MLP :

- algorithme de rétro-propagation du gradient - algorithme de gradient conjugué

- méthodes de second ordre, …

Les MLP sont des approximateurs universels.

J.Korczak, ULP 16

Réseau de neurones - MLP

couche d ’entrée

couche de sortie couches cachées

Un réseau (suffisamment complexe) de neurones formels peut représenter

n'importe quelle fonction booléenne ou n'importe quelle partition de Rn.

J.Korczak, ULP 17

Fonctionnement d’un neurone

ΣΣΣ Σxi*wi

Entrées Sorties

Σ F

Fonction d’activation (ou de transfert) 1

0

w1

w2

wi

wk

Σ ΣΣ Σ

Σ Σ Σ Σ

X1

X2

X3

Y1 Y2

Y3

J.Korczak, ULP 18

Fonction d’activation

Fonction non linéaire

- choix typiques : fonction logistique, tangente hyperbolique F(x) = 1/(1+e-x) F(x)= tanh(x)

- propriétés importantes : - continue, dérivable

(4)

J.Korczak, ULP 19

MLP : apprentissage

Principe :

• Initialisation des poids à des valeurs aléatoires

• Présentation d’un exemple

• Propagation des signaux dans le réseau

• Calcul des erreurs et propagation en sens rétrograde

• Modification des poids de connexions

Défauts :

• Paramétrage

• Lenteur

• Choix de la topologie

J.Korczak, ULP 20

Arrêt de l’apprentissage

• Critères classiques

– l’erreur passe en dessous d’un seuil – borne sur le temps de calcul – vitesse de progression

• Une technique de régularisation : arrêt prématuré (early stopping)

– éviter le sur-apprentissage

– on s’arrête quand l’erreur remonte sur l’ensemble de validation

J.Korczak, ULP 21

Problème : la sortie désirée pour un neurone caché ?

Entrées

tj: sortie désirée xi

oi wij

Méthode de calcul :

1) fonction de coût : E(t)=

Σ

p(op-tp)2

2) gradient total : w(t+1) = w(t) –λ(t) gradw(Ep(t)) 3) calculer dEp/dwij

J.Korczak, ULP 22

Problème : la sortie désirée pour un neurone caché ?

dEp/dwij= (dEp/dσj)(dσj/dwij) =(dEp/dσj) yi

on poseδj= (dEp/dσj), d’oùwij(t+1) = wij(t) –λλ(t) δλλ δδδjyi

entrée

tj xi

oj wjk

oi

σi f σj f σkf

wij

maisδj= (dEp/dσj)=

Σ

k(dEp/dσk) (dσk/dσj)=

Σ

kδk(dσk/dσj)=

=

Σ

kδkwjk(dyk/dσj)

d’où δδδj = 2(oδ j- tj) f’(σσσσj) si neurone j en sortie δδδ

δj = (

Σ Σ Σ Σ

kwijδδδδk) f’ (σσσσj) si neurone j en sortie

J.Korczak, ULP 23

x1 x2 x3

xn ...

t1 t2 t3

tm ...

Vecteur d ’entrée

o1 o2 o3 ...

om

R

R R

Ré é é étro tro tro tro----propagation du gradient propagation du gradient propagation du gradient propagation du gradient

-

- -

-

-

yi= Σ wijxi

Fonction sigmoïde F(y)=1/(1+e-ky) F’(y) = F(y)(1-F(y)) E=1/2

Σ

(tk- ok)2 wij

J.Korczak, ULP 24

Exemple : Rétro-propagation du gradient (GBP) Apprentissage

XOR

X Y XOR(X,Y) 0 0 0 0 1 1 1 0 1 1 1 0

f(netk)=1/(1+e-netk) netjΣΣΣwijoi oj=f(netj)

1 1

0,5

0,5

0

Wij=0 0 0

0

0

0 0

1

X Y

bias

XOR

bias

δδδ

δk=(tk-ok)f’(netk) f’(netk)=ok(1-ok) wjk(t+1)=wjk(t)-λδλδλδλδkoj

(5)

J.Korczak, ULP 25

Exemple : Rétro-propagation du gradient (GBP) Apprentissage

XOR X Y XOR(X,Y) 0 0 0 0 1 1 1 0 1 1 1 0

δ δδ

δh=f’(netj) ΣδΣδΣδΣδkwkj

= 0,5*(1-0,5)*0,125*0,00625= 0,000195 whx=0+0,1*0,000195*1=0,0000195

1 1

0,5

0,5

0

Wij=0 0

0

0

0

0 0

1

x y

bias

XOR

bias

λ=0,1 λ=0,1λ=0,1 λ=0,1 δδδ

δz=(1-0.5)*0,5*(1-0.5)=

=0,125

wzx(t+1)=0+0,1*0,125*1=

= 0,0125 z

h

J.Korczak, ULP 26

Apprentissage: les poids et le coefficient d’apprentissage

wzx=0,00125 λ itération

wzy=0 0,1 25496

wzh=0,00625 0,5 3172

whx=0,0000195 3,0 391

why=0 4,0 (fails)

wzbh=0,0000195 f(net) = 0,507031

J.Korczak, ULP 27

Exemple : Rétro-propagation du gradient (GBP)

XOR

X Y XOR(X,Y) 0 0 0 0 1 1 1 0 1 1 1 0

1 1

0,91

0.98

0

-3,29

-4,95 -4,95

-2,76

10,9

7,1 7,1

1

X Y

bias

XOR

J.Korczak, ULP 28

Exemple : Rétro-propagation du gradient (GBP)

XOR X Y XOR 0 0 0 0 1 1 1 0 1 1 1 0

1 1

0,91

0,98

0

-3,29

-4,95 -4,95

-2,76

10,9

7,1 7,1

1

X Y

bias

XOR

1 * 7,1 1 * -2,76 0 * 7,1 ΣΣΣ Σxw = 4,34

Y=1/(1+e-ΣΣΣΣxw)

=1/(1+e-4,34)

=0,98

J.Korczak, ULP 29

Exemple : Rétro-propagation du gradient (GBP)

XOR X Y XOR 0 0 0,08 0 1 0,91 1 0 1,00 1 1 0,10

1 1

0,91

0,98

0

-3,29

-4,95 -4,95

-2,76

10,9

7,1 7,1

1

X Y

bias

XOR

J.Korczak, ULP 30

Axone : Exemple XOR [http://lsiit.u-strasbg.fr/afd]

(6)

J.Korczak, ULP 31

Axone : Exemple XOR– paramètres d’apprentissage

J.Korczak, ULP 32

Axone : Exemple XOR –réseau appris

J.Korczak, ULP 33

Apprentissage : Mise à jour des poids et outils Mise à jour des poids

Batch : après la présentation de tous les exemples calcul et stockage lourds si trop d’exemples En ligne (on-line) : après chaque exemple

besoin de tirer l’exemple au hasard problèmes de convergence plus de 5000 exemples Outils : Matlab, Axone, SNNS

J.Korczak, ULP 34

Choix du pas d’apprentissage

• Pas d’apprentissage :

trop petit -> convergence « lente » trop grand -> risque d’oscillations

• Heuristiques :

ajuster le pas au fur et à mesure

« à la main »

« en fonction de la forme de la surface d’erreur

• Approximations :

Premier ordre : Inertie, SuperSAB, Delta-Bar-Delta, Rprop Second ordre : QuickProp, Levenberg-Marquard

J.Korczak, ULP 35

Déplacement de l’objectif d’apprentissage Chaque neurone à l’intérieur du réseau essaye en même temps d’évoluer pour détecter une caractéristique du problème. Les neurones d’une même couche ne communiquent pas entre eux.

Effet « troupeau » (herd effect)

Architecture en cascade : Cascade Correlation

J.Korczak, ULP 36

Extraction de r Extraction de r Extraction de r

Extraction de r

è

gles gles gles gles

à

partir de RN partir de RN partir de RN partir de RN

Connaissances acquises du RN sont encodées : L’architecture du réseau

Les fonctions d’activation associées à chaque neurone Les poids des connexions

Objectifs :

Explication pour l’utilisateur Vérification de logiciels, Débuggage

Exploration de données Amélioration de la généralisation Induction de théories scientifiques Acquisition de connaissances

(7)

J.Korczak, ULP 37

Knowledge Knowledge Knowledge

Knowledge----BasedBasedBasedBased ArtificialArtificialArtificial NeturalArtificialNeturalNetural Networks NeturalNetworks Networks Networks [Shavlik, 1993]

Théorie initiale du domaine

Théorie finale du domaine

Insertion de règles dans le réseau

Extraction de règles du réseau

Apprentissage

Réseau initial Réseau final

Données

J.Korczak, ULP 38

Méthodes d’extraction de règles à partir RN

• Décompositionnelles –KBANN

SUBSETMofN

• Pédagogiques –RULENEGBRAINNEVIA – …

• Hybrides –DEDECTREPAN

J.Korczak, ULP 39

Optimisation de la topologie de PMC

• Approche empirique par «essai-erreur»

• Approches ascendantes : …cherche à augmenter le nombre de connexions et de neurones dans le réseau

– Cascade-Correlation [Fahlman, Lebiere, 1991]

– Upstart [Frean, 1990]

– Tiling [Mézard, Nadal, 1989]

• Approches descendantes : …cherche à élaguer les connexions et les neurones dans le réseau

– pendant l’apprentissage [Weight Elimination, Weigend,1991]

– après apprentissage [OBD, Brain Surgeon, Le Cun, 1990]

• Approches évolutives : connexionisme génétique – [Weight Elimination, Weigend,1991]

– AGWin [Korczak, 1998]

J.Korczak, ULP 40

Identité Accepter,

Rejeter w1

w2

Effacer les silences

Transformation de l’ondelette

C0C1C2C3C4C5C6C7 C9C10C11C12 C13C14 C15

Fquence

Temps

Normalisation + Codage

Réseau des neurones Apprentissage et Reconnaissance Détection des yeux

Ave rag e Inten s ity o f e ac h ro ws -50

050

1 00

1 50

2 00

2 50

0102 0304 0

Grey Sca le

In te n si t y -5 0

0

5 0

10 0

15 0

20 0

25 0

01 02 03 04050

In te n si t y

Trouver X Trouver

Y Filtre

de base Inondation +

Convolution

Extraction Normalisation + Codage Moment

Vert Bleu Hue Saturation

Intensité Réseau des

neurones Apprentissage et Reconnaissance

Visage

Voix

Base des données

Décision Authentification biométrique

J.Korczak, ULP 41

Bibliographie

Bishop C.M., Neural Networks for Pattern Recognition, Oxford Univ., 1995.

Haykin S., Neural Networks: A Comprehensive Foundation, Prentice-Hall, 1999.

Rojas R., Neural Networks: A Systematic Introduction, Springer, 1996.

Kohonen T., Self-Organizing Maps, Springer, 1997.

Hérault J., Jutten C., Réseaux neuronaux et Traitement du Signal, Hermès, 1994.

Masters T., Practical Neural Network Recipes in C++,Academic Press, 1994.

Online books :http://www.shef.ac.uk/psychology/gurney/notes/index.html Usenet newsgroup : comp.ai.neural-nets

FAQ :ftp://ftp.sas.com/pub/neural/FAQ.html

Neuroprose :ftp://archive.cis.ohio-state.edu/pub/neuroprose http://lsiit.u-strasbg.fr/afd

http://diwww.epfl.ch/mantra/tutorial/french/index.html http://19968.gel.ulaval.ca/notes/RetroPerceptron.pdf http://www.dontveter.com/bpr/bpr.html

Références

Documents relatifs

Nous avons ainsi été amenés à augmenter le temps et la température du pré recuit sous hydrogène utilisé pour faire désorbiter le silicium poreux. En ce qui concerne les

Le potentiel d\ f étant indépendant de la position du point M' intérieur à la couche e\ nous pouvons le cal- culer, et c'est ce que nous allons faire, en supposant le point au

Poids statique et énergie dynamique, l‘effet de compactage est automatique- ment adapté au niveau de compactage du matériau, à l‘épaisseur et. à la densité de la couche

● Débit binaire : nombre de bits transmis par secondes (en bsec -1 ). Débit binaire = log 2 (valence) x rapidité

● Définition : Soit deux mots d’un code, t1 et t2 : la distance de Hamming séparant t1 et t2 est le nombre de positions binaires. ayant des valeurs différentes entre t1 et

[r]

Enfin, pour affirmer de manière plus pacifique sa puissance maritime, elle cherche à apparaître comme l'un des têtes de file de la protection environnementale en créant des

Simple Mail Transfer Protocol (SMTP, littéralement « protocole simple de transfert de courrier ») est un protocole de communication utilisé pour transférer le courrier