Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module...
Transcript of Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module...
![Page 1: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/1.jpg)
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)
![Page 2: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/2.jpg)
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
![Page 3: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/3.jpg)
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.
![Page 4: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/4.jpg)
Réseaux de neurones
S ƒ
wi
wj
wk
![Page 5: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/5.jpg)
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
?
![Page 6: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/6.jpg)
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
![Page 7: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/7.jpg)
É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 ?
![Page 8: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/8.jpg)
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.
?
![Page 9: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/9.jpg)
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
![Page 10: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/10.jpg)
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
![Page 11: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/11.jpg)
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 ?
![Page 12: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/12.jpg)
É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 !!!
![Page 13: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/13.jpg)
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
![Page 14: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/14.jpg)
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
![Page 15: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/15.jpg)
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.
![Page 16: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/16.jpg)
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 !
![Page 17: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/17.jpg)
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 !
![Page 18: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/18.jpg)
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
![Page 19: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/19.jpg)
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
![Page 20: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/20.jpg)
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 ?
![Page 21: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/21.jpg)
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
![Page 22: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/22.jpg)
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
![Page 23: Apprentissage d’un réseau de neurones par …David.Panzoli/DEA/PANZOLI_DEA...Module comportemental Apprentissage d’un réseau de neurones par algorithme génétique David PANZOLI](https://reader030.fdocument.pub/reader030/viewer/2022021712/5b9d08e509d3f2de128b7766/html5/thumbnails/23.jpg)
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