Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
1
Chapitre 6 Réseaux récurrents
2
Plan Structure du réseau de Hopfield Dynamique Apprentissage
Application à l’optimisation Machine de Boltzmann
3
Découverte J. Hertz, A. Krogh et R.G. Palmer, Introduction to the theory of Neural Computation, Addison-Wesley, 1991. Classique Orienté « sciences pures » (physique) Auteurs: chercheurs en physique stat. Cours d’études supérieures Approche théorique R.J. Schalkoff, Artificial Neural Networks, McGraw Hill, 1997 Approche matricielle Beaucoup d’exemples Couvre la plupart des modèles L. Fausett, Fundamentals of Neural Networks, Prentice Hall, 1994 Livre de référence pour les éditions précédentes du cours (avant 2004)
4
Découverte informatique
Matlab Student version with Simulink Learning Matlab 7 Learning Simulink 6 3 CDs pour installation Windows Linux MacOS X
5
6.1 Architecture du réseau de Hopfield
Article à l’origine: John Hopfield, 1982, Neural Networks and physical systems with emergent collective computational abilities Principe de base: Système nerveux possède des états stables localement. Ces états stables permettent d’emmagasiner de l’information qui agit comme attracteur. Un état est présenté au réseau, qui tend alors vers un état stable en minimisant son énergie
6
Inspiration: verres de spin
Au début des années 70, l’étude des systèmes désordonnés était à l’honneur en physique. Les «verres de spin» sont des matériaux magnétiques qui sont beaucoup plus proches du verre (vitre), en contraste avec les cristaux comme le cuivre. L’étude portait sur le magnétisme atomique rencontré dans ces verres de spin et plus spécifiquement sur l’alignement magnétique: ordonné dans un métal désordonné dans une verre (composé de cuivre Cu et de manganèse Mn) L’alignement des domaines magnétiques est observé comme tendant vers des minima locaux. Hopfield, un physicien gagnant du prix Nobel, s’intéresse à de tels systèmes. Pour lui, tout système physique tend à minimiser son énergie. D’où le développement du réseau récurrent de Hopfield, similaire à un système physique qui cherche toujours à minimiser son énergie interne.
8
Modèle de neurone Vi Vj Tij Tji Vi Vj Tij
La nomenclature est différente de celle vue jusqu’à présent. Elle est conforme à celle utilisée par Hopfield et à de nombreux écrits et articles. Les connexions sont symétriques et égales 2 à 2 pour assurer la stabilité Le neurone de Hopfield est bipolaire. Au départ, Hopfield utilisait un neurone binaire (ou logique) (0, 1) mais est rapidement arrivé au neurone bipolaire parce qu’il offrait plus de possibilités. Vi Vj Tij
9
Exemple V1 V2 -2 1 1 1 S1 +4 +1 S1 et S3 sont les entrées du réseau. -1 1 V3 S3
10
Énergie d ’un réseau de Hopfield
Le système tend vers son état d’énergie minimal : Décroissance assurée de la fonction d’énergie Neurones activés à 1 Activations calculées une à une Attention aux minima locaux (A) ! C’est une fonction de Lyapunov. La minimisation d’une telle fonction assure la stabilité d’un système. Le facteur 1/2 est placé pour indiquer qu’on ne calcule qu’une seule fois le produit TijViVj
11
Exemple de calcul de l’énergie
1 V1 V2 -2 -1 V3 +1 +4 S3 S1
12
Un réseau simple de Hopfield
À partir de cette configuration de réseau, dans lequel on a stocké 2 formes, on part de cet état initial et on va minimiser l’énergie pour arriver à 1 des 2 formes mémorisées. La démarche de relaxation a été vue en détail au dernier cours.
13
6.2 Dynamique du réseau: relaxation
Objectif : Partir d’un niveau d’énergie donné, atteindre le minimum local le plus proche pour récupérer l’information stockée (état stable) Conditions initiales : Forme P Si Poids : Fixes (calculés lors d’un apprentissage antérieur) Neurones : a) Activations calculées une à une b) Selon une séquence aléatoire c) Valeurs 1 pour assurer la minimisation de la fonction d’énergie. Résultat : Minimisation de la fonction d’énergie et rappel de formes similaires précédemment enregistrées lors de l’apprentissage
14
Relation entre changement d’état et minimisation de l’énergie
On a Soit Vk l’activation d’un neurone k quelconque : Si le neurone ne change pas d’état : Si le neurone change d’état : E= tous les termes ne comprenant pas Vk s’annulent dans le calcul de E Si Vk est positif, c’est donc que Vk devient positif et donc que netk est aussi positif. E sera alors forcément négatif. Même raisonnement pour Vk négatif. Donc, on prend un neurone Vk au hasard,et on calcule sa valeur netk. On applique la fonction de sortie du neurone. Deux cas se présentent: L’état du neurone ne change pas, donc Vk est nul, pas de changement de l’énergie du système, et donc la condition de relaxation est respectée. L’état du neurone change, et le changement d’énergie E est garanti négatif, ce qui respecte la condition de relaxation Conclusion, on n’a plus à calculer l’énergie du système avant et après le changement d’état du neurone, on n’a qu’à calculer la sortie du neurone à partir de sa valeur nette, sans se préoccuper de la valeur de l’état précédent. Net(k)
15
Exemple pour montrer l’équivalence
1 V1 V2 -2 -1 V3 +1 +4 S3 S1 Neurone V1 1 -1
16
Relation entre changement d’état et minimisation de l’énergie (2)
Si on a un changement d’état alors on est assuré de diminuer E :
17
Algorithme de relaxation
DÉPART Tirage aléatoire d’une séquence de visite des neurones Sélection du prochain neurone de la séquence Non Vj tous visités ? Oui Non P stable ? Oui FIN
18
Exemple de relaxation 6 7 +1 2 1 -1 5 4 3
19
Les états stables du réseau
20
6.3 Apprentissage « tailler » la courbe d’énergie
La règle la plus simple: Hebb L’apprentissage est réalisé AVANT d’utiliser le réseau comme mémoire associative pour retrouver la forme emmagasinée à partir d’information partielle ou bruitée
21
Exercice Example 3.22 (Fausett)
Stocker le vecteur (1,1,1,-1) par apprentissage hebbien Présenter (-1,-1,1,-1) lors de la phase de relaxation Déterminer le nombre correct d’itérations Calculer la mise à jour de la fonction d’énergie pour chaque mise à jour de l’activation des neurones EXERCICE 2 du Chap. 6. Exercices et solutionnaire disponibles sur le site du cours.
22
6.4 Optimisation Une fonction de coût remplace la fonction d’énergie
L’optimisation consiste à minimiser la fonction de coût La fonction de sortie utilisée est la fonction sigmoïde (au lieu de la fonction signe ou échelon) Références: Faussett, section 7.1.2 Freeman/Skapura, section (explication détaillée) On cherche une solution à moindre coût de réalisation
23
Exemple: Voyageur de commerce
Un vendeur doit établir un itinéraire de visite de 5 villes. Il doit partir de Boston et revenir à Boston à la fin de son itinéraire. Chaque ville est visitée une et une seule fois L’itinéraire doit être le plus court possible afin de minimiser les frais d’essence La principale difficulté rencontrée avec ce type de problème est l’explosion combinatoire des solutions à évaluer.
24
Itinéraires possibles : 5 villes = 12 10 villes = 181440
Problème: explosion combinatoire. Le nombre de combinaisons possibles est proportionnel à la factorielle du nombre de villes. Itinéraires possibles : 5 villes = 12 10 villes = 100 villes = 4.67 *10155
25
Réseau de Hopfield Lignes villes Colonnes séquence de visite
Poids contraintes du problème à résoudre 1 ville visitée 1 seule fois 1 étape 1 seule ville Distance entre les villes Activation du réseau minimisation du coût
26
Fonction de coût (à minimiser) : 4 contraintes
C1: Favoriser les états avec chaque cité visitée une seule fois 1 neurone activé par ligne C2: Favoriser les états avec une seule valeur de position (par exemple, éviter que 2 villes soient visitées à l’étape 3) 1 neurone activé par colonne C3: Favoriser les états qui incluent les n villes C4: Favoriser les états avec les distances totales les plus courtes
27
Fonction de coût C C1 C2 C3 C4 Vxi : neurone correspondant à la ville x à l’étape i dxy : distance entre les villes x et y A, B, C, D : facteurs de pondération pour les contraintes C1 = 0 ssi 1 neurone activé par ligne C2 = 0 ssi 1 neurone activé par colonne C3 = 0 ssi n neurones activés dans le réseau C4 = calcule distance totale de parcours. Minimum pour une distance totale minimum
28
Fonction de coût C Une matrice n’a pas plus de un 1 dans chaque ligne si chaque produit scalaire possible colonne par colonne est nul La double somme de droite exprime les N-1 produits scalaires de la colonne i (visite) pour une ligne (ville) x avec les autres colonnes La sommation de gauche exprime la sommation de toutes les possibilités énumérées à l’étape précédente
29
Fonction de coût C Pénalité pour deux 1 ou plus dans chaque colonne
Fonctionnement similaire à la contrainte précédente mais pour contrôler le nombre 1 dans chaque colonne.
30
Fonction de coût C Contrainte pour s’assurer que la matrice ne contienne pas que des 0 En effet les deux contraintes précédentes pourraient ne donner que des 0 et le réseau ne serait d’aucune utilité : la meilleure facon de minimiser les frais de déplacements est de ne pas voyager. Cette contrainte pénalise aussi le fait d’avoir plus ou mois de n 1 dans le réseau
31
Fonction de coût C Exercice à faire à la maison …….
32
Calcul des poids Les connexions sont inhibitives.
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.