WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

La formation réticulée médiane : un substrat pour la sélection de l'action ? modélisation via réseaux de neurones et algorithmes évolutionnistes.

( Télécharger le fichier original )
par Franck Dernoncourt
ENS Ulm  - Master Recherche en Sciences Cognitives 2011
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

Chapitre 2

Matériel théorique

Pour commencer, nous allons expliquer comment la mRF dans notre modèle sera formalisée en un réseau de neurones. Puis, comme nous la ferons évoluer par algorithmes évolutionnistes, nous allons présenter le fonctionnement de ces derniers et voir ce qu'ils peuvent nous apporter. Les aspects techniques de l'implémentation de ces outils théoriques seront évoqués dans l'annexe A.

2.1 Les réseaux de neurones

Un r'eseau de neurones est compos'e d'un ensemble de neurones et d'un ensemble de connexions orient'ees liant certains neurones d'entre eux. Formellement, nous pouvons le consid'erer comme 'etant un graphe orient'e et pond'er'e, chaque noeud correspondant a` un neurone.

Il existe diff'erents types de neurones : dans notre modèle, nous utiliserons une variante des neurones a` taux de d'echarge de type int'egrateurs a` fuite, appel'es lPDS (locally Projected Dynamical Systems) car ils permettent de mod'eliser une population de neurones. Nous avons choisi les lPDS en raison de leur propri'et'e de stabilit'e int'eressante, puisqu'il a 'et'e montr'e, par exemple, que la stabilit'e (au sens de la contraction) d'un système non lin'eaire compos'e de lPDS d'ecoule directement de la stabilit'e du même système sans lPDS, ce qui n'a pas 'et'e montr'e pour les int'egrateurs a` fuite standard [Girard et al., 2008]. Comme nous cherchons ici a` construire un système permettant la s'election de l'action, la stabilit'e est pr'ef'erable a` l'instabilit'e.

Un neurone lPDS est caract'eris'e par 2 paramètres : - ô, correspondant a` la constante de temps;

- threshold, correspondant au seuil d'activation.

Par simplicite, afin de ne pas multiplier les param`etres libres, nous avons fixeô a` 5ms et mis le threshold a` 0. Nous avons egalement fixele pas d'iteration dt, qui doit etre par construction toujours inferieur a` ô, a` 1ms.

La premi`ere operation realisee par le neurone consiste en une somme des grandeurs
recues en entrees, ponderees par les coefficients synaptiques, c'est-`a-dire la somme

w1x1 + .. . + wmxm =

Xm
j=1

wjxj, o`u les xi etant les entrees et wi les coefficients

synaptiques.

(m

threshold +

Nous devons ajouter le seuil threshold a` cette formule : Ewjxj

j=1

Nous utiliserons l'integration des lPDS par la methode approchee d'Euler. La fonction d'activation sera donc la suivante, an etant la valeur interne actuelle du neurone, an+1 sa future valeur interne, egale a` la valeur de sortie :

an+1(x) = #177;max (1,min (0, (an + (x - an) * dt)))

ô

Comme x correspond a` la somme ponder'ee des grandeurs recues en entrees, cela nous donne au final :

? an+1 = #177;max 1, min (0, an + (threshold + Ewjxj - an) X dtô

j=1

Le #177; present dans la formule traduit le fait qu'un neurone lPDS peut etre soit excitateur, soit inhibiteur.

La figure 2.1 montre un exemple de neurone, et le graphe B.1 represente un reseau de neurones issu de notre mod`ele correspondant a` une mRF avec 4 clusters.

FIGURE 2.1: Exemple d'un neurone avec 2 entrées et une fonction d'activation a` seuil.

FIGURE 2.2: Exemple d'une mRF a` 4 clusters. Les neurones oranges sont excitateurs, les neurones bleus foncésont inhibiteurs. Un cluster correspond a` un rectangle bleu. Les neurones situés en dehors des rectangles bleus représentent les entrées que recoit la mRF ainsi que les neurones vers lesquels elle projette. Cette figure se trouve également dans l'annexe B en version agrandie.

FIGURE 2.3: Exemple d'un cluster de la mRF. Les neurones oranges sont excitateurs, les neurones bleus foncésont inhibiteurs. Chaque connexion synaptique a` un poids entre 0 et 1. Les 3 neurones en bleu clair sont les entrées (neurones d'entrée), les 3 neurones en rouge sont les sorties de la mRF (neurones de sortie). Cette figure se trouve également dans l'annexe C en version agrandie.

De même, chaque cluster de la mRF a le même nombre de sorties. Au niveau global de la mRF, les valeurs de sorties correspondent a` la moyenne des valeurs des sorties de chaque cluster. La figure C.1 montre un cluster. Un cluster a un nombre de neurones et de connexions variables.

Ces réseaux comportant une quantitéimportante de neurones, de connexions et de paramètres, il serait fastidieux de les optimiser a` la main pour étudier en quelle mesure leur structure permet la sélection de l'action. Par conséquent, nous avons choisi d'utiliser les algorithmes évolutionnistes pour trouver des solutions par cette méthode d'optimisation qui a des propriétés particulièrement intéressantes pour notre problème comme nous allons le voir dans la section suivante.

2.2 Les algorithmes 'evolutionnistes

2.2.1 D'efinitions

Les algorithmes 'evolutionnistes, 'egalement appel'es algorithmes 'evolutionnaires, sont une famille d'algorithmes d'optimisation s'inspirant du principe de s'election naturelle de la th'eorie darwinienne. Dans le cadre de la s'election naturelle, un environnement donn'e contient une population d'individus qui sont en concurrence pour la survie et la reproduction. L'aptitude de chaque individu a` r'ealiser ces deux objectifs d'etermine leur chance d'avoir des enfants, autrement dit de transmettre leurs gènes a` des individus de la g'en'eration suivante, lesquels auront pour des raisons g'en'etiques une chance accrue de bien r'eussir a` leur tour, voire mieux, ces deux objectifs.

Ce principe d'am'elioration constante au cours des g'en'erations est repris par les algorithmes 'evolutionnistes pour optimiser des solutions a` un problème. A` la g'en'eration initiale, une population compos'ee d'individus diff'erents est g'en'er'ee, al'eatoirement ou bien selon d'autres m'ethodes. Un individu correspond a` une solution au problème, plus ou moins bonne : la qualit'e de l'individu par rapport au problème est appel'ee fitness, le terme anglais traduisant le degr'e d'ad'equation de la solution par rapport au problème a` r'esoudre. Plus la fitness d'un individu est 'elev'ee, plus ce dernier a des chances de transmettre une partie ou la totalit'e de son g'enotype dans des individus de la g'en'eration suivante.

Un individu est cod'e sous la forme d'un g'enotype, qui peut avoir n'importe quelle forme, telle une chaàýne de caractères (algorithmes g'en'etique) ou bien un vecteur de r'eels (strat'egies d''evolution). Chaque g'enotype est transform'e en un ph'enotype au moment de l''evaluation de l'individu, autrement dit lorsque que sa fitness est calcul'ee. Dans certains cas, le ph'enotype est identique au g'enotype : on parle alors de codage direct. Sinon, le codage est dit indirect. Par exemple, imaginons que l'on souhaite optimiser la taille d'un parall'el'epipède rectangle d'efini par sa longueur, sa hauteur et sa largeur. Pour simplifier l'exemple, supposons que ces trois quantit'es soient des nombres entiers compris entre 0 et 15. On peut alors d'ecrire chacune d'elles en utilisant un nombre binaire de 4 bits. Un exemple de solution potentielle peut avoir pour g'enotype 0001 0111 01010. Le ph'enotype correspondant serait un parall'el'epipède de 1 de long, 7 de haut et 10 de large.

Dernière d'efinition avant d'appliquer ces th'eories a` notre modèle de la mRF, au moment du passage de l'ancienne a` la nouvelle g'en'eration, sont appliqu'ees des op'erateurs de variation dont le but est de manipuler les individus. Il existe deux types d'op'erateurs de variation distincts :

- les op'erateurs de mutation, qui servent a` introduire des variations au sein d'un même individu, a` l'instar des mutations g'en'etiques;

- les opérateurs de croisement, qui servent a` se faire croiser au moins deux génotypes différents, a` l'instar des croisements génétiques issus de la reproduction.

Population initiale La fitness du

phénotype est calculée

Les individus sont classés en fonction de leur fitness

Les descendants sont ajoutés à la population

Les individus avec les meilleurs fitness sont croisés entre eux ; des mutations aléatoires sont ajoutées

Les individus avec les plus mauvaises fitness sont enlevés de la population

FIGURE 2.4: Fonctionnement d'un algorithme évolutionniste : a` partir d'une population initiale de solutions, ces dernières sont classées selon leur fitness, les moins bonnes sont éliminées et les meilleurs sont utilisées pour produire de nouvelles solutions. Source : [Doncieux et al., 2004]

Nous avons choisi les algorithmes évolutionnistes car ils ont fait leurs preuves dans des domaines divers tels la recherche opérationnelle, la robotique, la biologie, la finance ou encore la cryptographie. De plus, ils permettent d'optimiser plusieurs objectifs en parallèle et nous pouvons les utiliser comme des boàýtes noires car ils ne présupposent aucune propriétémathématique sur le modèle a` optimiser, permettant ainsi dans notre cas d'optimiser un système dynamique et non linéaire tel un modèle neuronal. Leur seule réelle limite est la complexitécomputationnelle, d'o`u la décision de coder notre programme dans un langage rapide (C++), multi-threadé, et de l'exécuter sur une grappe de serveurs. L'annexe A expose en détail les aspects techniques de l'implémentation.

2.2.2 Application

Dans notre modèle, la mRF est modélisée sous forme d'un réseau de neurones. Le génotype choisi lors de l'implémentation est un ensemble de réseaux de neurones correspondant chacun a` un cluster de la mRF ainsi qu'un vecteur contenant l'ensemble des connexions entre les clusters, que nous appellerons interconnexions. Le phénotype est obtenu a` partir du génotype en copiant chacun de ces réseaux dont un grand réseau, la mRF, sans oublier d'y rajouter les interconnexions.

Nos opérateurs de mutation sont :

- Ajout/suppression d'un neurone;

- Ajout/suppression/modification d'une connexion (intra-réseau) ou d'une interconnexion (inter-réseau).

Nous aurions pu au cours des mutations modifier d'autres paramètres, par exemple certaines propriétés des neurones (e.g. inhibiteur/excitateur), néanmoins nous avons préférélimiter le degréde libertéde l'évolution. 'Egalement, nous n'avons pas choisi d'opérateurs de croisement : bien qu'intuitivement nous pourrions penser qu'il serait intéressant de croiser des mRF en leur permettant de mélanger leurs clusters, une telle opération est d'une part très délicate a` implémenter car les interconnexions sont propres a` chaque cluster et chaque mRF, et d'autre part de tels croisements ne seraient pas vraiment interprétables au niveau de l'évolution étant donnéque le ràole de chacun des clusters n'est pas défini a priori.

Une partie très délicate fut l'implémentation des contraintes anatomiques de la mRF afin que l'évolution produise des réseaux de neurones cohérents avec les connaissances anatomiques. Nous l'avons implémentéa` deux niveaux complémentaires :

- en amont, au niveau des opérateurs de mutation : a` chaque mutation, nous veillons

a` rester aux alentours des données anatomiques;

- en aval, au niveau du calcul de la fitness : nous avons utiliséun algorithme évolutionniste multi-objectif, ce qui nous permet de définir un objectif de plausibilitéanatomique, poussant ainsi les réseaux a` respecter les contraintes anatomiques.

La définition des objectifs impacte considérablement les résultats. Nous avons mis en place un objectif de plausibilitéanatomique, en plus des objectifs propres tàaches de sélection de l'action que nous détaillerons dans la section suivante.

Enfin, nous avons choisi d'utiliser l'algorithme NSGA-II [Deb, 2001, Deb et al., 2002], qui est a` ce jour un des plus performants algorithmes évolutionnistes multi-objectifs et de loin le plus utilisé. Contrairement a` un algorithme mono-objectif o`u il n'y a qu'un seul meilleur individu (avec possiblement des individus ex æquo), les meilleurs individus issus d'une évolution multi-objectif formeront un front appeléfront de Pa-

reto, d'une dimension égale au nombre d'objectifs fixés. La figure 2.5 montre un front de Pareto de dimension 2 et la figure 2.6 compare l'ensemble de résultats obtenus par un algorithme mono-objectif par rapport a` l'ensemble de résultats obtenus par un algorithme mono-objectif.

FIGURE 2.5: Exemple de front de Pareto de dimension 2 : sauf mention contraire, les algorithmes évolutionnistes maximisent les objectifs contrairement a` la majoritédes algorithmes d'optimisation dont le but est de les minimiser.

FIGURE 2.6: Mono vs multi-objectif. Un algorithme mono-objectif donnera 1 résultat, tandis qu'un algorithme multi-objectif donne un ensemble de résutat. Sur la figure de gauche, 11 et 12 correspondent respectivement aux scores obtenus pour l'objectif 1 et 2. w1 et w2 sont des poids affectés aux deux scores, la combinaison linéaire correspondant a` un objectif unique afin de pouvoir utiliser un algorithme mono-objectif. Source: Stéphane Doncieux et Jean-Baptiste Mouret.

A` présent que nous avons présentéd'une part la mRF et d'autre part les outils théoriques que nous avons utilisés pour le projet, tout en expliquant leur ràole dans la modélisation de la mRF, nous allons dans le chapitre suivant détailler les expériences de sélection de l'action réalisées et analyser les résultats obtenus.

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Ceux qui vivent sont ceux qui luttent"   Victor Hugo