Académique Documents
Professionnel Documents
Culture Documents
Réseaux récurrents
Plan
Structure du réseau de Hopfield
Dynamique
Apprentissage
Application à l’optimisation
Machine de Boltzmann
Cours #7 GPA-779
- 2 Application des réseaux de neurones et des systèmes experts
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
Cours d’études supérieures
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)
Cours #7 GPA-779
- 3 Application des réseaux de neurones et des systèmes experts
Découverte informatique
Matlab Student version
with Simulink
Learning Matlab 7
Learning Simulink 6
3 CDs pour installation
– Windows
– Linux
– MacOS X
Cours #7 GPA-779
- 4 Application des réseaux de neurones et des systèmes experts
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
Cours #7 GPA-779
- 5 Application des réseaux de neurones et des systèmes experts
Inspiration: verres de spin
Cours #7 GPA-779
- 6 Application des réseaux de neurones et des systèmes experts
Modèle de neurone
Ti
Vi Vj
j
Tij = T ji
Tj
€
Vi i Vj
Vj = 1 si ∑ TijVi ≥ 0
Ti i
j Vj = −1 si ∑ TijVi < 0
i
Cours #7 GPA-779
- 8 Application des réseaux de neurones et des systèmes experts
Exemple
V1 V2
-2
1 1 1
S1
+4 +1
-1
1
V3
S3
Cours #7 GPA-779
- 9 Application des réseaux de neurones et des systèmes experts
Énergie d ’un réseau de Hopfield
• Décroissance assurée de
la fonction d’énergie
• Neurones activés à 1
• Activations calculées
une à une
Cours #7 GPA-779
- 10 Application des réseaux de neurones et des systèmes experts
Exemple de calcul de l’énergie
V2
V1 E=−1 ∑∑TijViV j−∑SiVi
- 2 i j i
1 1 2 1
S1
+ +
E=−[V1V3T13+V1V2T12+V2V3T23]−[S1V1+S3V3]
4 1
-1 −E=−4+(−2)+(−1)+1+(−1)
1
V3 −E=−7
S3
Cours #7 GPA-779
- 11 Application des réseaux de neurones et des systèmes experts
Un réseau simple de Hopfield
Cours #7 GPA-779
- 12 Application des réseaux de neurones et des systèmes experts
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)
Cours #7 GPA-779
- 14 Application des réseaux de neurones et des systèmes experts
Exemple pour montrer l’équivalence
E=−1 ∑∑TijViV j−∑SiVi
2 i j i
V1 V2
E=−[V1V3T13+V1V2T12+V2V3T23]−[S1V1+S3V3]
-
1 1 2 1 −E=−4+(−2)+(−1)+1+(−1)
−E = −7 ⇒ E i = +7
S1
+
4
+
1
Neurone V1 1 -1
-1 −E f = +4 + 2 −1−1−1
1 € = +3
V3 E f = −3 ⇒ E ↓⇒ changement accepté
S3
net1 = S1 − 2V €2 + 4V3 = 1− 2 − 4 = −5
V1 = −1 €
Cours #7 GPA-779
- 15 €de neurones et des systèmes experts
Application des réseaux
Relation entre changement d’état et
minimisation de l’énergie (2)
⎛
ΔE=−ΔVk⎜∑TikVi+Sk⎞
⎝ i≠k ⎠
ΔE=0 ΔE<0
Cours #7 GPA-779
- 16 Application des réseaux de neurones et des systèmes experts
Algorithme de relaxation
DÉPART
Vk =1si∑TikVi+Sk≥0
i
Vk =−1si∑TikVi+Sk<0
i
Non Vj tous
visités ?
Oui
Non
P stable ?
Oui
FIN
Cours #7 GPA-779
- 17 Application des réseaux de neurones et des systèmes experts
Exemple de relaxation
6 7
+1
2 1
-1
5 4 3
Cours #7 GPA-779
- 18 Application des réseaux de neurones et des systèmes experts
Les états stables du réseau
Cours #7 GPA-779
- 19 Application des réseaux de neurones et des systèmes experts
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
Cours #7 GPA-779
- 20 Application des réseaux de neurones et des systèmes experts
Exercice
Example 3.22 (Fausett)
1+ e
Cours #7 GPA-779
- 22 Application des réseaux de neurones et des systèmes experts
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.
Cours #7 GPA-779
- 23 Application des réseaux de neurones et des systèmes experts
n!
# parcours =
2n
Itinéraires possibles :
5 villes = 12
10 villes = 181440
100 villes = 4.67 *10155
Cours #7 GPA-779
- 24 Application des réseaux de neurones et des systèmes experts
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
Cours #7 GPA-779
- 25 Application des réseaux de neurones et des systèmes experts
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
Cours #7 GPA-779
- 26 Application des réseaux de neurones et des systèmes experts
Fonction de coût C
C1 C2 C3 C4
Cours #7 GPA-779
- 27 Application des réseaux de neurones et des systèmes experts
Fonction de coût C
2
⎛
C≡E= A ∑∑∑VxiVxj+ B ∑∑∑VxiVyi+C ⎜∑∑Vxi−n⎞ + D∑∑∑dxyVxi(Vy,i+1+Vy,i−1)
2 x i j≠i 2 i x y≠x 2⎝ x i ⎠ 2 x y≠x i
Cours #7 GPA-779
- 29 Application des réseaux de neurones et des systèmes experts
Fonction de coût C
2
⎛
C≡E= A ∑∑∑VxiVxj+ B ∑∑∑VxiVyi+C ⎜∑∑Vxi−n⎞ + D∑∑∑dxyVxi(Vy,i+1+Vy,i−1)
2 x i j≠i 2 i x y≠x 2⎝ x i ⎠ 2 x y≠x i
…….
Cours #7 GPA-779
- 31 Application des réseaux de neurones et des systèmes experts
Calcul des poids
Cours #7 GPA-779
- 32 Application des réseaux de neurones et des systèmes experts