Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes...

32
Chapitre 6 Réseaux récurrents

Transcript of Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes...

Page 1: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

Chapitre 6

Réseaux récurrents

Page 2: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 2

Plan Structure du réseau de Hopfield

Dynamique Apprentissage Application à l’optimisation Machine de Boltzmann

Page 3: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 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 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)

Page 4: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 4

Découverte informatique Matlab Student version with Simulink Learning Matlab 7 Learning Simulink 6 3 CDs pour installation– Windows– Linux– MacOS X

Page 5: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 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

Page 6: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 6

Inspiration: verres de spin

Page 7: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.
Page 8: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 8

Modèle de neurone

Vi Vj Ti

j

Tj

i Vi Vj

Ti

j

Tij =T ji

Vj =1 si TijVii

∑ ≥ 0

Vj = −1 si TijVii

∑ < 0

Page 9: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 9

Exemple

1 1

V1 V2

-2

-1

V3

+1+4

1

1

S3

S1

Page 10: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 10

Énergie d ’un réseau de Hopfield

E=−12 TijViVj

j∑

i∑ − SiVi

i∑

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) !

Page 11: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 11

Exemple de calcul de l’énergie

1 1

V1 V2

-2

-1

V3

+1

+4

1

1

S3

S1

E=−V1V3T13+V1V2T12+V2V3T23[ ]−S1V1+S3V3[ ]

−E=−4+(−2)+(−1)+1+(−1)

−E=−7

E=−12 TijViVj

j∑

i∑ − SiVi

i∑

Page 12: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 12

Un réseau simple de Hopfield

Page 13: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 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

Page 14: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 14

Relation entre changement d’état et minimisation de l’énergie

On a

E=−12 TijViVj

j∑

i∑ − SiVi

i∑

Si le neurone ne change pas d’état :

Si le neurone change d’état :

ΔE=E t+1( )−E t( )

ΔE=−ΔVk TikVi+Ski≠k∑⎛

⎝ ⎜ ⎞

ΔE=0

Net(k)

Soit Vk l’activation d’un neurone k quelconque :

Page 15: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 15

Exemple pour montrer l’équivalence

1 1

V1 V2

-2

-1

V3

+1

+4

1

1

S3

S1

E=−V1V3T13+V1V2T12+V2V3T23[ ]−S1V1+S3V3[ ]

−E=−4+(−2)+(−1)+1+(−1)

−E = −7⇒ E i = +7

E=−12 TijViVj

j∑

i∑ − SiVi

i∑

Neurone V1 1 -1

−E f = +4 + 2 −1−1−1

=+3

E f = −3⇒ E↓⇒ changement accepté

net1 = S1 − 2V2 + 4V3 =1− 2 − 4 = −5

V1 = −1

Page 16: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 16

Relation entre changement d’état et minimisation de l’énergie (2)

ΔE=−ΔVk TikVi+Ski≠k∑⎛

⎝ ⎜ ⎞

ΔE=0

ΔE<0

ΔVkestpositifssi Tiki≠k∑ Vi+Skestpositif

ΔVkestnegatifssi Tiki≠k∑ Vi+Skestnegatif

Vk t( )=Vk t+1( )

Vk t( )≠Vk t+1( )

Si on a un changement d’état alors on est assuré de diminuer E :

Page 17: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 17

Algorithme de relaxation

Vj tous visités ?

Tirage aléatoire d’une séquence de visite des neurones

Sélection du prochain neurone de la séquence

Vk=1si TikVi+Ski∑ ≥0

P stable ?

Non

NonOui

Oui

FIN

DÉPART

Vk=−1si TikVi+Ski∑ <0

Page 18: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 18

7

5 4 3

12+1

-1

6

Exemple de relaxation

Page 19: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 19

Les états stables du réseau

Page 20: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 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

Page 21: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 21

ExerciceExample 3.22 (Fausett)

a) Stocker le vecteur (1,1,1,-1) par apprentissage hebbien

b) Présenter (-1,-1,1,-1) lors de la phase de relaxation

c) Déterminer le nombre correct d’itérations

d) Calculer la mise à jour de la fonction d’énergie pour chaque mise à jour de l’activation des neurones

Page 22: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 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)

tanhnet2

⎛ ⎝ ⎜

⎞ ⎠ ⎟ ou

1

1+ e−net

Page 23: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 23

Exemple: Voyageur de commerceUn 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.

Page 24: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 24

Itinéraires possibles :

5 villes = 1210 villes = 181440100 villes = 4.67 *10155

# parcours =n!2n

Page 25: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 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

Page 26: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 26

Fonction de coût (à minimiser) : 4 contraintesC1: 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

Page 27: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 27

Fonction de coût C

C≡E=A2 Vxij≠i∑

i∑

x∑ Vxj+B2 Vxi

y≠x∑

x∑

i∑ Vyi+C2 Vxi−n

i∑

x∑⎛

⎝ ⎜ ⎞

2

+D2 dxyVxiVy,i+1+Vy,i−1( )i∑

y≠x∑

x∑

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 C2 C3 C4

Page 28: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 28

Fonction de coût C

C≡E=A2 Vxij≠i∑

i∑

x∑ Vxj+B2 Vxi

y≠x∑

x∑

i∑ Vyi+C2 Vxi−n

i∑

x∑⎛

⎝ ⎜ ⎞

2

+D2 dxyVxiVy,i+1+Vy,i−1( )i∑

y≠x∑

x∑

1.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

Page 29: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 29

Fonction de coût C

C≡E=A2 Vxij≠i∑

i∑

x∑ Vxj+B2 Vxi

y≠x∑

x∑

i∑ Vyi+C2 Vxi−n

i∑

x∑⎛

⎝ ⎜ ⎞

2

+D2 dxyVxiVy,i+1+Vy,i−1( )i∑

y≠x∑

x∑

2. 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.

Page 30: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 30

Fonction de coût C

C≡E=A2 Vxij≠i∑

i∑

x∑ Vxj+B2 Vxi

y≠x∑

x∑

i∑ Vyi+C2 Vxi−n

i∑

x∑⎛

⎝ ⎜ ⎞

2

+D2 dxyVxiVy,i+1+Vy,i−1( )i∑

y≠x∑

x∑

3. 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

Page 31: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 31

Fonction de coût C

C≡E=A2 Vxij≠i∑

i∑

x∑ Vxj+B2 Vxi

y≠x∑

x∑

i∑ Vyi+C2 Vxi−n

i∑

x∑⎛

⎝ ⎜ ⎞

2

+D2 dxyVxiVy,i+1+Vy,i−1( )i∑

y≠x∑

x∑

4. Exercice à faire à la maison

…….

Page 32: Chapitre 6 Réseaux récurrents. GPA-779 Application des réseaux de neurones et des systèmes experts Cours #7 - 2 Plan  Structure du réseau de Hopfield.

GPA-779 Application des réseaux de neurones et des systèmes expertsCours #7 - 32

Calcul des poids

Wxi,yj=−Aδxy1−δij( )−Bδij 1−δxy( )−C−Ddxyδj,i+1+δj,i−1( )

sinon 0

si 1

:Kronecker deopérateur l' avec

=

==

ij

ij ji

δ

δ