Les rseaux de neurones pour lapprentissage ESSEC le
- Slides: 30
Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 Réseaux de neurones artificiels « la rétropropagation du gradient » S. Canu, laboratoire PSI, INSA de Rouen équipe « systèmes d’information pour l’environnement » asi. insa-rouen. fr/~scanu
Histoire … • • 1940 1943 1948 1949 1958 -62 1960 1969 Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 : La machine de Turing : Le neurone formel (Mc. Culloch & Pitts) : Les réseaux d'automates (Von Neuman) : Première règle d’apprentissage (Hebb) : Le perceptron (Rosenblatt) : L'adaline (Widrow & Hoff) : Perceptrons (Minsky & Papert) les limites du Perceptron besoin d'architectures + complexes, Comment effectuer l'apprentissage ? On ne sait pas ! • 1974 : Rétropropagation (Werbos) pas de succès !? !?
Histoire … • 1986 (suite) Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 : Rétropropagation (Rumelhart & Mc. Clelland) nouvelles architectures de Réseaux de Neurones applications : - reconnaissance de l’écriture - reconnaissance/synthèse de la parole - vision (traitement d’images) • 1990 : « Société de l’Information » nouvelles applications - recherche/filtrage d’information dans le Web - extraction d’information / veille technologique - multimedia (indexation, …) - data mining besoin de combiner différents modèles
Plan Les réseaux de neurones pour l’apprentissage • Rappels : – Moindres carrés stochastiques – Algorithmes de gradient – Perceptron Multicouches • Principe de la rétropropagation • Algorithmes de rétropropagation ESSEC, le 28 Juin 2002
Moindres carrés « stochastiques » Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 ADALINE (Widrow Hoff 1960) impossible ( ’ ! ) méthode itérative : winit Algorithme itératif de gradient Répéter wnew = wold - Tant qu ’il reste des mals classés ou que le coût n’évolue plus
Algorithme de gradient Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Illustration dans le plan (w 1 , w 2) Minimum du coût w 2 Lignes d’iso-coût : J(W) = constante + Direction du gradient J’(W) Le gradient est orthogonal aux lignes d’iso-coût : argument à la « Taylor » w 1
Algorithme de gradient Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Illustration dans le plan (J(w), w) : la « descente » de gradient J(w) Direction du gradient J’(W) Minimum du coût w
3 solutions Le gradient : • Approximation linéaire (Adaline) • Perceptron : ’=1 • Neurone formel : on remplace par une fonction dérivable ex : (x)=th(x) fonction sigmoïde Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002
Perceptron Multi-Couches Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Réseau feedforward (1986) x 1 xi y xn 0 • Fonction de transfert tanh(. ) (sauf couche de sortie linéaire) • Méthode d’apprentissage (supervisé) usuelle : – rétropropagation du gradient
Notations Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Biais : – avec x 0=1 – idem pour toutes les couches (ex : PMC à une couche cachée) (1) x 0=1 – W 1=[wji] – W 2=[wkj] x 0 = 1 xi yk wji i=1: n 0 wkj j=1: n 1 k=1: n 2
Propagation Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Calcul des sorties du réseau en propageant les valeurs de x de couche en couche : 1 2 1 wji wkj xi yk xj(1) i=1: n 0 j=1: n 1 k=1: n 2 2
Algorithme de propagation Les réseaux de neurones pour l’apprentissage Function y = propag(x, w 1, w 2) a 1 = x 1 = a 2 = y = [x ones(n, 1)]*W 1; tanh(a 1); [x 1 ones(n, 1)]*W 2; a 2; Parallélisé sur les exemples (si x est une matrice, ça marche !) ESSEC, le 28 Juin 2002
Calcul de l ’erreur Les réseaux de neurones pour l’apprentissage • Fonction de coût : – on présente un exemple x=[x 1. . . xn 0] (avec ydes sortie désirée) – on calcule la sortie correspondante y =[y 1. . . yn 2] – erreur : – coût associé à l ’exemple : – coût global : ESSEC, le 28 Juin 2002
Calcul du gradient Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Mise à jour de wji et wkj selon une règle delta: • Problème = calcul de et
Couche de sortie Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Calcul de pour un exemple fixé xj(1) j=1: n 1 wkj yk k=1: n 2
Couche cachée Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Calcul de pour un exemple fixé wji xi i=1: n 0 j=1: n 1
Algorithme de rétropropagation Les réseaux de neurones pour l’apprentissage Function grad = retropropag(x, yd, w 1, w 2). . . a 1 = [x ones(n, 1)]*W 1; x 1 = tanh(a 1); a 2 = [x 1 ones(n, 1)]*W 2; y = a 2; ERRk = Grad. W 2 ERRj = Grad. W 1 -(yd-y). *(1 -y. *y); = [x 1 ones(n, 1)]'* ERRk ; (w 2(1: n 2 -1, : )*ERRk')'. *(1 -x 1. *x 1); = [x ones(n, 1)]'* ERRj ; w 1 = w 1 - pas 1. * Grad. W 1; w 2 = w 2 - pas 2. * Grad. W 2; ESSEC, le 28 Juin 2002
Exemple 1/4 Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • x = [0. 5 1] ydes = [0. 5 1] • W 1=[0. 5 ; 0. 5] (pas de biais) (1) x y 1 = 1. 2703 x 1= • 0. 5 W 2=[1 1 ; 1 1 1] x 2= 1 y 2 = 1. 2703 x 2(1) n 0=2 n 1 =2 n 2 =2 a(1)=[0. 75] x(1)=[0. 6351] a(2)=[1. 2703] y = [1. 2703]
Exemple 2/4 Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 ERRk = [0. 7703 0. 2703] Grad. W 2 = [0. 4893 0. 1717 ; 0. 4893 0. 1717] ERRj = [0. 6208] Grad. W 1 =[0. 3104 ; 0. 6208] x 1(1) x 1= 0. 5 err 1 = 0. 7703 x 2= 1 err 2 = 0. 2703 x 2(1) n 0=2 n 1 =2 n 2 =2
Exemple 3/4 Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 w 1 =[0. 3448 ; 0. 1896] w 2 =[0. 7554 0. 9142 ; 0. 7554 0. 9142] • MAJ de W 1 et W 2 y = [0. 5242 0. 6344] (1) y 1 = 0. 5242 x 1= • 0. 5 Nouvelle propagation, etc. . . x 2= 1 y 2 = 0. 6344 x 2(1) n 0=2 n 1 =2 n 2 =2
Exemple Les réseaux de neurones pour l’apprentissage 4/4 ESSEC, le 28 Juin 2002 • Evolution de y 1 et y 2 1. 3 1. 2 1. 1 y 2 1 0. 9 0. 8 0. 7 y 1 0. 6 0. 5 0 5 10 15
Gradient batch / séquentiel Les réseaux de neurones pour l’apprentissage • 2 façons d ’appliquer l’algorithme de rétropropagation : – « batch » : mise à jour des poids après la présentation de tous les exemples • calculs et stockage plus lourds si trop d ’exemples – séquentiel : (on-line, stochastique) mise à jour des poids après chaque exemple • besoin de tirer l ’exemple au hasard • problèmes de convergence ESSEC, le 28 Juin 2002
Gradient batch / séquentiel Les réseaux de neurones pour l’apprentissage • 2 façons d ’appliquer l’algorithme de rétropropagation : – « batch » : mise à jour des poids après la présentation de tous les exemples • calculs et stockage plus lourds si trop d ’exemples Moins de 5000 exemples, Matlab – séquentiel : (on-line, stochastique) mise à jour des poids après chaque exemple • besoin de tirer l ’exemple au hasard • problèmes de convergence plus de 5000 exemples SNNS, SN, du C ESSEC, le 28 Juin 2002
Pas d’apprentissage Les réseaux de neurones pour l’apprentissage • Pas d’apprentissage : – trop petit = convergence « lente » vers la solution – trop grand = risque d’oscillations… 1. heuristiques courantes : – diminuer le pas d’apprentissage au fur et a mesure • « à la main » • en fonction de la forme de la surface d ’erreur 1. approximations : • premier ordre Rétropropagation avec un moment d’inertie Delta-Bar-Delta, Rprop, . . . • second ordre 1. Quickprop 2. Levenberg Marquard ESSEC, le 28 Juin 2002
Premier ordre 1/2 Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Moment d’inertie (Rumelhart et al. 1986) avec | |<1 • Delta-Bar-Delta (Jacobs 1988) – calcul d ’un « gradient moyen » – modification du pas d’apprentissage selon la direction du gradient par rapport au gradient moyen on accélère on freine
Premier ordre 2/2 Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Rprop (Riedmiller and Braun 1993) – modification du pas d’apprentissage selon la direction du gradient par rapport au gradient précédent – on borne le pas d ’apprentissage on accélère on freine – un poids n’est modifié que s ’il va « dans le bon sens »
Second ordre 1/2 Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Développement de Taylor de la fonction de coût : – H = matrice Hessienne, « le Hessien » de du coût – Calcul du gradient : – on cherche h / le gradient soit nul Problème = calcul de H-1
Second ordre 2/2 Les réseaux de neurones pour l’apprentissage • Approximation du Hessien : – hessien = matrice diagonale – Quickprop (Fahlman 1988) • on évite de calculer H – Il existe d’autres méthodes qui calculent (partiellement) les informations du 2 nd ordre méthodes de gradient conjugué ESSEC, le 28 Juin 2002
Conclusion Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 – La rétropropagation est une méthode de gradient – on a un problème d’optimisation à résoudre, …. Et tous les coups sont bon ! – On a un problème d’optimisation non linéaire convexe si la fonction coût est quadratique – Soft : matlab (petits problèmes) - SN (gros problèmes)
Bibliographie Les réseaux de neurones pour l’apprentissage ESSEC, le 28 Juin 2002 • Neural Networks : a comprehensive foundation - S. Haykin (Prenctice Hall) • Neural Networks : a systematic introduction R. Rojas (Springer) • The Handbook of Brain Theory and Neural Networks - M. A. Arbib (MIT Press) • Self-Organizing Maps - T. Kohonen (Springer) • Réseaux Neuronaux et Traitement du Signal - J. Hérault & C. Jutten (Hermès) • Backpropagator ’s review : – des informations sur la rétropropagation • http: //www. dontveter. com/bpr. html – un petit tutoriel : • http: //www. dontveter. com/bpr/public 2. html
- Les outils pédagogiques pour faciliter lapprentissage
- Neurophagique
- Scurit
- Rseaux sociaux
- Rseaux
- Rseaux
- Calorie dragibus
- Les arguments pour tous les sujets
- Formation immobilier essec
- Factiva essec
- Essec gestion de patrimoine
- Coop mazout
- Outils pour les cfds
- Construire les premiers outils pour structurer sa pensée
- Pour les enfants du monde entier
- Sphincter
- Monmuse
- Pour rendre une femme heureuse
- Chiac pour les dummies
- Il faut chanter pour toutes les mamans du monde partition
- Sd wan pour les nuls
- Master sciences analytiques pour les bioindustries
- Les adjectifs démonstratifs s'utilisent pour
- Ordre du jour pour les enseignants
- Il faut chanter pour toutes les mamans du monde
- Les lois spirituelles selon la bible
- Dmr pour les nuls
- Toutes les mamans du monde
- Piramide de bird
- Je veux te chanter marie
- Les mots variables et les mots invariables