Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module...

Preview:

Citation preview

Module comportemental

Apprentissage d’un réseau de neurones par algorithme génétique

David PANZOLI

(D.E.A IIL)

Stage de recherche 2003

Équipe synthèse d’images(UT1-IRIT)

Objectifs• Modéliser des acteurs autonomes en réalité virtuelle

• Plusieurs méthodes de description du comportement

§ Scripts

§Moteurs d’inférence

§ Systèmes dynamiques d’apprentissage

Contexte

§ Créatures de Karl Sims(SIGGRAPH ‘94)

§ Poursuites de Cliff & Miller(SAB96)

§ Framsticks de Komosinski(Kybernetes: The International Journal of Systems & Cybernetics, 2003)

• Comportements modélisés par réseaux de neurones.

Réseaux de neurones

S ƒ

wi

wj

wk

Algorithmes Génétiques• Fait évoluer génétiquement une population de solutions à un

problème.

• Opérateurs génétiques :

Croisement multipoint

Mutation monopoint

§ Sélection

§ Recombinaison

§ Mutation

?

ANN et AG• Utilisation concurrente

• Optimisation des paramètres : – taille, topologie, caractéristiques, etc.

• Affinage des poids : – alternative à la rétropropagation

• Génération de topologies : – « Adaptation in Neural and Artificial Systems » (Holland 75)

• Sélection d’un jeu de données d’apprentissage

Évolution de réseaux de neurones

Morphogenèse

génotype

phénotype

Evaluation

feedback de l’évaluation

Evolution Genetique

Représentation chromosomique d’un réseau de neurones ?

Évaluation d’un réseau de neurones ?

Représentation chromosomique

• Encodage direct– Matrice de poids pour un réseau complet et fixé– Encodage des liens [Luga]

• Encodage indirect– Codages grammaticaux : cellulaire [Gruau], géométrique, biologique

(~ L-systems), etc.– Autres : programmation génétique, programmes LISP, etc.

?

Représentation des liens entre neurones

5

8 -2.63

5 8 -2.63 7 2 0.14 3 5.31 0

Morphogenèse

gène complexe

lien neuronal

Morphogenèse

Réseau de neurones

chromosome

Morphogenèse d’un lien neuronal

Morphogenèse d’un réseau de neurones

Module comportemental

0 1

8 9

4

7

2

• Gère le comportement de l’acteur en liant perception et action

• Intégration du réseau de neurones entre capteurs et effecteurs

Contrôle d’une entité virtuelle :modèles simples

Modèle 2D :

• 2 capteurs

• 2 effecteurs

Modèle 3D simple :

• 3 capteurs

• 3 effecteurs

Apprentissage du réseau de neurones ?

Évaluation et sélection

Plusieurs techniques :

• Calcul de la distance du robot à la lumière en fin de trajet.

• Intégration de la luminance reçue par les capteurs sur un trajet d’une durée fixée. (Gestion éventuelle de l’énergie)

L’évaluation du réseau de neurones s’effectue intégré dans une entité et en simulation

Phase critique de l’apprentissage !!!

Croisement de réseaux de neurones (1/4)

• Problème des permutations ou ‘‘conventions concurrentes’’ [Hancock 92] gène le processus de convergence

0

1

7

5

28

wk + wo

wl

wm

wn

wp

0

1

2

58

wi

wj

wk

wl

wm

0

1

7

5

8

wn

wo

wp

wq

wr

ws

0

1

2 7

58wj wq

wr

ws

wi

Recombinaison

point de croisement

point de croisement

réseau invalide ! 2

représentation phénotypique

représentation génotypique

réseau infirme !

Nécessité de trouver une méthode plus adaptée

wi20 wj21 wk51 wl82wm85

wn70 wo51 wp71 wq75wr85 ws87

wi20 wj21 wq75 wr85ws87

wn70 wo51 wp71 wk51wl82 wm85

Croisement de réseaux de neurones (2/4)

Chaque sortie : • dépend en principe de toutes les entrées

• est indépendante des autres

0 1

8

7

2

0 1

9

4

0 1

8 9

4

7

2

0

1

2

3

4 5

6

5

3 4

2 0 1 0

0

6

2

0

3

1 0

4

0 2

0

Extraction des arbres de sortie

Croisement de réseaux de neurones (3/4)

Pour chaque sortie, construction de l’arbre du parcours inverse de l’influx nerveux des entrées vers elle.

0

1

2

3

4 5

5

3 4

2 0 1 0

0

6

3

1

4

0 3

1

1

0

1 3

4

6

0

1

2

3

4 5

6

arbre de la sortie gauche du parent A

arbre de la sortie droite du parent B

réseau de neurones associé

réseau de neurones associé

réseau de neurones issu de la recombinaison des deux

arbres de sortie

Obtention d’un réseau fils

Croisement de réseaux de neurones (4/4)

Génération de réseaux valides !

Mutation de réseaux de neurones

• Basé sur l’observation des faiblesses de certains réseaux

0 3

1 4

2 5

6

0

1

2

3

4 5

0 3

1 4

2

6

0

1

2

3

4 5

6

comportement inadapté !

bon comportement

bon comportement

bon comportement

inversion 3

extraction

1

duplication

2

combinaison 4

Peut corriger certains handicaps !

Résultats• Marche bien avec le modèle cité ci-avant

• Marche encore avec le modèle 3D

0

500

1000

0 10 20 30 40 50

génération

fitn

ess

mo

yen

basique blend des poids arbres de sorties

Discussion

• Bonne technique car adaptée aux modèles sur lesquels elle porte

0

1

5

6

2

3

4

poids > 0.75

poids > 0.5

poids > 0.25

poids > 0

Modèle plus complexe (1/2)

3 capteurs

3 effecteurs

• Modèle 3D complexe n’est plus une simple extension du modèle 2D.

• Sorties ne sont plus indépendantes(un mouvement basique requiert la combinaison de plusieurs sorties)

Croisement toujours efficace ?

Modèle plus complexe (2/2)

• Perte de l’optimisation de l’apprentissage

Possibilité de produire un bon individu

0

50

100

0 20 40 60 80 100

Générations

fitn

ess

mo

yen

basique blend des poids arbres de sortie

Conclusion

Difficulté de conception d’opérateurs génétiques efficaces.

De part leur principe de fonctionnement, les réseaux de neurones constituent une très bonne approche à la modélisation comportementale.

La souplesse des algorithmes génétiques permettent un fin contrôle de l’apprentissage.

Optimisations très dépendantes de la structure du problème

Perspectives

• Identification du rôle des neurones au sein du réseau. Isolation de neurones clés

• Génération de comportements complexes par encapsulation.

• Étude des propriétés d’un réseau par comparaison avec un classifieur.

0

1

3

24 5

6

7

Recommended