1 / 87

Chapitre 8

Chapitre 8. Les réseaux de neurones compétitifs. Les réseaux de neurones compétitifs. Réseaux de Neurones Application en Reconnaissance de Formes. d’après B. Solaiman Dépt. Image & Traitement de l'Information Ecole Nationale Supérieure des Télécommunications de Bretagne. Plan.

mac
Download Presentation

Chapitre 8

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapitre 8 Les réseaux de neurones compétitifs

  2. Les réseaux de neurones compétitifs Réseaux de Neurones Application en Reconnaissance de Formes d’après B. Solaiman Dépt. Image & Traitement de l'Information Ecole Nationale Supérieure des Télécommunications de Bretagne

  3. Plan 1. Introduction, définition • 2. Réseaux compétitifs • - Règles et réseaux de base • - Règles de Oja et Sanger 3. Réseaux de quantification vectorielle 4. Cartes topologiques de Kohonen

  4. Découverte • T. Kohonen, Self-Organizing Maps, 2e Edition, Springer, 1997. • Approche pédagogique • Haute teneur et formalisme mathématique • Approche vectorielle / matricielle • Modèles : SOM, famille LVQ • Chapitre complet d’exemples

  5. 1 Introduction, définition Classification des réseaux de neurones En fonction du mode d’apprentissage supervisé / non supervisé 1 En fonction de la fonction réalisée Extraction primitives /Décision /Extraction-Décision 2 En fonction du champs d’action en mise à jour Mise à jour globale /Mise à jour sélective 3 4 En fonction de l’architecture/mode de connexion, etc.

  6. Problématique de Reconnaissance de Formes 2 Extraction Système X des Y de D primitives décision Espace d'entrée Espace des primitives Espace des décisions

  7. Développement d’une solution neuronale Réseau d’extraction de primitives / classifieurs Système de décision Extraction des primitives Espace d’objets Espace des décisions Espace des primitives (d’observations) 3 Les réseaux de neurones extracteurs de primitives/Classifieurs 3

  8. Laboratoire 2: Caractéristiques d’une image Extraction des caractéristiques Sous-image pour l ’apprentissage

  9. Canneberges sèches Éclairage ambiant Fond bleu Segmentation Élimination du fond par division Filtre median 5x5 Seuillage sur la couleur Segmentation sur courbure Érosion Exemple récent: classification de lots de canneberges Pré-traitement

  10. Primitives visuelles • Entrées: RVB moyen d’une canneberge • Apprentissage: 100 échantillons • Test: 60 échantillons

  11. Résultats - fruits secs

  12. Développement d’une solution neuronale Réseau de neurones d’extraction de primitives 3 Les réseaux de neurones extracteurs de primitives 2 Système de décision Espace des primitives Espace d’objets Espace des décisions

  13. Introduction 1 Les réseaux de neurones compétitifs L'ajustement des poids synaptiques, suite à la présentation d'une forme, n'est pas automatiquement réalisé pour tous les neurones constituant le réseau. Neurones pour lesquels les poids synaptiques seront modifiés X Neurones pour lesquels les poids synaptiques ne seront pas modifiés

  14. Introduction 1 Déroulement de l’apprentissage Présentation d’une forme X 1 Une compétition est organisée. L’objectif est de déterminer les neurones gagnants. 2 Mise à jours sélectives des poids synaptiques des neurones gagnants. 3 Les réseaux compétitifs Extraction des primitives Apprentissage supervisé ou non supervisé

  15. Phase de compétition • Elle peut être logicielle • Une fonction est appliquée au vecteur de sortie du réseau pour identifier le ou les neurone(s) gagnant(s). • Exemple fréquent : ym* = Max (ym) • Elle peut être neuronale • Maxnet  le gagant emporte tout • Un seul neurone, le plus activé, demeure actif • Chapeau mexicain • Le neurone le plus activé et son entourage demeurent actifs

  16. 1 1 A1 A4 A2 A3 1 1 Fonction d’activation : Le réseau Maxnet Étape 0 : Initialiser les activations et les poids -e -e • Étape 1 (tant que 4 vrai faire 2-4) : • Étape 2 : Mise à jour des activations • Étape 3 : Sauvegarder activations • Étape 4 : Si plus d’une activation 0 continuer, sinon arrêt -e -e -e -e

  17. 1 1 A1 A4 A2 A3 1 1 Le réseau Maxnet : Exemple A = [0,2 0,4 0,6 0,8] Étape 0 : Initialiser les activations et les poids -e -e • Étape 1 (tant que 4 vrai faire 2-4) : • Étape 2 : Mise à jour des activations • Étape 3 : Sauvegarder activations • Étape 4 : Si plus d’une activation 0 continuer, sinon arrêt -e -e -e -e

  18. w0 w2 w2 Xi-3 Xi-2 Xi-1 Xi Xi+1 Xi+2 XI+3 w1 w1 w3 w3 si Le chapeau mexicain : R1 R2 wk est positif dans 0  k  R1 et négatif dans R1 k R2 x est le vecteur d’activations x_vieux est le vecteurs d’activations à t-1 t_max est le nombre maximal d’itérations s est un signal externe

  19. C2 C1 Le chapeau mexicain : 0.6 -0.4 -0.4 Xi-3 Xi-2 Xi-1 Xi Xi+1 Xi+2 XI+3 0.6 0.6 si R1 R2 • Étape 0 : Initialiser t_max, R1, R2 et les poids C1 et C2 • Étape 1 : Présenter s (x = s) et sauvegarder activations dans x_vieux (x_vieuxi = xi) • Étape 2 : Tant que t < t_max faire 3-7 • Étape 3 : Calculer la valeur Net

  20. C2 C1 Le chapeau mexicain : 0.6 -0.4 -0.4 Xi-3 Xi-2 Xi-1 Xi Xi+1 Xi+2 XI+3 0.6 0.6 si R1 R2 • Étape 4 : Appliquer la fonction d’activation rampe de 0 à x_max • xi = min (x_max, max(0, xi) • Étape 5 : Sauvegarder les activations xi courantes dans x_vieux • Étape 6 : Incrémenter le compteur d’itérations (t = t + 1) • Étape 7 : Tester la condition d’arrêt • Si t < t_max continuer, autrement arrêt

  21. 0.6 -0.4 -0.4 Xi-3 Xi-2 Xi-1 Xi Xi+1 Xi+2 XI+3 0.6 0.6 Le chapeau mexicain : Exemple x = ( 0.0 0.5 0.8 1.0 0.8 0.5 0.0) • Étape 1 : Présenter s (x = s) et sauvegarder activations dans x_vieux (x_vieuxi = xi) • x = ( 0.0, 0.5, 0.8, 1.0, 0.8, 0.5, 0.0) • x_vieux = ( 0.0, 0.5, 0.8, 1.0, 0.8, 0.5, 0.0) • Étape 2 : Tant que t < t_max faire 3-7 • Étape 3 : Calculer la valeur Net x1 = 0.6 * (0.0) + 0.6 * (0.5) – 0.4 * (0.8) = -0.2 x2 = 0.6 * (0.0) + 0.6 * (0.5) + 0.6 * (0.8) – 0.4 * (1.0) = 0.38 x3 = -0.4 * (0.0) + 0.6 * (0.5) + 0.6 * (0.8) + 0.6 * (1.0) – 0.4 * (0.8) = 1.06 x4 = -0.4 * (0.5) + 0.6 * (0.8) + 0.6 * (1.0) + 0.6 * (0.8) – 0.4 * (0.5) = 1.16 ……

  22. 0.6 -0.4 -0.4 Xi-3 Xi-2 Xi-1 Xi Xi+1 Xi+2 XI+3 0.6 0.6 Le chapeau mexicain : Exemple (suite) x = ( 0.0 0.5 0.8 1.0 0.8 0.5 0.0) • Étape 4 : Appliquer la fonction d’activation x = (0.0, 0.38, 1.06, 1.16 …… ) Continuez … (à partir de l’étape 3 précédente)

  23. Réseaux Compétitifs Linéaires 2 Architecture : deux couches yj=X . mT yM y1 Couche de sortie m wmN wm1 wmn Couche d’entrée x1 xn xN

  24. Réseaux Compétitifs Linéaires Projection maximale  Distance euclidienne minimale? dist(X,Wm)=||X-Wm||2 = ||X||2 + || Wm ||2 - 2 X . WmT Equivalence lorsque X et Wj sont normalisés 2 Neurone m* est le neurone gagnant ym* = yj Un seul neurone gagnant La compétition est à base de projection maximale. Attention

  25. Réseaux Compétitifs Linéaires 2 Règle d’apprentissage de Hebb Donald HEBB : "The Organization of Behavior », 1949 Si deux neurones connectés entre eux sont activés au même moment, alors la connexion qui les relie doit être renforcée (i.e. principe de la récompense). Dans le cas contraire, la valeur de la connexion n'est pas modifiée (i.e. principe de la punition). Zones d ’activités fonctionnelles (circuits neuronals)

  26. Réseaux Compétitifs Linéaires 2 Implémentation mathématiques {Xk, k = 1, 2, …, K} une base d’apprentissage 1 Initialisation aléatoire des poids synaptiques 2 Apprentissage a Présentation de la forme Xk à la couche d’entrée Calcul de l’activation des neurones de la couche de sortie ym(k), m = 1, 2, .. b Détermination du neurone gagnant m*  c Ajustement des poids synaptiques du neurone gagnant : d pour n = 1, …, N

  27. Réseaux Compétitifs Linéaires Neurone gagnant Wm* D Wm* W2 Xk W2 Xk WM WM W1 W1 vecteur des poids synaptiques du neurone gagnant 2 Explication graphique Nouveau vecteur des poids synaptiques Compétition Adaptation

  28. Réseaux Compétitifs Linéaires 2 Théorème Le réseau compétitif linéaire associé avec la règle d'apprentissage de Hebb n'a aucun point d'équilibre stable. Explication mathématiqueE {D Wj*}  0 Explication physique Incrémentation sans limite Point d’équilibre

  29. Réseaux Compétitifs Linéaires 2 Règle d’apprentissage d’Oja {Xk, k = 1, 2, …, K} une base d’apprentissage 1 Initialisation aléatoire des poids synaptiques 2 Apprentissage a Présentation de la forme Xk à la couche d’entrée Calcul de l’activation des neurones de la couche de sortie ym(k), m = 1, 2, .. b Détermination du neurone gagnant m*  c Ajustement des poids synaptiques du neurone gagnant : d pour n = 1, …, N

  30. Réseaux Compétitifs Linéaires ym*(k) ym*(k) m* m* Wm*1 Wm*N Wm*n Wm*1 Wm*n x1(k) xn(k) xN(k) x1(k) xn(k) xN(k) 2 Explication Principe de rétropropagation dans la règle d’Oja

  31. Réseaux Compétitifs Linéaires 2 Théorème L'algorithme d'apprentissage d'Oja appliqué à un réseau compétitif linéaire, converge en moyenne statistique vers un vecteur * ayant les propriétés suivantes : || *|| = 1. * a la direction du vecteur propre maximal de la matrice de corrélation C.  * permet la maximisation de la variance de la sortie.

  32. Problématique de reconnaissance de formes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Les primitives : 1 Les vecteurs propres y z z v y1 u V2 j j V1 x x x1 i i z = x1 + y1 z = u + v V2 i V1 j

  33. Réseaux Compétitifs Linéaires 2 Règle d’apprentissage de Sanger  X = [x1, ….., xN] X = x1i1 + x2i2 + …+ xNiN V1 : 1ère composante principale Vn : nème composante principale, n=2, 3, …, N  X = u1V1 + u2V2 + …+ uNVN Décomposition sur les composantes principales X  Y = X - u1V1  V2 : 1ère composante principale du vecteur Y

  34. Réseaux Compétitifs Linéaires 2 Règle de Sanger {Xk, k = 1, 2, …, K} une base d’apprentissage Application de la règle d’Oja  V1 1 2 Transformation de la base d’apprentissage : - Calculer la projection de Xksur V1 (i.e. calcul de u1) - transformation XkYk= Xk- u1V1, k=1,…, K Application de la règle d’Oja  V2 3 Répétition …... 4

  35. X=[x1, .., xN] Réseaux de Quantification Vectorielle 3 Fondements :réduction des bases de données CP QV P=[p1, .., pN] X=[u1,u2]

  36. . . . . . . . Problématique de reconnaissance de formes . . . . . . . . . . . . . . . . . . . . . . . . . . P3 P3 . . . . . . P1 P1 . . . . . . . . . . . . . . d3 d1 y . . . z . . . . z . d2 . . . . . . . . P2 P2 . . . . . . x 2 3 Les vecteurs prototypes z z (d1,d2,d3) (x,y)

  37. Réseaux de quantification vectorielle 3 Réseau de Kohonen-VQ non supervisé, 1983 ym=X . WmT y1 yM Couche compétitive m wm1 wmn wmN Couche d’entrée x1 xn xN LVQ : pour n = 1, …, N

  38. Réseaux de quantification vectorielle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Quantification vectorielle non supervisée Quantification vectorielle supervisée

  39. Réseaux de quantification vectorielle Neurone gagnant Wm* W2 Xk WM W1 vecteur des poids synaptiques du neurone gagnant 3 Explication graphique D Wm* W2 Xk WM W1 Nouveau vecteur des poids synaptiques Compétition Adaptation

  40. Réseaux de quantification vectorielle 3 Il s’agit d ’un apprentissage non supervisé Adaptation des poids plus sévère que celle de Hebb Règle de Hebb Algorithme LVQ Convergence non garantie

  41. Réseaux de quantification vectorielle 3 Réseaux de Kohonen-VQ supervisés 1 B = {(Xk,Dk), k=1, 2, .., K},base étiquetée Architecture : réseaux compétitif linéaire 2 3 Les neurones de la couche de sortie sont étiquetés

  42. Réseaux de quantification vectorielle 3 L’algorithme d’apprentissage LVQ1 Retour au principe de Récompense/Punition D Wm* D Wm* Xk Xk WM WM Wm* Wm* W2 W2 W1 W1 Punition Classe(Xk)  Classe (Wm*) Récompense Classe(Xk) = Classe (Wm*) Dw(j*) = + h(t) [Xk - Wm*] Si Classe(Xk) = Classe (Wm*) Dw(j*) = - h(t) [Xk - Wm*] Si Classe(Xk)  Classe (Wm*)

  43. Réseaux de quantification vectorielle 3 L’algorithme d’apprentissage LVQ2 La course aux performances ……... Maintenir le principe de Récompense/Punition La compétition fournit deux neurones gagnants : le premier m1 et le second m2 gagnants. L’esprit de l’algorithme de Kohonen : L'adaptation des vecteurs de référence correspondants Wm1 et Wm2 est réalisée si et seulement si les trois conditions suivantes sont vérifiées :

  44. Réseaux de quantification vectorielle 3 1 Classe(Xk)  Classe(Wm1) erreur de classification du neurone gagnant 2 Classe(Xk) = Classe(Wm2) bonne classification du second neurone gagnant 3 distance(Xk,Wm2)  distance(Xk,Wm1) le vecteur Xk est très proche de la surface de séparation entre les classes m1 et m2 Adaptation D Wm1 = - h(t) [Xk - Wm1] Punition D Wm2 = + h(t) [Xk - Wm2] Récompense

  45. Réseaux de quantification vectorielle Pas de modification 3 Surface de séparation Zone de modification Récompense / Punition

  46. 4 Cartes topologiques de Kohonen 1ère constatation L’organisation linéaire n’a pour intérêt que l’aspect pédagogique. 2ème constatation Les réseaux compétitifs linéaires s’éloignent de la réalité Neurobiologique « les zones d’activité ».

  47. Cartes topologiques de Kohonen 4 Architecture proposée : une couche linéaire mono ou multi dimensionnel. Voisins ordonnés du neurone m 1 2 3 i 1 2 m 3 j Un neurone est caractérisé par ses poids synaptiques et par sa position ( notion de voisinage topologique)

  48. Cartes topologiques de Kohonen 4 Formes de voisinage (2D)

  49. Cartes topologiques de Kohonen 4 Algorithme d’apprentissage non supervisé Etant donnée la base d’apprentissage B, on " choisit " 1.la taille de la carte 2.une fonction monotone décroissante 0<h(t)<1 : fonction d’influence temporelle (les modifications diminuent en fonction du temps, Question d’âge !!!) 3.un voisinage topologique V(t) décroissant

  50. Cartes topologiques de Kohonen 4 Parcours de la base d'apprentissage Présentation d’une forme d’entrée X 1 2 Détermination du neurone gagnant 3 Adaptation des poids synaptiques des vecteurs de référence se trouvant dans le voisinage topologique V(t) du neurone gagnant : DWm = - a(m,m*) h(t) [Xk - Wm] m Vm*(t), a(m,m*)interaction latérale

More Related