Vous êtes sur la page 1sur 129

LES RESEAUX DE NEURONES ARTIFICIELS INTRODUCTION AU CONNEXIONNISME COURS, EXERCICES ET TRAVAUX PRATIQUES

Claude TOUZET Juillet 1992

Introduction........................................................................................ 3 1 1 2 2 3 4 5 6 2 1 1.1 1.2 1.3 2 3 3.1 3.2 3.3 4 5 3 1 1.1 1.2 2 3 4 4.1 4.2 4.3 4.4 5 4 1 2 3 5 1 2 3 4 5 6 1 2 3 4 5 6 7 Les rseaux de neurones artificiels....................................................... 6 Dfinition.................................................................................... 6 Historique................................................................................... 6 Les premiers succs........................................................................ 7 Lombre..................................................................................... 7 Le renouveau ............................................................................... 7 La leve des limitations.................................................................... 8 La situation actuelle (1992) ............................................................... 8 Le modle neurophysiologique........................................................... 11 Le neurone.................................................................................. 11 Structure..................................................................................... 11 Physiologie ................................................................................. 12 Cration d'un potentiel d'action.......................................................... 14 Message nerveux........................................................................... 15 Circuits neuronaux......................................................................... 16 Habituation.................................................................................. 16 Sensibilisation.............................................................................. 17 Modification synaptique................................................................... 18 La vision et les tages de traitement...................................................... 19 Conclusion.................................................................................. 21 Les modles mathmatiques .............................................................. 22 Composant (le neurone artificiel)......................................................... 22 Structure..................................................................................... 22 Comportement.............................................................................. 23 Variables decriptives....................................................................... 23 Structure d'interconnexion................................................................ 23 Fonctionnement ............................................................................ 25 Perceptron................................................................................... 25 Rseau multicouche en phase d'association............................................. 26 Rseau connexion complte............................................................. 28 Rseau inhibition latrale rcurrente ................................................... 29 Conclusion.................................................................................. 30 Apprentissage............................................................................... 33 La loi de Hebb, un exemple d'apprentissage non supervis.......................... 33 La rgle d'apprentissage du Perceptron, un exemple d'apprentissage supervis... 36 TP Perceptron .............................................................................. 38 Mmoires associatives..................................................................... Structure..................................................................................... Fonctionnement ............................................................................ Apprentissage............................................................................... Rsultats..................................................................................... TP Mmoires associatives................................................................. Carte auto-organisatrice ................................................................... Structure..................................................................................... Fonctionnement ............................................................................ Apprentissage............................................................................... Rsultats..................................................................................... Application la robotique................................................................. TP Compression d'images par carte auto-organisatrice ............................... 41 41 42 42 42 43 44 45 45 45 47 49 51

Un rseau architecture volutive, ART................................................ 58

1 2 3 4 5 8 1 2 3 9 1 2 3 4 10 1 2 3 4 5 6 7 8 9 11 12 1 2 13 14 1 2 3 4 15 1 2 3 4 5 16 17 18 19

Structure..................................................................................... Fonctionnement / Apprentissage ......................................................... Algorithme.................................................................................. Rsultats..................................................................................... Conclusion..................................................................................

58 58 60 61 61

Apprentissage par pnalit / rcompense (renforcement).............................. 62 Apprentissage............................................................................... 62 Algorithme.................................................................................. 62 Application l'animation comportementale............................................. 62 Rseaux multicouches..................................................................... Structure / Fontionnement................................................................. Apprentissage............................................................................... Rsultats..................................................................................... TP Implication floue calcule par rseau multicouche ................................. 65 66 66 67 67

Connexionnisme et applications.......................................................... 79 Systme de mise en correspondance..................................................... 79 Exemple du diagnostic des douleurs abdominales ..................................... 80 Prdiction mtorologique (TD).......................................................... 81 Evaluation de la qualit des plantes en pot .............................................. 81 Analyse de donnes conomiques par carte auto-organisatrice....................... 82 Problme d'optimisation (version connexionniste) .................................... 83 Compression dimage par rseau multicouche.......................................... 84 Maillage ..................................................................................... 85 Conclusion.................................................................................. 87 Dveloppement dune application en RCM ............................................. 88 Environnements de dveloppement, simulateurs, neurocalculateurs et intgration. 91 Prsentation d'un simulateur.............................................................. 91 Droulement d'une session ............................................................... 93 Conclusion.................................................................................. 94 Questions rcapitulatives.................................................................. 97 Association d'une carte auto-organisatrice avec un rseau multicouche............. 97 Machine squentielle connexionniste .................................................... 97 Construction d'une taxonomie des modles de rseaux neuronaux.................. 107 Coopration multi-rseaux................................................................ 108 Annexes..................................................................................... 111 Carte auto-organisatrice ................................................................... 111 Rtropropagation de gradient............................................................. 112 Algorithme d'apprentissage par pnalit/rcompense (ARP) ......................... 113 Approximation de fonction par rseau de neurones.................................... 115 La simulation dirige par les vnements................................................ 115 Bibliographie ............................................................................... 117 Informations pratiques..................................................................... 121 Petit glossaire............................................................................... 124 Index......................................................................................... 126

Remerciements
De nombreuses personnes ont contribus scientifiquement, intellectuellement ou techniquement la rdaction de cet ouvrage. Dans tous les cas, leur amiti m'honore et je tiens leur exprimer ici ma gratitude, en particulier, le professeur Norbert Giambiasi, Directeur du LERI (Laboratoire d'Etudes et Recherche Nmes), l'EERIE (Ecole pour les Etudes et la Recherche en Informatique et Electronique Nmes) o ce cours a t propos aux lves de dernire anne ds 1990, Mr. Jean-Claude Rault, diteur (EC2 Paris), toute l'quipe Neuromimtique du LERI dont nous retrouverons en partie les travaux et certains membres, minents et sympathiques, de la communaut rseaux de neurones artificiels tels que Jeanny Herault (INPG, Grenoble), Christian Jutten (LTIRF, Grenoble), Jean-Claude Gilhodes (Lab. de Neurobiologie Humaine, Marseille). Le LERI est, et restera, pour moi un cadre de travail stimulant et chaleureux. Je tiens exprimer ici mon amiti ses membres et ceux qui ont su devenir mes amis comme Mourad Oussalah, Martine Magnan, Jean-Franois Santucci, Anelise Courbis, Norbert Giambiasi, Claudia Frydmann, Marc Boumedine, Franois Blayo, Anne Marion, Yves Coiton, Anne Gurin, Kamel Djafari, ... D'autres ont su m'encourager, sans faillir, par leur enthousiame pour ce projet ; je ddie donc cet ouvrage Catherine, Martine et Michel, Bernard, mes parents et grandsparents.

Introduction
Linformatique est la science du traitement automatique de linformation. Son dveloppement est souvent confondu avec celui des machines de traitement : les ordinateurs. Depuis les dbuts (ENIAC 1946) jusqu aujourdhui, les ordinateurs sont devenus de plus en plus puissants. Cependant, cette augmentation de puissance ne permet pas de toujours rsoudre les problmes dune application informatique dans un domaine particulier. Lide sest donc installe que ce ntait peut tre pas tant le matriel que le logiciel qui pchait par manque de puissance. La construction de logiciels s'appuie sur plusieurs approches. Deux parmi les plus utilises sont l'approche algorithmique et l'approche base sur la connaissance. Une approche algorithmique ncessite lcriture (avant la transcription dans un quelconque langage de programmation) du processus suivre pour rsoudre le problme. Lorsque le problme est complexe, ce peut tre une tape coteuse ou impossible. Dautre part, les ordinateurs sont des machines compltement logiques (et mme binaires) qui suivent la lettre chacune des instructions du programme. Cest un avantage lorsque tous les cas ont t prvus lavance par lalgorithmicien. Ce nest hlas pas toujours possible. Dans ce cas, dixit l'informaticien : "c'est une faute de la machine". Rien de plus faux ! Ainsi les systmes informatiques embarqus ( bord des avions, de la navette spatiale, etc) tentent de pallier ce manque (prvisible) de clairvoyance de lalgorithmicien en triplant les logiciels, chacun tant dvelopps indpendamment par une quipe diffrente, dans des langages diffrents. Les risques de laisser lordinateur aux prises avec une situation imprvue, o son comportement ne serait pas adapt, sont ainsi considrablement rduits. Rappellons-nous le haro lanc sur les programmes boursiers lors de la chute de la bourse en 1987. La seconde approche possible est celle de lintelligence artificielle (appele IA par commodit), avec pour applications les plus connues les systmes experts. Ici, la rsolution du problme est confie un ensemble de rgles donnes par lexpert humain du domaine. Il nen demeure pas moins que toutes les rgles doivent avoir t exprimes pralablement au traitement, et que le programme demeure binaire dans son excution. Les cas qui nont pas t prvus par lexpert ne seront pas correctement traits. Lintroduction de la logique floue ne change pas la nature des limitations demploi du programme : l'excution reste totalement dterministe. En fait, lapproche base sur la connaissances se limite des domaines dapplication o la modlisation de la connaissance, par exemple sous forme de rgles, est possible. Ces domaines sont souvent ceux des sciences dites "exactes" comme l'lectronique, la mcanique, la physique, etc, par opposition aux sciences dites "humaines" comme la mdecine, la psychologie, la philosophie, etc, o la connaissance est plus empirique. LIA se rvle donc tre principalement un moyen commode de stocker de la connaissance sous forme explicite.

Ces deux approches ne suffisent pas rpondre tous les problmes existants. Citons les domaines de la reconnaissance de formes (images ou signaux), du diagnostic, du contrle moteur, de la traduction automatique, de la comprhension du langage, depuis longtemps explors laide des approches algorithmiques et base de connaissances, qui n'ont pas rencontr le succs escompt. Pourtant, des tres vivants relativement simples sont capables de raliser certaines de ces oprations apparemment sans difficult. Il suffit pour sen rendre compte de lever les yeux, suivre le vol de la mouche et essayer de la capturer. Que dire alors du dplacement au sonar de la chauve souris, etc. Une troisime approche au traitement automatique de linformation semble donc soffrir nous, o lon cherche sinspirer du traitement de l'information effectu par le cerveau. Lhypothse principale, la base de l'essort des rseaux de neurones artificiels, est que le comportement intelligent est sous-tendu par un ensemble de mcanismes mentaux. Ces mcanismes tant bass sur des processus neurophysiologiques, nous supposons donc que la structure du systme nerveux central est la base du dveloppement dun comportement intelligent. Remarquons que cette hypothse na pas toujours eu cours. Ainsi, depuis lantiquit, le sige des motions a lentement migr depuis les pieds, vers lestomac (qui se noue face au danger), puis le coeur (qui sacclre lors des passions) pour finir dans la boite crnienne. La figure 1 reprend l'hypothse propose par de nombreux biologistes : pour recrer le comportement intelligent du cerveau, il faut s'appuyer sur son architecture, en fait, tenter de l'imiter. Comportement global du cerveau

Systmes et voies de communication

Circuits

Neurones

Figure 1. Hypothse biologique de gnration d'un comportement intelligent Ce dernier paragraphe nous fournit dj le plan de cet ouvrage. Dans une premire partie, nous examinons quelques notions biologiques relatives au cerveau, et ses constituants les neurones et leurs synapses. L'organisation en rseaux des neurones permet d'illustrer les notions d'apprentissage et de mmorisation (modification des connexions). Ces donnes nous 4

sont ncessaires pour aborder le second chapitre qui montre le passage des modles de rseaux neuronaux biologiques des modles mathmatiques : les rseaux de neurones artificiels. Nous tablissons un tableau des correspondances biologique/artificiel, avec notamment des modles de neurones et de synapses et quelques topologies pour l'organisation en rseaux. Au travers d'un exemple simple, nous dcrivons le fonctionnement des rseaux de neurones artificiels et leurs proprits d'apprentissage partir d'exemples, de rsistance au bruit, d'adaptabilit et de tolrance au pannes. Il existe de nombreux modles de rseaux de neurones artificiels, nous en prsentons successivement quelques uns choisis principalement selon des critres de nature pdagogique. Le Perceptron est historiquement le premier modle, son fonctionnement est particulirement intressant pour le suite de notre tude. De fait, il demeure un modle de base, de mme que les cartes auto-organisatrices plus vraisemblables d'un point de vue biologique. Ces deux modles nous permettent d'introduire les concepts d'apprentissage supervis et non supervis. Des modles plus labors sont tudis par la suite tant au niveau de leur architectures, des techniques d'apprentissage que des performances. Ce sont les mmoires associatives, le rseau ART et une version plus complexe et surtout plus efficace du Perceptron : le Perceptron multicouche. Connatre les modles est dun profond intrt, mais pour lingnieur le dveloppement dune application base sur les rseaux de neurones artificiels peut sembler plus important. Nous consacrons un chapitre la reconnaissance de caractres manuscrits ralise par un Perceptron multicouche. Ecrire des programmes de simulations pour quelques modles de rseaux est du plus haut intrt pdagogique. Cependant le dveloppeur dispose aujourdhui denvironnements de dveloppement pratiques et puissants dont nous passons en revue les principales caractristiques. S'agissant d'un ouvrage de vulgarisation l'usage des tudiants de tous les ages, nous avons tenu, en nous basant sur notre exprience d'enseignement, proposer les outils pdagogiques que sont les exercices et les travaux pratiques. Il s'agit bien entendu d'aider le lecteur vrifier sa comprhension des concepts, des modles et de le familiariser la manipulation des algorithmes. Nous esprons que vous vous impliquerez dans ce "surplus" de travail propos. Toutes les rponses se trouvent videmment dans ce livre.

1 Les rseaux de neurones artificiels


1 Dfinition Aujourdhui de nombreux termes sont utiliss dans la littrature pour dsigner le domaine des rseaux de neurones artificiels, comme connexionnisme ou neuromimtique. Pour notre part, il nous semble qu'il faut associer chacun de ces noms une smantique prcise. Ainsi, les rseaux de neurones artificiels ne dsignent que les modles manipuls ; ce nest ni un domaine de recherche, ni une discipline scientifique. Connexionnisme et neuromimtique sont tous deux des domaines de recherche part entire, qui manipulent chacun des modles de rseaux de neurones artificiels, mais avec des objectifs diffrents. Lobjectif poursuivi par les ingnieurs et chercheurs connexionnistes est damliorer les capacits de linformatique en utilisant des modles aux composants fortement connects. Pour leur part, les neuromimticiens manipulent des modles de rseaux de neurones artificiels dans l'unique but de vrifier leurs thories biologiques du fonctionnement du systme nerveux central. Notons quen France, ds 1982, des runions de ces deux communauts ont t organises, ce sont les Journes Neurosciences et Sciences de lIngnieur (cf. chp. Informations pratiques). Le titre mme de cet ouvrage ne laisse aucun doute, nous nous plaons du point de vue de lingnieur la recherche dune connaissance connexionniste. Ceci nous oblige cependant aborder au chapitre suivant des notions de neurosciences utiles notre projet. Dfinition : Les rseaux de neurones artificiels sont des rseaux fortement connects de processeurs lmentaires fonctionnant en parallle. Chaque processeur lmentaire calcule une sortie unique sur la base des informations qu'il reoit. Toute structure hirarchique de rseaux est videmment un rseau. 2 Historique - 1890 : W. James, clbre psychologue amricain introduit le concept de mmoire associative, et propose ce qui deviendra une loi de fonctionnement pour lapprentissage sur les rseaux de neurones connue plus tard sous le nom de loi de Hebb. - 1943 : J. Mc Culloch et W. Pitts laissent leurs noms une modlisation du neurone biologique (un neurone au comportement binaire). Ceux sont les premiers montrer que des rseaux de neurones formels simples peuvent raliser des fonctions logiques, arithmtiques et symboliques complexes (tout au moins au niveau thorique). - 1949 : D. Hebb, physiologiste amricain explique le conditionnement chez lanimal par les proprits des neurones eux-mmes. Ainsi, un conditionnement de type pavlovien tel que, nourrir tous les jours la mme heure un chien, entrane chez cet animal la scrtion de salive 6

cette heure prcise mme en labsence de nourriture. La loi de modification des proprits des connexions entre neurones quil propose explique en partie ce type de rsultats exprimentaux. 2 Les premiers succs - 1957 : F. Rosenblatt dveloppe le modle du Perceptron. Il construit le premier neuroordinateur bas sur ce modle et lapplique au domaine de la reconnaissance de formes. Notons qu cet poque les moyens sa disposition sont limits et cest une prouesse technologique que de russir faire fonctionner correctement cette machine plus de quelques minutes. - 1960 : B. Widrow, un automaticien, dveloppe le modle Adaline (Adaptative Linear Element). Dans sa structure, le modle ressemble au Perceptron, cependant la loi dapprentissage est diffrente. Celle-ci est lorigine de lalgorithme de rtropropagation de gradient trs utilis aujourdhui avec les Perceptrons multicouches. Les rseaux de type Adaline restent utiliss de nos jours pour certaines applications particulires. B. Widrow a cr ds cette poque une des premires firmes proposant neuro-ordinateurs et neuro-composants, la Memistor Corporation. Il est aujourdhui le prsident de lInternational Neural Network Society (INNS) sur laquelle nous reviendrons au chapitre Informations pratiques. - 1969 : M. Minsky et S. Papert publient un ouvrage qui met en exergue les limitations thoriques du perceptron. Limitations alors connues, notamment concernant limpossibilit de traiter par ce modle des problmes non linaires. Ils tendent implicitement ces limitations tous modles de rseaux de neurones artificiels. Leur objectif est atteint, il y a abandon financier des recherches dans le domaine (surtout aux U.S.A.), les chercheurs se tournent principalement vers lIA et les systmes bases de rgles. 3 Lombre - 1967-1982 : Toutes les recherches ne sont, bien sr, pas interrompues. Elles se poursuivent, mais dguises, sous le couvert de divers domaines comme : le traitement adaptatif du signal, la reconnaissance de formes, la modlisation en neurobiologie, etc. De grands noms travaillent durant cette priode tels : S. Grossberg, T. Kohonen, ... dont nous reparlerons. 4 Le renouveau - 1982 : J. J. Hopfield est un physicien reconnu qui lon doit le renouveau dintrt pour les rseaux de neurones artificiels. A cela plusieurs raisons : Au travers dun article court, clair et bien crit, il prsente une thorie du fonctionnement et des possibilits des rseaux de neurones. Il faut remarquer la prsentation anticonformiste de son article. Alors que les auteurs sacharnent jusqualors proposer une structure et une loi dapprentissage, puis tudier les proprits mergentes ; J. J. Hopfield fixe pralablement le comportement atteindre pour son modle et construit partir de l, la structure et la loi

dapprentissage correspondant au rsultat escompt. Ce modle est aujourdhui encore trs utilis pour des problmes d'optimisation. D'autre part, entre les mains de ce physicien distingu, la thorie des rseaux de neurones devient respectable. Elle nest plus lapanage dun certain nombre de psychologues et neurobiologistes hors du coup. Enfin, une petite phrase, place en commentaire dans son article initial, met en avant lisomorphisme de son modle avec le modle dIsing (modle des verres de spins). Cette ide va drainer un flot de physiciens vers les rseaux de neurones artificiels. Notons qu cette date, lIA est lobjet dune certaine dsillusion, elle na pas rpondue toutes les attentes et sest mme heurte de srieuses limitations. Aussi, bien que les limitations du Perceptron mise en avant par M. Minsky ne soient pas leves par le modle dHopfield, les recherches sont relances. 5 La leve des limitations - 1983 : La Machine de Boltzmann est le premier modle connu apte traiter de manire satisfaisante les limitations recenses dans le cas du perceptron. Mais lutilisation pratique savre difficile, la convergence de lalgorithme tant extrmement longue (les temps de calcul sont considrables). - 1985 : La rtropropagation de gradient apparat. Cest un algorithme dapprentissage adapt aux rseaux de neurones multicouches (aussi appels Perceptrons multicouches). Sa dcouverte ralise par trois groupes de chercheurs indpendants indique que "la chose tait dans lair". Ds cette dcouverte, nous avons la possibilit de raliser une fonction non linaire dentre/sortie sur un rseau en dcomposant cette fonction en une suite dtapes linairements sparables. De nos jours, les rseaux multicouches et la rtropropagation de gradient reste le modle le plus tudi et le plus productif au niveau des applications. Nous lui consacrons quelques chapitres. 6 La situation actuelle (1992) En France, elle est limage du congrs Neuro-Nmes qui a pour thme les rseaux neuromimtiques et leurs applications. Cr en 1988, le chiffre de ses participants croit chaque anne et reflte bien lintrt que le monde scientifique et industriel (50% des participants) porte au connexionnisme (fig. 1).

Nombre de participants au congrs Neuro-Nmes

850 650 500 350 1988 1989 1990 1991 1992 Anne

Figure 1. Illustration de l'accroissement d'intrt pour les rseaux de neurones : volution du nombre de participants au congrs Neuro-Nmes Dans le monde, et en particulier aux U.S.A., lintrt pour les rseaux de neurones a dmarr plus tt. Ds 1986, de 600 2000 visiteurs participent aux quelques grands congrs annuels. Au niveau commercial, la figure 2 montre que plus de 200 compagnies sont aujourdhui impliques dans des dveloppements dapplications connexionnistes. Nombre de compagnies

150

30

1960

1985 1987 Anne

Figure 2. Evolution du nombre de compagnies proposants des produits connexionnistes (d'aprs DARPA 88) Les prvisions du march se chiffrent dj en dizaines de millions de dollars. Il devrait dpasser les 100 millions de dollars ds 1992. Un coup doeil plus dtaill aux diffrentes parts de march (fig. 3) montre une volution vers la mise en place de puces spcialises, le dveloppement dapplications spcifiques ou standardises et la rduction de la partie formation.

Formation 1% Formation 4% Dveloppement d'applications 6% Dveloppement d'outils 90% Dveloppement d'applications 17% Dveloppement d'outils 45% Applications standards 22%

1988

1992

Circuits neuronaux 15%

Figure 3. Evolution des diffrentes parts du march connexionniste (d'aprs DARPA 88) La rduction de la partie formation est le fait dune thorie des rseaux de neurones de mieux en mieux comprise, plus facilement explique et appartenant de plus en plus souvent au bagage scientifique des jeunes universitaires et ingnieurs. Un enseignement spcifique rseaux de neurones artificiels a d'ailleur dbut lUCSD (University of California at San Diego) ds 1982. En France, universits et coles dingnieurs proposent en troisime cycle de quelques heures quelques dizaines dheures sur ce sujet. Nous en donnons la fin de cet ouvrage, au chapitre des informations pratiques, une liste non exhaustive.

10

2 Le modle neurophysiologique
Le cerveau se compose d'environ 1012 neurones (mille milliards), avec 1000 10000 synapses (connexions) par neurone. Nous allons dans ce chapitre dcrire succinctement llment de base du systme nerveux central : le neurone. Ltape suivante nous conduit ltude de petits rseaux de neurones, tels ceux impliqus dans les arcs rflexes. Ceci nous amne exposer les proprits dhabituation, de sensibilisation et surtout concevoir lide dune modification physique des connexions entre neurones pour supporter ces phnomnes. Ltude du mcanisme de la vision chez lanimal (et lhomme) permet dapprhender les notions de messages somato-sensoriels, de rduction dinformation, dtages de traitement et de complexification de linformation. 1 Le neurone 1.1 Structure Le neurone est une cellule compose dun corps cellulaire et dun noyau. Le corps cellulaire se ramifie pour former ce que lon nomme les dendrites. Celles-ci sont parfois si nombreuses que lon parle alors de chevelure dendritique ou darborisation dendritique. Cest par les dendrites que linformation est achemine de lextrieur vers le soma, corps du neurone. Linformation traite par le neurone chemine ensuite le long de laxone (unique) pour tre transmise aux autres neurones. La transmission entre deux neurones nest pas directe. En fait, il existe un espace intercellulaire de quelques dizaines dAngstroms (10-9 m) entre laxone du neurone affrent et les dendrites (on dit une dendrite) du neurone effrent. La jonction entre deux neurones est appele la synapse (fig. 1).

Dendrite Synapse axo-dendritique

Axone Corps cellulaire

Synapse axo-axonique

Synapse axo-somatique

Figure 1. Un neurone avec son arborisation dendritique Selon le type du neurone (fig. 2), la longueur de laxone peut varier de quelques microns 1,50 mtres pour un moto-neurone. De mme les dendrites mesurent de quelques microns

11

1,50 mtres pour un neurone sensoriel de la moelle pinire. Le nombre de synapses par neurone varie aussi considrablement de plusieurs centaines une dizaine de milliers. Cellule toile Cellule en corbeille Fibres parallles

Cellule de Purkinje

Cellule en grain

Cellule de Golgi Figure 2. Description schmatique des divers types structuraux de neurones prsents dans le cortex crbelleux. Les axones ont t reprs par une flche. 1.2 Physiologie La physiologie du neurone est lie aux proprits de la membrane nerveuse et au mtabolisme de la cellule. La diffrence de potentiel mesure entre le milieu intrieur de la cellule et le milieu extrieur est de -60 mV. Pour maintenir une telle diffrence de potentiel, la cellule fait appel des pompes ioniques (Na+, K +, ...). Cependant, une faible dpolarisation de la membrane entraine une certaine permabilit aux ions sodiums (Na+), dont l'effet peut tre catastrophique au niveau cellulaire. En effet, partir d'une certaine valeur seuil de dpolarisation de la membrane, il y a rupture des quilibres ioniques et cration d'un potentiel d'action (aussi nomm "spike" en anglais, fig. 3).

Valeur du potentiel

+60 0 Seuil -60 -70 0 2 12 10 Temps en ms

Figure 3. Un potentiel d'action Les ions, Na + en particulier, s'engouffrent en nombre dans la cellule (aids en cela par l'ouverture des canaux Na+ et une diffrence de potentiel trs attirante de -60 mV). En une miliseconde, la diffrence de potentiel devient gale +60 mV (fig. 4). En fait, partir d'une valeur de potentiel nulle, l'quilibre ionique est tabli et les ions ne devraient plus pntrer dans la cellule. Cependant, l'effet d'entrainement est tel que cette valeur d'quilibre thorique est largement dpasse. Les diffrents canaux ioniques se referment alors, les pompes ioniques se remettent fonctionner, rejetant l'extrieur de la cellule les ions en excs. L aussi, on constate un certain effet d'entrainement : le retour la normale passe d'abord par une phase d'hyperpolarisation. Le potentiel de repos (-60 mV) est dpass jusqu' atteindre (-70 mV). milieu extrieur + + +

Axone canaux ioniques ferms a

Na+

Slection d'un fragment de membrane axonique + canaux ioniques ouverts b + + + + + + + +

- - milieur intrieur + + +

canaux ioniques ferms c - - - -

Figure 4. Passage d'un potentiel d'action au niveau de la membrane de l'axone a) Equilibre ionique (au repos). b) Arrive d'un potentiel d'action (dpolarisation). c) Aprs la dpolarisation : l'hyperpolarisation. Toute cette srie d'vnements cataclismiques au niveau cellulaire n'aura dur que 5 10 milisecondes. Durant la phase d'hyperpolarisation, le neurone est trs difficilement excitable. Ce qui s'explique par le fait que la diffrence de potentiel par rapport la valeur seuil (S) est plus importante que celle au repos. 1.3 Cration d'un potentiel d'action La dpolarisation initiale de la membrane axonique est cre par l'arrive de potentiels d'action des neurones affrents sur les synapses dendritiques et somatiques. En fait, l'arrive 13

d'un potentiel d'action sur une synapse, un neuromdiateur est libr dans l'espace synaptique. Il va ouvrir des canaux ioniques sur la membrane post-synaptique, crant ainsi une dpolarisation (aussi appele potentiel voqu) qui s'tend jusqu' l'axone (fig. 5). a

Neuromdiateur b e Na+
-60 mV

c
-60 mV

d' Figure 5. Fonctionnnement au niveau synaptique a) Arrive d'un potentiel d'action. b) Libration du neuromdiateur dans l'espace synaptique. c) Ouvertures des canaux ioniques dues au neuromdiateur. d) Gnration d'un potentiel voqu excitateur. d') Gnration d'un potentiel voqu inhibiteur. Les synapses inhibitrices empchent la gnration de potentiel d'action. e) Fermeture des canaux, limination ou recapture du neuromdiateur. Les dpolarisations unitaires sont sommes dans l'espace (toutes les synapses du neurone) et dans le temps (sur une priode de quelques milisecondes) et gnrent, ventuellement, un potentiel d'action sur le neurone post-synaptique. Ainsi que le montre la figure 6, la gnration d'un potentiel d'action est le fruit de nombreuses dpolarisations, l'action d'une seule synapse est pratiquement sans effet.

14

Valeur du potentiel

seuil

Valeur du potentiel a Temps

seuil

Temps

Figure 6. Sommation spatio-temporelle : addition des potentiels voqus la fois dans l'espace et dans le temps. a) 2 potentiels voqus (reprs par les flches) ne dpassent pas la valeur seuil. b) 2 potentiels voqus qui dpassant la valeur seuil gnrent un potentiel d'action. 2 Message nerveux Le systme nerveux travaille avec (entre autres) un codage en frquence. C'est le nombre de potentiel d'action par seconde (frquence) et les variations de frquence (frquence instantane) qui code l'information. Un potentiel d'action isol ne signifie rien. Rappelons d'autre part que tous les potentiels d'action ont la mme valeur de potentiel. Par exemple (fig. 7), les messages transmis lors de mouvements du coude permettent de connaitre en fonction de la frquence : la valeur de l'angle et en fonction des variations de frquences : la vitesse de rotation entre deux positions.

Potentiel d'action

10

20

30 40 Valeur angulaire

Figure 7. Exemple de codage en frquence (mouvements d'une articulation telle que le coude). 3 Circuits neuronaux Nous avons vu que chaque neurone est une unit autonome au sein du cerveau. Le neurone reoit en continu des entres. Le corps cellulaire du neurone est le centre de contrle. C'est l 15

que les informations reues sont interprtes. La rponse, unique, ces signaux est envoye au travers de l'axone. L'axone fait synapse sur d'autres neurones (un millier). Le signal transmis peut avoir un effet excitateur ou inhibiteur. Le traitement trs simple ralis par chaque neurone indique que l'information n'est pas stocke dans les neurones, mais est plutt le rsultat du comportement de toute la structure interconnecte. L'information est, principalement, dans l'architecture des connexions et dans la force de ces connexions. C'est ce que nous allons vrifier avec quelques exprimentations simples ralises sur l'aplysie (limace de mer, fig. 8). Des modifications comportementales importantes rsultent de modifications simples au niveau synaptique. Les connexions renforcent ou diminuent leur efficacit (modification des forces de connexions). Dans les cas extrmes, de nouvelles connexions apparaissent ou disparaissent (modification de l'architecture).

Manteau Branchies Parapodium Siphon

Figure 8. Aplysie ou limace de mer (abondante en mditerane). Au toucher du siphon ou du manteau, la contraction du siphon entraine le retrait des branchies sous le manteau dans un reflexe de dfense. 3.1 Habituation Description de l'exprience : Le neurone sensoriel est activ par le toucher du manteau. Le neurone moteur agit alors en retractant les branchies (fig. 9). Lorsque la stimulation est rpte, la rponse de l'animal devient plus faible, jusqu' une absence de raction au toucher. C'est le phnomne de l'habituation (fig. 10).

16

Stimulus

Neurone sensoriel

Neurone moteur

Figure 9. Circuits mis en jeu dans l'habituation

Neurone moteur

Neurone sensoriel

1 mn

15 mn

30 mn

Figure 10. Habituation : lorsque la stimulation est rpte (quelques dizaines de fois), la rponse de l'animal devient de plus en plus faible, jusqu' une absence de raction au stimulus sensoriel. On a indiqu en bas droite de chaque schma le nombre de minutes aprs le dbut de l'exprience. A partir de 15 mn, il n'y a plus de stimulations. 3.2 Sensibilisation Si l'on rpte la mme exprience en crant aprs chaque stimulation du manteau un courant d'eau violent qui risque d'endommager les branchies, on observe alors l'effet inverse. Le courant d'eau sert de renforcement (fig. 11) et la rponse de l'animal au stimulus initial est augmente (fig. 12). Cet effet est appel sensibilisation.

Stimulus

Renforcement

Neurone sensoriel

Neurone moteur

Figure 11. Circuits mis en jeu dans la sensibilisation

17

Neurone moteur

Neurone sensoriel Renforcement

1 mn

15 mn Renforcement

30 mn

Figure 12. La sensibilisation en 3 schmas : la rponse du neurone moteur au stimulus initial est augmente par l'action du stimulus de renforcement. Le stimulus de renforcement n'est appliqu qu'aprs la rponse motrice. 3.3 Modification synaptique Habituation et sensibilisation au niveau neuronal traduisent la fonction d'apprentissage au niveau de l'animal dans son ensemble. Il y a adaptation de la rponse l'environnement. L'observation des synapses mises en jeu au microscope lectronique montre des modifications physiques (fig. 13).

Vsicules de neuromdiateur

Rcepteurs au neuromdiateur

Figure 13. Modification physique de la synapse a) Tmoin. b) Habituation : diminution du nombre de vsicules et du nombre de rcepteurs. c) Sensibilisation : augmentation du nombre de vsicules et de rcepteurs. 4 La vision et les tages de traitement 18

Nous avons vu des mcanismes de traitement de l'information au niveau de la coopration entre deux neurones. Il existe des structures plus complexes mettant en jeu des millions de neurones, qui rangs par tages de traitement diminuent la complexit de l'information, la rendant plus signifiante. C'est le cas du systme visuel, sans doute le mieux tudi aujourd'hui. Au niveau de la rtine, plusieurs dizaines de types diffrents de cellules codent les informations visuelles, chacune ralisant une fonction trs spcialise. Les images sont transformes en train d'impulsions nerveuses que le nerf optique vhicule vers le cerveau. Le cerveau labore sa perception visuelle grce ces signaux. Cependant, au niveau de la rtine, il y a dj traitement de l'information. En effet, on compte environ 150 millions de batonnets et 7 millions de cnes pour seulement 1 million de fibres au niveau du nerf optique. On connait aujourd'hui un certain nombre de circuits neuronaux de la rtine impliqus dans le traitement de l'information visuelle. Par exemple, chaque cellule ganglionnaire correspond un champ rcepteur : une zone prcise du champ visuelle (disque d'un centimtre de diamtre deux mtres de distance). Ds 1952, deux types de cellules ganglionnaires ont t rpertoris. En abscence de stimulation lumineuse (obscurit), ces cellules mettent cependant spontanment un niveau moyen de potentiels d'action. Les cellules centre ON augmentent ce nombre d'impulsions lorsqu'un stimulus claire le centre du champ rcepteur et deviennent silencieuses si le stimulus claire la priphrie du champ rcepteur. Les cellules centre OFF montrent un comportement inverse. La figure 14 montre un exemple d'architecture fonctionnelle pour une cellule ganglionnaire centre ON. Cette oppostion de fonctionnement entre le centre et la priphrie du champ rcepteur permet d'amliorer les contrastes. On a dcouvert depuis d'autres cellules qui codent les directions de mouvements, etc.

19

Zone claire

Zone claire

Photorcepteurs (cnes et batonnets) Cellules horizontales Cellules bipolaires Cellules ganglionnaires a b

Figure 14. Exemple de traitement de l'information rtinienne par une cellule ganglionnaire centre ON. En noir, les cellules actives. Les cellules horizontales ont une action inhibitrice sur les cellules bipolaires, elles s'opposent ainsi aux cellules photoreceptrices. a) L'clairage du centre du champ rcepteur gnre une augmentation du niveau d'activit. b) L'clairage de la priphrie du champ rcepteur rend cette cellule silencieuse. Au niveau du cortex visuel (arrive du nerf optique), D. Hubel et H. Wiesel ont dcouvert l'existence de colonnes de dominance oculaire, spcifiquement excites par un stimulus sous forme de barre dote une orientation prcise. La figure 15 montre une reprsentation schmatique du cortex visuel.

20

Colonne de dominance oculaire

2 mm
Oeil Oeil gauche droit

1 mm 1 mm Figure 15. Reprsentation schmatique du cortex visuel qui montre les colonnes de dominances oculaires et leur orientation privilgie. On remarque l'alternance oeil gauche - oeil droit. Nous avons vu une organisation topologique prcise pour le traitement de l'information visuelle dont la construction semble gntique. Il existe nanmoins des possibilits d'apprentissage sur cette structure. Des expriences ont montr que l'levage d'un chaton dans un univers compos uniquement de verticales va modifier ses perceptions jusqu' le rendre pratiquement aveugle aux autres directions (horizontales et obliques) l'age adulte. L'tude histologique montre que la grande majorit de ses colonnes de dominances oculaires se sont "recycles" dans les verticales. Quels sont les mcanismes qui permettent de modifier le comportement des structures neuronales ? D. Hebb a propos en 1949 une rgle o la force de la connexion entre deux neurones augmente si il y a corrlation d'activit (si l'activation de l'une entraine l'activation de l'autre). Cette hypothse a depuis t complte par J. P. Rauscheker et W. Singer qui proposent de modifier en les diminuant les forces des connexions non fonctionnelles (inutiles dans le contexte de fonctionnement actuel). Remarquons que cette loi d'apprentissage ne concerne que les synapses excitatrices, rien n'est propos pour les synapses inhibitrices. 5 Conclusion Lobjectif pdagogique vis dans ce survol du monde biologique est la mise en exergue d'une organisation structurelle des neurones. Chaque structure est dote d'une fonction particulire et ces structures adaptent leur comportement par des mcanismes dapprentissage. Lapprentissage implique des modifications physiques des connexions entre neurones. Lassociation entre plusieurs structures neuronales, dotes chacune dune fonction prcise, permet lmergence dune fonction dordre suprieure pour lensemble.

21

3 Les modles mathmatiques


Les rseaux de neurones biologiques ralisent facilement un certain nombre d'applications telles que la reconnaissance de formes, le traitement du signal, l'apprentissage par l'exemple, la mmorisation, la gnralisation. Ces applications sont pourtant, malgr tous les efforts dploys en algorithmique et en intelligence artificielle, la limite des possibilits actuelles. C'est partir de l'hypothse que le comportement intelligent merge de la structure et du comportement des lments de base du cerveau que les rseaux de neurones artificiels se sont dvelopps. Les rseaux de neurones artificiels sont des modles, ce titre ils peuvent tre dcrit par leurs composants, leurs variables descriptives et les interactions des composants. 1 Composant (le neurone artificiel) 1.1 Structure La figure 1 montre la structure d'un neurone artificiel. Chaque neurone artificiel est un processeur lmentaire. Il reoit un nombre variable d'entres en provenance de neurones amonts. A chacune de ces entres est associe un poids w abrviation de weight (poids en anglais) reprsentatif de la force de la connexion. Chaque processeur lmentaire est dot d'une sortie unique, qui se ramifie ensuite pour alimenter un nombre variable de neurones avals. A chaque connexion est associe un poids.

Synapse

Poids

Corps cellulaire Axone

Fonction de transfert Elment de sortie

Figure 1. Mise en correspondance neurone biologique / neurone artificiel La figure 2 donne les notations que nous utilisons dans cet ouvrage. wki k

wij

i xi

22

Figure 2. Structure d'un neurone artificiel. Pour le neurone d'indice i, les entres sur celui-ci sont de poids wij alors que les connexions avals sont de poids wki. 1.2 Comportement On distingue deux phases. La premire est habituellement le calcul de la somme pondre des entres (a) selon l'expression suivante : a = (wi . e i) A partir de cette valeur, une fonction de transfert calcule la valeur de l'tat du neurone. C'est cette valeur qui sera transmise aux neurones avals. Il existe de nombreuses formes possibles pour la fonction de transfert. Les plus courantes sont prsentes sur la figure 3. On remarquera qu' la diffrence des neurones biologiques dont l'tat est binaire, la plupart des fonctions de transfert sont continues, offrant une infinit de valeurs possibles comprisent dans l'intervalle [0, +1] (ou [-1, +1]). x = f (a) +1 S -1 a b a -1 c x = f (a) +1 a -1 x = f (a) +1 a

Figure 3. Diffrents types de fonctions de transfert pour le neurone artificiel, a : fonction seuil (S , la valeur du seuil), b : linaire par morceaux, c : sigmode. Nous constatons que les quations dcrivant le comportement des neurones artificiels n'introduisent pas la notion de temps. En effet, et c'est le cas pour la plupart des modles actuels de rseaux de neurones, nous avons affaire des modles temps discret, synchrone, dont le comportement des composants ne varie pas dans le temps. 2 Variables decriptives Ces variables dcrivent l'tat du systme. Dans le cas des rseaux de neurones qui sont des systmes non autonomes, un sous-ensemble des variables descriptives est constitu par les variables d'entre, variables dont la valeur est dtermine extrieurement au modle. 3 Structure d'interconnexion Les connexions entre les neurones qui composent le rseau dcrivent la topologie du modle. Elle peut tre quelconque, mais le plus souvent il est possible de distinguer une certaine rgularit. Rseau multicouche (au singulier) : les neurones sont arrags par couche. Il n'y a pas de connexion entre neurones d'une mme couche et les connexions ne se font qu'avec les neurones 23

des couches avales (fig. 4). Habituellement, chaque neurone d'une couche est connect tous les neurones de la couche suivante et celle-ci seulement. Ceci nous permet d'introduire la notion de sens de parcours de l'information (de l'activation) au sein d'un rseau et donc dfinir les concepts de neurone d'entre, neurone de sortie. Par extension, on appelle couche d'entre l'ensemble des neurones d'entre, couche de sortie l'ensemble des neurones de sortie. Les couches intermdiaires n'ayant aucun contact avec l'extrieur sont appels couches caches. Couche d'entre

Couche cache

Couche de sortie Figure 4. Dfinition des couches d'un rseau multicouche. Rseau connexions locales : Il s'agit d'une structure multicouche, mais qui l'image de la rtine, conserve une certaine topologie. Chaque neurone entretien des relations avec un nombre rduit et localis de neurones de la couche avale (fig. 5). Les connexions sont donc moins nombreuses que dans le cas d'un rseau multicouche classique.

Figure 5. Rseau connexions locales Rseau connexions rcurrentes : les connexions rcurrentes ramnent l'information en arrire par rapport au sens de propagation dfini dans un rseau multicouche. Ces connexions sont le plus souvent locales (fig. 6).

24

Figure 6. Rseau connexions rcurrentes Rseau connexion complte : c'est la structure d'interconnexion la plus gnrale (fig. 7). Chaque neurone est connect tous les neurones du rseau (et lui-mme).

Figure 7. Rseau connexions complte Il existe de nombreuse autres topologies possibles, mais elles n'ont pas eu ce jour la notorit des quelques unes que nous avons dcrites ici. 4 Fonctionnement 4.1 Perceptron Avant d'aborder le comportement collectif d'un ensemble de neurones, nous allons prsenter le Perceptron (un seul neurone) en phase d'utilisation. L'apprentissage ayant t ralis, les poids sont fixes. Le neurone de la figure 8 ralise une simple somme pondre de ses entres, compare une valeur de seuil, et fourni une rponse binaire en sortie. Par exemple, on peut interprter sa dcision comme classe 1 si la valeur de x est +1 et classe 2 si la valeur de x est -1. x = f (a) +1 x e2 w2 S -1 a

e1

w1

25

Figure 8. Le Perceptron : structure et comportement. Les connexions des deux entres e1 et e2 au neurone sont pondres par les poids w1 et w2. La valeur de sortie du neurone est note x. Ele est obtenue aprs somme pondre des entres (a) et comparaison une valeur de seuil S. Question : Sachant que les poids du Perceptron deux entres sont les suivants : w1 = 0.5, w 2 = 0.2 et que la valeur de seuil est S = 0.0, dterminez son comportement, sachant que les comportements du ET logique, OU logique et OU exclusif sont rappels Table 1 : ET e1 e2 11 1 1-1 -1 -11 -1 -1-1 -1 OU e2 1 1 1 -1 OU Exclusif e1 e2 x 1 1 -1 -1 1 -1 -1 1

x 1 1 -1 -1

e1 1 -1 1 -1

x 1 1 -1 -1

Rponse : OU 4.2 Rseau multicouche en phase d'association Le comportement collectif d'un ensemble de neurones permet l'mergence de fonctions d'ordre suprieure par rapport la fonction lmentaire du neurone. Imaginer de prime abord un tel comportement n'est pas facile, nous nous appuyons sur un exemple illustratif et donc rductionniste. Soit un rseau multicouche compos de 361 (19 x 19), 25 et 361 neurones. Ce rseau a appris associer la lettre "a" prsente en entre la mme lettre en sortie (fig.9). Prsentons au rseau cette lettre avec quelques erreurs : un certain nombre de pixels ont t invers (ils sont passs de blanc noir ou inversement). L'image est compose de 19 x 19 pixels, chacun de ces pixels est associ un neurone de la couche d'entre. Chacun des 25 neurones de la couche cache reoit 361 connexions (une pour chaque neurone d'entre) et envoie sa sortie chacun des neurones de la couche de sortie (au nombre de 361). Dans notre exemple, la couche cache se compose de 25 neurones, mais ce nombre, la diffrence des couches d'entre et de sortie, n'est pas impratif. Il y a donc 2 . (361 . 25) = 18050 connexions dans le rseau.

26

Figure 9. Comportement en phase de reconnaissance d'un rseau de neurone multicouche lors d'un tche d'auto-association. Les neurones sont binaires. La valeur d'activation de chaque neurone est indique par la hauteur de la colonne. Les neurones sont rangs par couche, tous les neurones d'une couche sont connexts tous les neurones de la couche suivante (avale). La premire tape code l'image d'entre sur le rseau. Il s'agit pour chaque neurone de la couche d'entre de fixer la valeur de son tat selon la couleur du pixel correspondant. Si les neurones qui composent le rseau sont binaires, on choisit arbitrairement de coder un pixel noir par un niveau d'activation du neurone gal 1 ; si le pixel est blanc alors le niveau d'activation du neurone correspondant est gal 0. La seconde tape est celle du calcul de la rponse du rseau qui se dcompose en autant de sous-tapes qu'il y a de couches dans le rseau. Ainsi, chaque neurone de la couche d'entre envoie sa valeur aux neurones de la couche cache. Chacun des neurones de la couche caches est en fait un Perceptron 361 entres. Chacun des neurones ralise la somme pondre de ses entres et seuille. Ce processus est effectu en parallle et indpendamment pour tous les neurones de la couche cache. Lorsque le vecteur d'activation de la couche cache a t obtenu, le mme processus est rpt avec les neurones de la couche de sortie. On considre ceux-ci comme 361 Perceptrons indpendants 25 entres. La dernire tape est l'interprtation du vecteur d'activation de la couche de sortie par l'exprimentateur. Dans notre cas, on ralise l'opration inverse du codage initial, savoir 27

associer un pixel noir chacun des neurones de la couche de sortie dont la valeur d'activation est gal 1, un pixel blanc dans le cas contraire. Dans la figure 9, il faut remarquer que si les vecteurs d'activation des couches d'entre et de sortie semblent directement interprtables, il n'en est rien en ce qui concerne la couche cache. Lorsque les neurones qui composent le rseau sont valeur continue, les possiblits offertes sont plus nombreuses. L'image d'entre peut tre compos de plusieurs niveaux de gris. On associe alors arbitrairement chaque niveau de gris un niveau d'activation du neurone spcifique. Le calcul du vecteur d'activation de la couche cache reste identique dans son principe avec cependant le fait que l'tat de chaque neurone n'est plus binaire. L'interprtation de la rponse du rseau fourni une image compose de niveaux de gris. 4.3 Rseau connexion complte Chaque vecteur d'activation reprsente la rponse du rseau une date particulire. Pour faciliter la reprsentation, nous avons dpli dans l'espace les volutions temporelles du rseau connexion complte (trois cycles fig. 10). D'un instant au suivant, chaque neurone recalcule indpedemment et en parallle son tat. Rappelons que chacun des neurones est connect tous les autres, ce qui implique pour chacun d'entre eux de recevoir 361 connexions et d'envoyer sa sortie sur ses 361 voisins. La principale diffrence entre les volutions temporelles d'un rseau connexion complte et le calcul de la sortie dans un rseau multicouche est que pour le premier les poids des connexions entre deux volutions temporelles sont identiques, alors que pour le second, d'une couche l'autre les poids des connexions sont diffrents.

28

t=1

t= 2

t= 3

Figure 10. Evolution du vecteur d'activation d'un rseau connexion complte sur une priode de trois cycles. La matrice des poids W est complte (361 x 361 = 130321 poids). Entre deux "couches", c'est la mme matrice de poids. 4.4 Rseau inhibition latrale rcurrente. Les poids sont fixs a priori lors de la construction du rseau, il n'y a pas de phase d'apprentissage. La structure du rseau est reprsente sur la figure 11. Il y a une seule couche de neurones. Les connexions sont localises, chaque pixel d'entre est en relation (excitatrice) avec un nombre rduit de neurones. De plus, on remarque la prsence de connexions rcurrentes inhibitrices localises autour de chaque neurone. Pixels d'entre + + +

29

t= 1

t=3

t=6

Figure 11. Rseau inhibition latrale rcurrente. a) Architecture, chaque pixel d'entre est connect un ensemble de neurones par des connexions excitatrices. Sur le rseau, chaque neurone ralise des connexions locales inhibitrices. b) Comportement, seuls les pixels noirs de la forme d'entre envoient une information sur le rseau. Pour chaque neurone, il y a comptition entre l'excitation en provenance de l'entre et l'inhibition en provenance de ses voisins. On observe alors le dveloppement au cours du temps de sous-groupes d'activit significatifs (angles, intersections, extrmits, etc). En utilisation, une image est prsente en entre. Elle n'est pas code comme prcedemment : un groupe de neurones est associ chaque pixel dont la couleur dtermine le niveau d'activation. De plus, la diffrence d'un rseau multicouche classique, la rponse n'est obtenue qu'aprs stabilisation de l'tat de sortie. Le rgime transitoire est du au retour d'information depuis les neurones voisins. De fait, cette boucle doit tre ralise un certain nombre de fois avant que l'on obtienne une valeur fixe en sortie. 5 Conclusion Grce aux quelques exemples de comportements vus, il est facile de comprendre que la disparition d'un ou mme de plusieurs neurones (ou de connexions) ne provoque pas une rupture brutale du traitement. En fait, la dgradation du comportement est fonction de la quantit d'lments dtruits. Cette proprit est dsigne sous le terme de rsistance aux pannes. 30

Par rapport aux donnes biologiques recences au chapitre prcdent, nous constatons : - une rduction du nombre de connexions par neurone (de 10.000 quelques centaines maximum), - une rduction drastique du nombre de neurones pour un rseau artificiel (quelques centaines comparer aux mille milliards du cerveau), - une diminution de la complexit de la synapse et l'atypie des topologies proposes. La plupart des modles que nous allons dcouvrir sont des modles synchrones temps discrets et combinatoires, alors que le monde biologique est asynchrone et continu. Il est important de noter que la nature du message nerveux biologique (codage en frquence) devient dsormais combinatoire (codage spatial). Nous constatons que la complexit biologique n'est pas conserve. 6 Comportements combinatoire et squentiel (TD) Parmi les variables descriptives qui ne sont pas des variables d'entre, on appelle variables d'tat les variables dont la valeur n'importe quelle date, ajoute la valeur des entres, dterminent de manire unique les valeurs de toutes les autres. Les tats caractrisent les possibilits de mmorisation du systme : l'information qu'il peut retenir des stimuli passs et qui modifiera la rponse des stimuli futurs. Un systme est sans mmoire s'il n'y a pas de variables d'tat. Pour un tel systme, les rponses prsentes et futures ne peuvent en aucune manire tre affectes par des stimuli passs. De tels systmes sont appels combinatoires, car leur rponse n'importe quelle date est uniquement fonction du stimulus reu cet instant. Question : Donnez l'quation dcrivant le comportement de ces systmes. Reponse : Le comportement de ces systmes est dfini par l'quation (F est la fonction ralise, E(t) est l'entre, S(t) est la sortie) : S(t) = F(E(t)) Un grand nombre de modles neuronaux, parmi les plus utiliss, n'ont pas de variables d'tat et montrent donc un comportement combinatoire : rseau multicouche, carte autoorganisatrice, rseau ART1, ... Inversement, un systme tats rpondra diffremment des entres prsentes et identiques selon l'histoire de ses stimuli d'entres passs. Question : Son comportement, nomm comportement squentiel, est donc dfini par une quation de la forme ? Reponse : S(t) = F(E(t), E(t-1), E(t-2), ..., E(1), E(0))

31

Un petit nombre de modles connexionnistes montrent un comportement squentiel, nous y revenons au chapitre Questions rcapitulatives.

32

4 Apprentissage
L'apprentissage est vraisemblablement la proprit la plus intressante des rseaux neuronaux. Elle ne concerne cependant pas tous les modles, mais les plus utiliss. Dfinition : L'apprentissage est une phase du dveloppement d'un rseau de neurones durant laquelle le comportement du rseau est modifi jusqu' l'obtention du comportement dsir. L'apprentissage neuronal fait appel des exemples de comportement. Dans le cas des rseaux de neurones artificiels, on ajoute souvent la description du modle l'algorithme d'apprentissage. Le modle sans apprentissage prsente en effet peu d'intrt. Dans la majorit des algorithmes actuels, les variables modifies pendant l'apprentissage sont les poids des connexions. L'apprentissage est la modification des poids du rseau dans l'optique d'accorder la rponse du rseau aux exemples et l'exprience. Il est souvent impossible de dcider priori des valeurs des poids des connexions d'un rseau pour une application donne. A l'issu de l'apprentissage, les poids sont fixs : c'est alors la phase d'utilisation. Certains modles de rseaux sont improprement dnomms apprentissage permanent. Dans ce cas il est vrai que l'apprentissage ne s'arrte jamais, cependant on peut toujours distinguer une phase d'apprentissage (en fait de remise jour du comportement) et une phase d'utilisation. Cette technique permet de conserver au rseau un comportement adapt malgr les fluctuations dans les donnes d'entres. Au niveau des algorithmes d'apprentissage, il a t dfini deux grandes classes selon que l'apprentissage est dit supervis ou non supervis. Cette distinction repose sur la forme des exemples d'apprentissage. Dans le cas de l'apprentissage supervis, les exemples sont des couples (Entre, Sortie associe) alors que l'on ne dispose que des valeurs (Entre) pour l'apprentissage non supervis. Remarquons cependant que les modles apprentissage non supervis ncessite avant la phase d'utilisation une tape de lablisation effectue l'oprateur, qui n'est pas autre chose qu'une part de supervision. 1 La loi de Hebb, un exemple d'apprentissage non supervis La loi de Hebb (1949) s'applique aux connexions entre neurones, comme le reprsente la figure 1. wij i j

Figure 1. i le neurone amont, j le neurone aval et wij le poids de la connexion. 33

Elle s'exprime de la faon suivante "Si 2 cellules sont actives en mme temps alors la force de la connexion augmente". La modification de poids dpend de la coactivation des neurones prsynaptique et post synaptique, ainsi que le montre la table 1. xi et xj sont respectivement les valeurs d'activation des neurones i et j, wij (drive partielle du poids) correspond la modification de poids ralise. xi 0 0 1 1 xj 0 1 0 1 wij 0 0 0 +

Table 1. La loi de Hebb. La loi de Hebb peut tre modlise par les quations suivantes (w(t+1) est le nouveau poids, wij(t) l'ancien) : wij (t+1) = w ij (t) +wij (t) wij (t) = xi . x j (la coactivit est modlise comme le produit des deux valeurs d'activation) L'algorithme d'apprentisage modifie de faon itrative (petit petit) les poids pour adapter la rponse obtenue la rponse dsire. Il s'agit en fait de modifier les poids lorsqu'il y a erreur seulement. 1/ Initialisation des poids et du seuil S des valeurs (petites) choisies au hasard. 2/ Prsentation d'une entre El = (e1, ... e n) de la base d'apprentissage. 3/ Calcul de la sortie obtenue x pour cette entre : a = (w i . e i) - S (la valeur de seuil est introduite ici dans le calcul de la somme pondre) x = signe (a) ( si a > 0 alors x = +1 sinon a 0 alors x = -1 ) 4/ Si la sortie x est diffrente de la sortie dsire dl pour cet exemple d'entre El alors modification des poids ( est une constante positive, qui spcifie le pas de modification des poids) : wij (t+1) = w ij (t) + .(x i . x j) 5/ Tant que tous les exemples de la base d'apprentissage ne sont pas traits correctement (i.e. modification des poids), retour l'tape 2. Exemple d'application de l'algorithme d'apprentissage de Hebb :

34

Choisissons pour les neurones un comportement binaire. Les entres e1 et e2 sont considres comme des neurones (fig. 2). e1 w1 x e2 w2

Figure 2. Rseau de 3 neurones (les 2 entres sont considres comme deux neurones) pour la rsolution du problme exprim table 2. Nous allons raliser l'apprentissage sur un problme trs simple. La base d'apprentissage est dcrite par la table 2 : e1 e2 x 1 1 -1 -1 1 -1 1 -1 1 1 -1 -1 (1) (2) (3) (4)

Table 2. Base d'exemples d'apprentissage pour la loi de Hebb. 1/ Conditions initiales : = +1, les poids et le seuil sont nuls. 2/ Calculons la valeur de x pour l'exemple (1) : 3/ a = w1.e 1 + w 2.e 2 - S = 0.0 . 1 + 0.0 . 1 - 0.0 = 0 a 0 => x = -1 4/ La sortie est fausse, il faut donc modifier les poids en applicant : w1 = w 1 + e1.x = 0.0 + 1.1 = 1 w2 = w 2 + e2.x = 0.0 + 1.1 = 1 2/ On passe l'exemple suivant (2) : 3/ a = 1.1 + 1.-1 -0.0 = 0 a 0 => x = -1 4/ La sortie est fausse, il faut donc modifier les poids en applicant : w1 = 1 + 1.1 = 2 w2 = 1 + 1.-1 = 0 / L'exemple suivant (3) est correctement trait : a = -2 et x = -1 (la sortie est bonne). On passe directement, sans modification des poids l'exemple (4). Celui-ci aussi est correctement trait. On revient alors au dbut de la base d'apprentissage : l'exemple (1). Il est correctement trait, ainsi que le second (2). L'algorithme d'apprentissage est alors termin : toute la base d'apprentissage a t passe en revue sans modification des poids. Question : Soit le rseau compos de 4 neurones d'entre et d'un neurone de sortie (w1 = w 2 = w3 = w 4 = S = 0) et la base d'apprentissage : 35

e1 1 1 1 1 1 1 -1

e2 -1 1 1 -1

e3 1 1 -1 1

e4 -1 1 -1 -1

x 1

Recherchez les valeurs de poids qui rsolvent le problme. Rponse : Cet algorithme d'apprentissage ne permet pas de trouver une solution ce problme. Nous ne sommes capables d'exprimer une combinaison des activations en corrlation avec la sortie. Pourtant, il existe des solutions comme par exemple (w1 = -0.2, w 2 = -0.2, w 3 = 0.6, w4 = 0.2). Un algorithme de calcul efficace pour ce problme est l'apprentissage sur le modle du Perceptron abord au chapitre suivant. Remarque : Il existe une possibilit de calculer les valeurs des connexions partir des exemples, sans utiliser l'algorithme itratif. Si l'on initialise les poids zro et que l'on prsente les exemples de la base d'apprentissage, la valeurs des poids l'issue de l'apprentissage est : wij = l xil . x jl o l est l'indice de l'exemple dans la base d'apprentissage 2 La rgle d'apprentissage du Perceptron, un exemple d'apprentissage supervis La rgle de Hebb ne s'applique pas dans certain cas, bien qu'une solution existe (cf exercice du paragraphe prcdent). Un autre algorithme d'apprentissage a donc t propos, qui tient compte de l'erreur observe en sortie. L'algorithme d'apprentissage du Perceptron est semblable celui utilis pour la loi de Hebb. Les diffrences se situent au niveau de la modification des poids. 1/ Initialisation des poids et du seuil S des valeurs (petites) choisies au hasard. 2/ Prsentation d'une entre El = (e1, ... e n) de la base d'apprentissage. 3/ Calcul de la sortie obtenue x pour cette entre : a = (wi . e i) - S x = signe (a) ( si a > 0 alors x = +1 sinon a 0 alors x = -1 ) 4/ Si la sortie x du Perceptron est diffrente de la sortie dsire dl pour cet exemple d'entre El alors modification des poids ( le pas de modification) : wi(t+1) = w i(t) + .((d l - x).e i) Rappel : d l = +1 si E est de la classe 1, d l = -1 si E est de la classe 2 et (d l - x) est une estimation de l'erreur. 5/ Tant que tous les exemples de la base d'apprentissage ne sont pas traits correctement (i.e. modification des poids), retour l'tape 2. 36

Exemple de fonctionnement de l'algorithme d'apprentissage du Perceptron : Base d'exemples d'apprentissage : e1 e2 d 1 -1 -1 1 1/ 2/ 3/ 4/ 2/ 3/ 4/ 1 1 -1 -1 1 -1 -1 -1 (1) (2) (3) (4)

Conditions initiales : w1 = -0.2, w2 = +0.1, S = 0, ( = +0.1) a(1) = -0.2 + 0.1 -0.2 = -0.3 x(1) = -1 (la sortie dsire d(1) = +1, d'o modification des poids) w1 = -0.2 + 0.1 . (1 + 1) . (+1) = 0 w2 = +0.1 + 0.1 . (1 + 1) . (+1) = +0.3 a(2) = +0.3 - 0.2 = +0.1 x(2) = +1 w1 = 0 + 0.1 . (-1 - 1) . (-1) = +0.2 w2 = +0.3 + 0.1 . (-1 - 1) . (+1) = +0.1 Faux

2-3/ a(3) = -0.2 -0.1 -0.2 = -0.5 Ok 2-3/ a(4) = +0.2 - 0.1 - 0.2 = -0.1 Ok 2-3/ a(1) = +0.2 + 0.1 - 0.2 = +0.1 Ok 2-3/ a(2) = -0.2 + 0.1 - 0.2 = -0.1 Ok 5/ Tous les exemples de la base ont t correctement traits, l'apprentissage est termin. Le Perceptron ralise une partition de son espace d'entre en 2 classes (1 et 2) selon la valeur de sa sortie (+1 ou -1). La sparation de ces deux zones est effectue par un hyperplan (fig. 3). L'quation de la droite sparatrice est : w1.e 1 +w 2.e 2 - S = 0

37

e2

(-1,+1)

(+1,+1)

classe 1

classe 2
(+1,-1)

e1

(-1,-1)

Figure 3. Partition de l'espace d'entre de dimension 2 ralise par un Perceptron se comportant comme un ET boolen. Les 4 exemples de la base d'apprentissage sont les 4 artes du carr. Les paramtres du Perceptron sont : w1 = 0.2, w2 = 0.1 et S = -0.2. Remarque : si les exemples d'apprentissage taient diffrents, par exemple reprsentant le OU, alors c'est le comportement du OU qui aurait t appris avec le mme algorithme d'apprentissage. D'autre part, il est possible de considr que le seuil S est le poids d'une connexion dont le neurone amont est toujours dans l'tat -1. La valeur de seuil se modifie alors en mme temps que les autres poids. La convergence de l'algorithme vers la solution est plus rapide (si cette solution existe). On appelle itration d'apprentissage, le passage de tous les exemples de la base d'apprentissage une fois dans l'algorithme. Question : Reprendre la question prcdente (apprentissage non supervis) et la rsoudre en applicant l'apprentissage du Perceptron. On ne modifiera pas le seuil S dans cet exemple prcis. Rponse : w1 = -0.2, w2 = -0.2, w3 = 0.6, w4 = 0.2 3 TP Perceptron 1/ Simuler la fonction ET avec des poids fixes et sans apprentissage. Les paramtres du Perceptron sont les suivants : w1 = 0.2, w2 = 0.1 et S = -0.2. Les exemples de comportement vrifier (ET) sont rappels sur la table suivante : e1 e2 d 1 -1 -1 1 1 -1 1 -1 -1 (1) (2) (3) 38

-1

-1

(4)

2/ Pour la mme base d'apprentissage, raliser l'apprentissage (ne pas oublier la modification du seuil). Le choix des conditions initiales est confi au hasard. Dans un premire tape, il est conseill de refaire pas pas l'exemple de cet ouvrage : w1 = -0.2, w2 = +0.1, S = 0, = +0.1 (Conditions initiales). Puis faites varier . 3/ Essayer d'apprendre le XOR. e1 e2 d 1 -1 -1 1 1 1 -1 -1 1 -1 1 -1 (1) (2) (3) (4)

4/ Sachant que le XOR peut s'crire comme : ((e1 ET (NON(e2))) OU (NON(e1) ET e2)) proposez une solution pour raliser le XOR avec 3 Perceptrons. (NON(1) = -1 et inversement) e1 e2 d 1 1 1 (1) -1 1 1 (2) -1 -1 -1 (3) 1 -1 1 (4) Table du OU L'apprentissage de chacun des Perceptrons est ralis sparement des autres. Qu'en dduisez-vous quant aux possibilits d'un Perceptron ? d'une association de Perceptrons ? 5/ Raliser la fonction ET et OU avec 2 neurones. Dans ce cas, le rseau se compose de 2 entres, 2 neurones et 4 poids. L'apprentissage de chacune des fonctions n'est pas spar. Il faut donc construire une base d'apprentissage spcifique de ce problme (qui ne comprendra pas plus de 4 exemples). 6/ Reconnaissance de caractre avec un Perceptron. Un caractre est cod sur 4 x 7 = 28 pixels. Il y donc 28 entres sur le perceptron. Tester la gnralisation et la rsistance au bruit en proposant l'issu de l'apprentissage des caractres "abims". 7/ Reconnaissance de caractres : on associe a priori un caractre par neurone. Il faut donc autant de Perceptrons que de caractres reconnaitre. Tester la gnralisation. Etudier les erreurs, sur quels caractres apparaissent-elles, comment peut-on y remdier ?

39

On prendra soin de cette construction de la base de caractres, qui est aussi utilise dans les TP relatifs aux mmoires associatives, cartes auto-organisatrices, rseaux ART, rseaux multicouches.

40

5 Mmoires associatives
Les mmoires associatives ont t proposs par plusieurs auteurs ds 1977 dont T. Kohonen. Nous nous appuyons sur ses travaux qui ont t admirablement rsum par C. Jutten. Dans mmoire associative, le terme "mmoire" fait rfrence la fonction de stockage de l'information et le terme "associative" au mode d'adressage. L'expression "mmoire adressable par son contenu" est aussi souvent employe. L'information mmorise ne peut tre obtenue une adresse prcise, le seul moyen d'accs est de fournir une information. Dans le cas des mmoires auto-associatives, il faut fournir tout ou partie de l'information mmorise. Ces mmoires sont donc principalement utilises pour la reconstruction de donnes : l'oprateur fourni une information partielle que le systme complte. Des exprimentation dans ce sens ont t faite avec l'annuaire lectronique o l'utilisateur tape le maximum d'informations relatives sa demande, que le systme complte et corrige (fig. 1). Les mmoires htro-associatives se diffrencient des prcdentes en rendant une information diffrente. Par exemple, si la clef d'entre est une image de visage, le systme rpond par le nom de la personne correspondante. Appris : Jean Dupond, 22 rue du 29 Fvrier, 99001 Asnires, 66 38 70 29 Clef : Jean Dupont, rue du 29 Septembre, Asnires, Rsultat : Jean Dupond, 22 rue du 29 Fvrier, 92501 Asnires, 66 38 70 29 Figure 1. Exemples d'interprtations (et de corrections) de requtes d'un utilisateur de l'annuaire lectronique par une mmoire auto-associative (il peut subsister des erreurs). 1 Structure La structure neuronale d'une mmoire associative est similaire celle d'une carte autoorganisatrice sans la notion de voisinage (cf chapitre suivant), ou celle d'un ensemble de Perceptrons tous aliments par les mmes entres. La figure 1 montre cette architecture o chaque entre est connecte par des poids modifiables toutes les sorties. La dimension de la couche d'entre est de n neurones, celle de sortie de p. Il y a donc n.p poids dans ce rseau. e1 w1 ... ... en wp.n E W

x1 ...

xp

Figure 1. Structure d'une mmoire associative

41

2 Fonctionnement Le principe de fonctionnement d'une mmoire associative se rsume ainsi. Soit (E1, E2, ..., E l, ...) un ensemble de vecteurs de Rn. A chaque vecteur El appel "prototype" de l'espace d'entre est associ un vecteur de sortie Sl. La relation d'association entre El et Sl est linaire. Elle est donne par l'quation : Sl = W . E l o W est la matrice des poids de dimension (p.n). C'est une matrice rectangulaire de p lignes et n colonnes. L'objectif est de faire raliser ce rseau des associations entre les vecteurs d'entres et les vecteurs de sortie dsirs. Ceci ncessite une tape d'apprentissage. 3 Apprentissage L'apprentissage est de type supervis. La base d'apprentissage est compose de couple de vecteurs d'entre et des vecteurs de sortie associs. L'algorithme d'apprentissage initial fait appel la rgle de Hebb. Une entre El est applique sur les neurones d'entre du rseau et l'on force dans le mme temps les valeurs des neurones de sortie Sl. Les poids de chaque connexion est alors modifi selon la coactivit du neurone affrent (entre) et du neurone effrent (sortie). Cet algorithme est itr sur tous les exemples de la base d'apprentissage. A la fin du processus d'apprentissage, si la matrice W est initialement nulle (W = 0), on obtient : W = l S l . E lT o ElT est la transpose du vecteur El (qui transforme un vecteur ligne en un vecteur colonne et rciproquement) Cette expression est en fait un raccourci mathmatique au processus d'apprentissage itratif mettant en jeu une rgle locale de modification des poids. 4 Rsultats

42

a b c d Figure 2. Illustration du fonctionnement d'une mmoire auto-associative (d'aprs Kohonen). a) Images originales apprises gauche. b) Clefs soumises en entre au rseau. c) Images restitues par le rseau lorsque 160 images ont t stockes. d) Images restitues par le rseau lorsque 500 images ont t stockes.

5 TP Mmoires associatives 1/ Ecrire le programme d'une mmoire associative, sachant que les prototypes sont les caractres construits lors du TP Perceptron (4 x 7 pixels). 43

2/ Tester la gnralisation et la rsistance au bruit en proposant, l'issu de l'apprentissage, des caractres "abims". 3/ Tester les capacits de mmorisation de ce rseau en augmentant la taille de la base d'apprentissage (environ 15% du nombre de neurones dans le rseau). 4/ Donner quelques explications relatives la gnration des erreurs par le systme, sur quels caractres apparaissent-elles, comment peut-on y remdier ? (notion d'orthogonalit au sein de la base d'exemples)

44

6 Carte auto-organisatrice
Ce modle de carte auto-organisatrice appartient la classe des rseaux comptition. Les neurones de la couche de sortie entrent en comptition, de telle faon qu'habituellement, un seul neurone de sortie est activ pour une entre donne. Cette comptition entre les neurones est ralise grce des connexions latrales inhibitrices. Nous prsentons deux modles parmi les plus intressants : la carte auto-organisatrice et le rseau ART1 (au chapitre suivant). Il faut noter que tous deux sont issus de reflexions neuromimtiques : ils se placent originellement comme des modlisation de processus biologiques. Ils ont depuis t rcuprs par les ingnieurs connexionnistes comme le montre les applications prsentes. Les cartes auto-organisatrices sont depuis longtemps (!) connues (1977), mais ce n'est que trs rcemment (1990) que des applications les utilisent : carte phontique, diagnostic de pannes, compression d'images, robotique, etc. Ces cartes s'organisent par rapport aux exemples d'entre prsents en respectant les contraintes topologiques de l'espace d'entre. Il y a mise en correspondance de l'espace d'entre avec l'espace du rseau. Les zones voisines de l'espace d'entre sont voisines sur la carte auto-organisatrice (fig. 1) .. .. . . .. . . . ...... .. .. . . .. . . . ...... .. .. . . .. . . . ...... e2 . . .. .. . . . .. .. . . . .. .. . . ... . . . .. . . . ... . . . . ... ... . . . ... . . . .. . . . ... . . . . ... ... . . . ... . . . .. . . . ... . . . . ... ... . . e1 1 Structure 45 . . .. .. . . . .. .. . . . .. .. . . ... . . . .. . . . ... . . . . ... ... . . . ... . . . .. . . . ... . . . . ... ... . . . ... . . . .. . . . ... . . . . ... ... . . .. .. . . .. . . . ...... .. .. . . .. . . . ...... .. .. . . .. . . . ......

Figure 1. Mise en correspondance de l'espace d'entre avec l'espace du rseau. L'espace d'entre avec les exemples (points) d'apprentissage est reprsent gauche. A l'issue de l'apprentissage, chacun des 9 neurones de la carte auto-organisatrice correspond une zone de l'espace d'entre (aussi nomme champ rcepteur) en bas droite. Tout point tir dans un champ rcepteur active le neurone correspondant et lui seul.

La figure 2 dcrit le rseau organis en une couche deux dimensions. Chaque neurone Nk est connect un nombre n d'entres au travers de n connexions plastiques de poids respectifs w. Il existe aussi des connexions latrales de poids fixes, excitatrices dans un proche voisinage. e1 ... en E

w11 ...

wpn

x1 ...

xp

Figure 2. Architecture d'une carte auto-organisatrice (rseau 2D). Chaque neurone est connect ses 4 plus proches voisins. Ces connexions sont de poids fixes. Tous les neurones sont connects aux entres par des connexions plastiques. 2 Fonctionnement A la prsentation d'un eentre, un neurone sur la carte est slectionn. Il correspond le plus possible cette entre (minimisation d'une distance). On peut ainsi raliser des classifications ou de la reconnaissance de formes. Le modle de rseau neuronal propos par Kohonen montre des proprits d'auto-organisation et de reprsentation topologique de l'espace d'entre (espace affrent). 3 Apprentissage La loi de modification des poids des connexions (poids synaptiques) est drive de celle de Hebb. Dans le cas o les exemples d'entres sont des vecteurs deux composantes, l'algorithme d'apprentissage est le suivant : 1/ Initialisation des poids des valeurs alatoires. 2/ Prsentation d'une entre El = (e1, e 2). 3/ Calcul de la distance de chacun des neurones par rapport e1 et e2 xj = |wj1 - e1| + |wj2 - e2| 4/ Slection du neurone le plus proche : Min(x)= xi 5) Modification des poids pour le neurone choisi (i) et ses 4 plus proches voisins (k). et sont deux paramtres correspondant au pas de modification des poids. pour le neurone choisi et pour ceux du voisinnage. wi1 = w i1 + . (e 1 - wi1) wi2 = w i2 + . (e 2 - wi2) 46

wk1 = w k1 + . (e 1 - wk1) wk2 = w k2 + . (e 2 - wk2) 6) Tant que les performances sont insuffisantes : Retour l'tape 2 et slection de l'exemple suivant dans la base d'apprentissage. Remarque : Cet algorithme est un raccourci mathmatique. Originellement, le modle est biologiquement plus plausible et aussi plus complexe. L'unit de traitement n'est pas le neurone mais la colonne corticale (ensemble d'environ 200 neurones). Un voisinage est dfini autour de chaque colonne corticale. Son action est la fois excitatrice dans un proche voisinage et inhibitrice dans un voisinage plus lointain (fig. 3 et 4) : Interaction

+ -

+ d_e voisinage

Figure 3. Influence d'un neurone sur ses voisins en fonction de l'loignement. + : excitatrice (w > 0), - : inhibitrice (w > 0), d_e : taille du voisinage excitateur.

3 d_e Figure 4. Fonctionnement au cours du temps du rseau. On voit se dgager progressivement, pour une mme information, un foyer d'excitation alors que les autres neurones sont inhibs. 4 Rsultats

47

Les informations reues par le rseau dtermine un arrangement spatial optimal des neurones. Les figures graphiques obtenues peuvent tre lues comme reprsentant pour chaque neurone l'endroit du monde extrieur sur l'espace des poids pour lequel son activit est maximale (slectivit de position).

40

200

1000

Figure 5. Le rseau apprend l'espace carr partir d'un tat initial caractris par des poids rpartis alatoirement autour d'une valeur centrale. Chaque point est dfini par un couple (e1, e2). Les liens de voisinage topologiques sont matrialiss par des traits reliant chaque point. Sous le graphe figure le nombre d'itrations correspondant au nombre de points utiliss pour l'apprentissage (d'aprs Y. Coiton). La figure 6 illustre la proprit d'arrangement spatial optimal. Le rseau est ici une dimension (seulement deux voisins) et l'espace des entres est deux dimensions.

a b Figure 6. Arrangement spatial optimal pour un rseau une dimension, a) dans un carr, b) dans un rectangle. Illustration de l'adquation entre la dimension et la forme du rseau avec l'espace des entres. L'exemple choisi est celui d'une carte triangulaire quilatrale (chaque ct du triangle comporte le mme nombre de neurones). Hormis sur la priphrie, chaque neurone possde six voisins.

48

a b Figure 7. Illustration de l'adquation entre la forme de la carte et la forme de l'espace. a) Carte carr dans un triangle, b) Carte triangulaire dans le mme triangle. L'arrangement spatial optimal; est une autre proprit remarquable des cartes, qui s'organisent de faon approximer la fonction densit de probabilit des vecteurs d'entre. Nous prsentons deux exemples d'occupation non uniforme d'un espace carr par un rseau carr (figure 8), selon la distribution des points tirs durant l'apprentissage.

a b Figure 8. Occupation non uniforme d'un carr par un rseau carr. Les neurones se concentrent dans la zone de distribution plus leve. a) Le centre de l'espace est beaucoup plus reprsent au niveau des exemples d'apprentissage. b) Chaque entre e1 est la moyenne arithmtique de deux autres valeurs tires alatoirement de faon uniforme. Les entres e2 sont uniformment rparties (montres sur la figure) On peut construire en simulation logicielle des cartes 3D (6 voisins), voir 4D ou nD. Les cartes auto-organisatrices trouvent une certaine justification biologique dans l'existence au niveau des cortex moteur et sensoriel de cartes somatotopiques. Chaque partie du corps est reprsente : c'est l'homonculus (fig. 9).

49

Figure 9. L'homonculus : la surface occupe au niveau corticale est fonction de la sensibilit sensorielle ou prcision motrice de la partie du corps correspondante. Ainsi, la surface occupe par le pouce est suprieure celle de la cuisse (arrangement spatial optimal). D'autre part, la topologie est conserve : les doigts sont l'un cot de l'autre, etc. Remarque : l'amlioration des performances de l'algorithme d'apprentissage peut tre obtenue par l'introduction de deux nouveaux paramtres d'action comparable au phnomne biologique d'accoutumance (cf annexe). 5 Application la robotique On utilise la capacit de reprsentation spatiale de la carte auto-organisatrice pour piloter un bras de robot. Il s'agit de mettre en correspondance l'espace cartsien dans lequel travaille l'oprateur humain avec l'espace du robot (coordonnes de chacun de ses axes en valeurs angulaires). Lorsque cette transformation de coordonnes est ralise de manire algorithmique, elle fait appel des inversions de matrices, coteuses en temps de calcul, qui gnrent ventuellement des problmes de conflit lorsque la solution n'est pas unique, ou lorsque les limites de la mcanique (bute) interdisent certaines positions. Le passage coordonnes cartsiennes / coordonnes angulaires et rciproquement est trs simple en utilisant la carte autoorganisatrice. Structure : une carte auto-organisatrice de n x n neurones (habituellement quelques centaines) avec 6 entres par neurones (3 coordonnes cartsiennes et 3 coordonnes angulaires) ralise la 50

partie sensorielle du systme. La partie motrice est confie une couche de 3 Perceptrons (recevant une entre de chaque neurone de la carte), dont les sorties pilotent les moteurs du robot (fig. 10). 3 2 z x, y, z 1,2,3

1 x y

Couche sensorielle

Couche motrice

Figure 10. Architecture de Neurobot (Y. Coiton). Chaque neurone de la carte auto-organisatrice reoit 3 entres cartsiennes (espace de l'oprateur) et 3 entres angulaires (espace du robot). La couche motrice se compose de 3 Perceptrons correspondant aux 3 valeurs angulaires pour chacun des 3 moteurs du robot. Fonctionnement : une position pour l'extrmit du bras de robot est spcifie en coordonnes cartsiennes par l'oprateur. On rcupre en sortie de la couche motrice les coordonnes angulaires correspondant la mme position. En fait, si cette postion atteindre est loigne, un certain nombre de positions intermdiaires sont gnres par le rseau (fig. 11). y initial

intermdiaires

but

51

Figure 11. Illustration du fonctionnement dans le plan (x, y). a) Lorsqu'un point atteindre est spcifi en coordonnes cartsiennes, le systme gnre un certain nombre de positions angulaires intermdiaires qui conduisent au but. b) Au niveau de la carte auto-organisatrice, tout ce passe comme si on avait deux foyers d'activit (initial et but). Le principe de fonctionnement de la carte impose de rduire les foyers d'activit celui du but, gnrant par l des foyers intermdiaires. Apprentissage : la base d'apprentissage est construite en temps rel. Le bras de robot est dplac alatoirement dans l'espace des configurations possibles. Pour chaque position, les capteurs appropris fournissent la carte les 3 coordonnes cartsiennes et les 3 coordonnes angulaires. L'aprentissage sur la couche motrice est ralis par la rgle du Perceptron partir des coordonnes angulaires correspondantes. La dure de l'apprentissage est importante (quelques heures) du fait de la lenteur de dplacement de la mcanique. Quelques milliers d'exemples de positions sont ncessaires. Remarque : la prcision du dplacement est fonction du nombre de neurones sur la couche sensorielle. Plus ce nombre est lev, meilleur est la prcision. D'autre part, vu que l'espace modliser est 3 dimensions (cartsien), les rseaux auto-organisateurs 3-D (6 voisins) sont plus performants. 6 TP Compression d'images par carte auto-organisatrice La quantification vectorielle est l'une des mthodes de compression d'image parmi les plus employes. Nous allons raliser cette quantification en utilisant des cartes auto-organisatrices. 1/ Introduction Les images qui proviennent de la tlvision, de visioconfrence, de satellite, ou dapplications mdicales ... quelles quelles soient, reprsentent une quantit norme de donnes aprs digitalisation. Diminuer les cots de transmission ou de stockage est dun intrt trs ancien (par exemple, le code Morse). En ce qui concerne les applications aux communications, le but recherch est alors de minimiser la dure de transmission dun certain volume dinformations. Ceci apporte la fois une conomie sur le cot, une diminution des risques derreurs, une plus grande ergonomie et une plus grande performance, puisque les donnes sont achemines en un temps plus court. Les diverses mthodes de compression sont bases sur les techniques de prdiction, de transformation, ou de quantification vectorielle, avec des possibilits de combinaisons entre elles. Elles sont de deux types. Si la transformation ralise est rversible, la rduction utilise la redondance dinformations et aucune information nest perdue. Dans l'autre cas, la transformation est irrversible. Cest une rduction d'entropie et il y a perte dinformations.

52

Les performances de la compression sont mesures par : MSE (Mean Square Error) qui reprsente la diffrence entre limage initiale et limage reconstitue : erreurs2 ou bien, erreurs2 / pixel. Le taux de transmission (Bit Rate)= Nombre de bits / pixel (bpp) = (log2 nbre de vecteurs / nbre de pixels par bloc). 2/ La quantification vectorielle Une image est un objet analogique. Sa reprsentation spatiale est continue de mme que la valeur de la couleur en chacun de ses points. Pour modliser une image, il faut transformer limage analogique par une fonction dchantillonnage S, en une fonction discrte f(x,y) (x et y tant les coordones des pixels) dont lamplitude reprsente lintensit lumineuse. Ce processus est dcrit par la figure 12. Dans le cas particulier des images nayant quune seule couleur, lintensit en chaque point est appele niveau de gris. Le nombre plus ou moins lev de niveaux de gris spcifie la qualit de limage (par exemple : 256 niveaux de gris sont un critre de qualit). F (x,y) i image initiale continue S (x,y) fonction d' chantillonnage Figure 12. Lchantillonnage Pour rsumer, lchantillonnage est une numrisation : - en espace : discrtiser les coordonnes (x,y), cest chantillonner limage. - en frquence : discrtiser la couleur dun point, cest quantifier les niveaux de gris. Lors de la quantification vectorielle, l'image transmettre est dcoupe en blocs de pixels. Chaque pixel peut tre cod par les poids des composantes RVB (Rouge, Vert, Bleu) ou par une composante de luminance et deux composantes diffrentielles de couleur (Y, Cb, Cr). La technique de codage est base sur le fait, qu'au sein d'une mme image de nombreux blocs sont identiques ou peu diffrents. La quantification vectorielle ralise une mise en correspondance dun ensemble de vecteurs dentre avec un ensemble de vecteurs de sortie, selon une mesure de distortion. Tous les chantillons dune rgion (en fait les blocs semblables) sont reprsents par un seul code. Ce code est un index du dictionnaire. Le dictionnaire est compos des blocs les plus frquents de limage, ce sont les mots du dictionnaire. Sur la ligne de transmission, les codes correspondant chaque bloc de limage initiale sont envoys squentiellement. A la rception, fp(x,y) fonction chantillonne

53

on utilise le dictionnaire pour reconstruire limage, qui est donc tablie seulement partir des mots du dictionnaire. Le principal problme de la quantification vectorielle ralise par l'algorithme classique (Linde-Buzo-Gray ou LBG) est la non-invariance du dictionnaire par rapport aux conditions initiales. En effet, on est oblig de fixer des valeurs initiales pour les mots du dictionnaire, valeurs qui influencent la solution finale. De fait, cette solution nest pas toujours optimale. Dautre part, pour construire un dictionnaire optimal, on utilise une mesure de distorsion entre lensemble dentranement et le dictionnaire. Lalgorithme est sous-optimal puisquil tend surcoder les rgions denses de points alors que les rgions clairsemes sont sous-codes. Les blocs peu reprsents (et ventuellement trs significatifs pour l'oeil) sont rejets au profit de blocs plus courants (codant le fond par exemple). 3/ Principe de la quantification vectorielle par carte auto-organisatrice (fig. 13) Le nombre de mots du dictionnaire est gal la taille du rseau (nombre de neurones). Le dictionnaire est donc compos des blocs les plus reprsentatifs de limage.

Blocs de l'image (72 bits) 4 entres sur la carte

image reconstitue (32 bits)

canal de transmission carte auto-organisatrice (1) dictionnaire 1 2 3 4 1 2 3 4 (2) dictionnaire (3) rception

(4)

Figure 13. Principe de la quantification vectorielle par carte auto-organisatrice (1) Construction du dictionnaire : la carte slectionne les mots du dictionnaire partir des blocs les plus reprsentatifs de limage. (2) Codage de limage (par le dictionnaire) : la carte slectionne pour le bloc de limage qui lui est prsent le numro du mot du dictionnaire le plus proche. 54

(3) Transmission : le numro des vecteurs est transmis par le canal. (4) Dcodage (reconstitution).

Questions : Etudiez les diffrentes possibilits offertes par lutilisation de la carte autoorganisatrice pour la quantification vectorielle dimages. Comparez les performances obtenues pour les diffrents paramtres suivants : 1/ Dictionnaires de tailles diffrentes (lies la taille de la carte, cest--dire le nombre de neurones qui coderont les blocs), 2/ Cartes de dimensions diffrentes (lespace sera projet sur un rseau 1 dimension, 2 dimensions et 3 dimensions), 3/ Taille des blocs , cest--dire la dimension des vecteurs dentre, 4/ Longueur de la squence dapprentissage (nombre ditrations). On cherchera optimiser la dure dapprentissage), 5/ Influence sur le voisinage (par et qui sont les gains de modication de poids). Rponses : A titre indicatif, nos exprimentations utilisent une image de 172 x 128 (22 016 pixels) sur 8 niveaux de gris. 1/ Variation de la taille de la carte La dimension des vecteurs est de 2 x 2 = 4 pixels. Il y a 20 itrations dapprentissage (= 0.8 et = 0.7 ). MSE

294.1

86.8 43.3 29.7 7 15 30 60 125 nombre de neurones

Fig. 14 Variation de la taille de la carte auto-organisatrice Plus le nombre de neurones est important, meilleure est limage restitue ; mais le taux de compression varie linverse. Il faut trouver un compromis entre la qualit de limage et le taux

55

de compression. Nous avons choisi pour le suite de lexprimentation 30 neurones (6 x 5) et des blocs de 2 x 2. 2/ Variation des dimensions du rseau : rseau 1D, 2D, 3D Nous choisissons deffectuer seulement 10 itrations et les valeurs suivantes : = 0.5 et = 0.1, les blocs sont de 2 x 2. La dimension de lespace dentre est gale la taille des blocs. Lhypothse que nous voulons tester est : la projection faite sur lespace de ce rseau est-elle dautant meilleure que les dimensions du rseau et des entres sont plus proches. Rseau 1D : ligne de 64 neurones

....
Rseau 2D : carte de 8 x 8 = 64 neurones

Rseau 3D : cube de 4 x 4 x 4 = 64 neurones

Le meilleur rsultat est obtenu pour le rseau ligne (1D). Le voisinage est rduit et tend vers 0 (cf variation du voisinage). Notre objectif est de tester la carte auto-organisatrice pour la compression dimage, nous conservons donc le rseau 2D pour la suite des tests. 3/ Variation de la taille des blocs (dimension des vecteurs)

56

Carte de 30 neurones (6 x 5), 20 itrations, = 0.8 et = 0.7. Plus les blocs sont gros, plus le taux de compression est important. Le problme est quil existe une taille limite pour ces blocs dterminer. Les blocs 4 x 4 sont trs grands, mais ils offrent un bon taux de compression (12.8). Les blocs 2 x 2 donnent un meilleur rsultat visuel que les blocs 4 x 1 car dans ce cas, les lignes horizontales sont trop visibles bien quayant le mme taux de compression et une erreur sensiblement identique. 4/ Variation du nombre ditrations (fig.15) Carte de 30 neurones (6 x 5), blocs de 2 x 2 pixels, = 0.8 et = 0.7. Plus la dure dapprentissage est rduite, plus une intgration dans un systme rel devient envisageable. Recherchez le meilleur compromis nombre itration/performance. MSE

95 86.8

15

30

50

nombre de neurones

Figure 15. Variation de la squence dentranement Nous choisissons de nous limiter 15 itrations pour la suite de nos exprimentations, cest le nombre pour lequel la distorsion est minimale. 5/ Variation du voisinage Carte de 30 neurones (6 x 5), blocs de 2 x 2 pixels, 15 itrations. est le paramtre de changement de poids du cluster durant lapprentissage, celui de changement de poids pour le voisinage. Recherchez le couple de valeur (, ) qui offre les meilleurs performances. Notez que lorsque = 1 et = 0, il n'y a pas de voisinage. Le meilleur rsultat (en terme de minimisation de la distorsion) est atteint pour les valeurs ( = 1 ; = 0), cest--dire sans voisinage. Cependant, bien que lerreur soit suprieure en prsence dun voisinage, loeil l'image semble meilleure. Ce phnomne se reproduit sur plusieurs autres images. Nous constatons ici le fait bien connu que la mesure de la distorsion nest pas un critre de mesure de la qualit visuelle dune image compresse. Rsum des rponses 57

La variation de la taille de la carte montre que plus celle-ci est de taille importante, plus la qualit de limage restitue est bonne. Toutefois, plus il y a de neurones, moins le taux de compression est important. Il faut donc rechercher un compromis entre un taux de compression satisfaisant et une bonne qualit dimage. Concernant la dimension du rseau, plus la dimension est faible, meilleure est la MSE. Cependant, le rseau 2D est celui que nous avons choisi pour toute la suite de nos travaux, car bien que de qualit absolue infrieure (MSE), il est dune qualit visuelle meilleure. Cest un constat de mme type que pour la variation du voisinage. La variation de la taille des blocs donne un bon rsultat pour 2 x 1 pixels (mais le taux de compression serait alors seulement de 1,6), alors qu loppos les blocs 4 x 4 pixels donnent un mauvais rsultat visuel mais la compression est de 12,8. Le nombre ditrations de lapprentissage fait varier lerreur totale. Pour 15 itrations, on obtient une distortion minimale. Au del de 15 itrations, cest le phnomne du par coeur qui prend la place de la gnralisation. Enfin, les paramtres et font eux-aussi varier la distorsion : les meilleurs rsultats en valeur de distorsion, sont obtenus pour = 1 et = 0, cest--dire un rseau sans voisinage. Dans ce cas, on ne peut plus parler de rseau (il ny a plus de voisinage), le comportement observ est identique celui de lalgorithme de Linde-Buzo-Gray. Notons cependant que dans ce cas ausi, l'apprciation subjective fournie par la vision humaine ne suit pas toujours les critres quantitatifs. Enfin, lutilisation de la carte de Kohonen permet de palier lun des problmes majeurs rencontrs par lalgorithme LBG : la non-invariance par rapport aux conditions initiales. Dans notre cas, le dictionnaire initial est choisi alatoirement et ninfluence pas le rsultat final. Rappelons que dans les autres mthodes de quantification vectorielle, ce choix met en oeuvre de nombreux calculs et constitue un facteur dterminant pour la qualit du quantificateur final.

58

7 Un rseau volutive, ART

architecture

ART (Adaptive Resonance Theory) est un modle de rseau de neurones architecture volutive dvelopp en 1987 par Carpenter et Grossberg. Dans la plupart des rseaux de neurones, deux tapes sont considres. La premire est la phase d'apprentissage : les poids des connexions sont modifis selon une rgle d'apprentissage La deuxime est la phase d'excution o les poids ne sont plus modifis. Avec le rseau ART, ces deux tapes sont ralises simultanment. Le rseau en phase de test, s'adapte des entres inconnues en construisant de nouvelles classes (ajout de neurones) tout en dgradant au minimum les informations dja mmorises. Il existe plusieurs versions de rseaux (ART1, ART2, ART3). Le rseau ART1 est un rseau entres binaires. 1 Structure Le rseau ART1 est form d'une couche d'entre qui est aussi la couche de sortie et d'une couche cache. Le terme de couche cache est emprunt au rseau multicouche, il souligne le fait que cette couche n'est pas directement observable par l'utilisateur la diffrence de l'entre ou de la sortie. Il n'y a pas de connexion entre les neurones d'entres. Par contre, la couche cache est une couche d'activation comptitive, tous les neurones sont relis les uns aux autres par des connexions inhibitrices de poids fixes. Chaque neurone de la couche d'entre est reli tous les neurones de la couche cache et, rciproquement, chaque neurone de la couche cache est reli tous les neurones de la couche de sortie. A chaque connexion est associ un poids. Couche cache activation comptitive

S Couche d'entre et de sortie

Figure 1. Architecture du rseau ART 1. La couche d'entre est aussi celle de sortie. Tous les neurones de la couche d'entre sont relis tous les neurones de la couche cache et tous les neurones de la couche cache chacun de ceux de la couche de sortie. Il n'y a pas de relation entre les neurones d'entre alors que la couche cache est activation comptitive. 2 Fonctionnement / Apprentissage 59

La figure 2 montre un vecteur d'entre E soumis au rseau. A cette entre correspond, aprs comptition entre les neurones de la couche cache, un unique neurone j gagnant. Ce gagnant est considr par le rseau comme le plus reprsentatif du vecteur d'entre E. Le neurone j gnre en retour sur la couche de sortie un vecteur S binaire (seuillage). S est ensuite compar au vecteur d'entre E. Si la diffrence est infrieure un seuil fix pour le rseau, le neurone gagnant est considr comme reprsentant de la classe du vecteur d'entre. Dans ce cas, la modification des poids des connexions du neurone gagnant a pour effet de consolider ses liens d'activation avec l'entre E ; en fait l'adquation entre ce vecteur d'entre et cette classe est amliore. Dans le cas contraire, le processus reprend avec les neurones de la couche cache moins le neurone gagnant de l'tape prcdente. Si tous les neurones cachs sont passs en revue sans qu'aucun ne corresponde E, un nouveau neurone cach est ajout, qui est initialis comme reprsentant de la classe du vecteur d'entre E. j j

0 a

0 b

0 c

0 d

Figure 2. Fonctionnement du rseau ART1. a) Prsentation du vecteur d'entre E, un neurone gagnant j est slectionn. 60

b) Tentative d'unification entre S (retour du neurone j) et E. c) Echec : suppression du neurone gagnant, prsentation de E. d) Unification : le neurone i est un reprsentant de la classe du vecteur d'entre E. 3 Algorithme Ici, l'apprentissage consiste tout autant dans la dtermination des poids que de la valeur du seuil d'unification . 1/Initialisation des poids alatoirement entre 0 et 1 et choix d'un seuil d'unification . 2/Prsentation d'un vecteur d'entre El appartenant la base d'apprentissage 3/Calcul du neurone gagnant sur la couche cache Nj. 4/Gnration en retour d'un vecteur de sortie Sj issu de ce seul neurone Nj. S j a t seuill afin de le rendre binaire. 5/Tentative d'unification entre Sj et El. Soit |S| est la norme de Sj gale au nombre de composantes 1, par exemple |(1, 0, 1, 1)| = 3. Si |Sj| / |El| , l'unification est ralise. Il faut modifier les poids : tape 7. 6/Sinon |Sj| / |El| < , le neurone gagnant Nj est inhib. S'il y a encore des neurones non inihibs sur la couche cache alors retour l'tape 3. Sinon un nouveau neurone cache est cr, initialis comme reprsentant de la classe correspondant la forme d'entre El en utilisant la loi de modification des poids de l'tape 7. 7/Modification des poids Couche des poids montants : h neurone de la couche d'entre, j neurone gagnant de la couche cache. wjh = 1 / |Sj| si le neurone h est actif (valeur 1), wjh = 0 sinon (valeur 0). Couche des poids descendants: j neurone gagnant de la couche cache, k neurone de la couche de sortie. wkj = 1 si le neurone k est actif, wkj = 0 sinon. Retour l'tape 2. 8/Quand le passage de tous les exemples de la base d'apprentissage n'occasionne plus aucun ajout de neurone, il faut mesurer les performances : controler le nombre et la qualit des classes construites. Si le nombre est trop faible, retour l'tape 1 avec une augmentation de la valeur de . Si ce nombre est trop lev, retour l'tape 1 en diminuant la valeur de . La valeur du seuil controle le degr d'unification recherch entre les formes classer et les prototypes des classes. Plus la valeur du seuil est grande, meilleure est l'adquation recherche. La valeur du seuil doit tre choisie entre 0 et 1. Le neurone i est rattach une classe dont le prototype gnrique priori ne correspond prcisment aucune des formes de la base

61

d'apprentissage. L'unification est ralise lorsque le nombre d'entres 1 est comparable avec le nombre de retours 1 (coactivation statistique). 4 Rsultats Un exemple de coalescence de donnes issues d'une distribution parabolique est ralis. Les coordonnes d'un ensemble de point pris sur la parabole sont soumis en donnes d'entre au rseau ART1 (fig. 2a). Aprs quelques itrations de l'ensemble de la base d'exemple, les classes construites par le rseau sont prsentes sur la figure 2b. Ici quatre classes correspondants aux lettres a, b, c et d sont reprsentes, la valeur du seuil de vigilance est de 0.7. Plus la valeur de seuil est proche de 1, plus le nombre de classes cres est grand et rciproquement.

x x xx x x x x x x x x x x

x x x x

a a aa a a b b b c c b c c c

d d d

Figure 3. Exemple de traitement ralis par le rseau ART1 a) Base d'apprentissage (points extraits sur une parabole). b) Coalescence ralise avec un seuil = 0.7 (4 classes). Les applications majeures du rseau ART ont t ralis en reconnaissance de la parole, reconnaissance des formes visuelles, en dtection d'image radar ainsi qu'en classification et en coalescence. 5 Conclusion Le rseau ART1 a une architecture en deux couches qui intragissent entre elles. Le rseau se distingue aussi par deux caractristiques: sa flxibillit et sa stabilit pour des entres arbitraires. Il est capable de s'adapter des entres non familires en construisant de nouvelles catgories ou classes ( flxibilit, plasticit) mais aussi d'adapter les classes dja apprises tout en dgradant peu les informations dja mmorises (stabilit). Le problme pos par ces deux notions antagonistes (flxibilit-stabilit) est rsolu par le principe de l'architecture volutive.

62

8 Apprentissage par pnalit rcompense (renforcement)

1 Apprentissage Cet algorithme d'apprentissage par renforcement est de type qualitatif par opposition aux apprentissages dits supervis ou non supervis. Il n'est pas ncessaire de disposer pour les exemples d'apprentissage des sorties dsires, seulement d'une apprciation "globale" du comportement du rseau pour chacun des exemples traits. Cet algorithme s'applique toutes structures de rseaux. La seule condition est de disposer de neurones de sortie stochastiques (binaires). La rponse du rseau de neurones est ainsi fonction des entres et, aussi, des neurones de sortie. On introduit donc ce niveau une part d'alatoire dans le comportement du systme. Si la rponse fournie par le systme est considre comme bonne, l'algorithme tend favoriser l'apparition de ce comportement en rduisant l'alatoire. Dans le cas ou la rponse du systme globale est considre comme mauvaise, on cherche viter l'apparition ultrieure de ce comportement. Ce processus est itr jusqu' l'obtention du comportement dsir pour l'ensemble du systme (cf annexe). 2 Algorithme 1/ Les poids sont initialiss de petites valeurs alatoires qui placent les probabilits des neurones de sortie autour de 0.5. 2/ Une entre El = (e1, ...e n) est prsente, 3/ Une sortie correspondante possible xi est calcule pour chaque neurone, 4/ La sortie globale produite est analyse de faon gnrer un signal de retour r, positif ou ngatif, et une sortie cible (dsire) est choisie : di = xi si r = +1 (rcompense) di = -xi si r = -1 (pnalit) 5/ La modification des poids est ralise par la classique mthode du gradient : wij = . r . erreur i . x j En gnral, dpend de r et est pris 10 100 fois plus grand ( +) pour r = +1 que pour r = -1 ( -). 6/ Tant que la sortie du rseau n'a pas produit une squence satisfaisante suffisamment longue, retour 2. 3 Application l'animation comportementale A partir des donnes biologiques sur la connectique nerveuse des insectes, cet algorithme d'apprentissage simule l'apprentissage de la marche. Chez la plupart des insectes, six pattes permettent la locomotion. On ne connait pas compltement les circuits neuronaux impliqus, cependant les travaux histologiques ont montr que chaque patte est dot de son propre 63

gnrateur de mouvement et que celui-ci est reli par des connexions intra et intersegments. On postule souvent l'existence d'un gnrateur central de formes locomotrices. Ce superviseur dfinirai le comportement de chaque patte. Notons que rien ne soutient cette hypothse au niveau histologique. Les rseaux de neurones artificiels permettent de montrer qu'un gnrateur central de formes locomotrices n'est pas ncessaire, son rle peut tre tenu par l'algorithme d'apprentissage. L'espace d'entre est celui des configurations actuelles de pattes, l'espace de sortie celui des mouvements raliser par chaque patte. Les exemples d'apprentissage sont construits au fur et mesure. Structure du rseau : Le systme se compose des six circuits neuronaux des six pattes, sans superviseur. La structure du systme est montre fig. 1. Informations sensorielles (Chute ou Avance)

Informations motrices (nouvelle position)

Informations sensorielles (Chute ou Avance) Figure 1. Le systme de locomotion est compos de six rseaux neuronaux compltement interconnects, sans gnrateur central d'activit. Chaque rseau reoit des informations sensorielles (chute ou avance) et des informations sur la position actuelle des pattes qui lui permettent de gnrer le prochain mouvement de la patte. Fonctionnement : Les entres du systme sont les informations sensorielles relatives la position des pattes. Sur la base de ces entres, le systme gnre une nouvelle position des pattes. Ainsi, chaque patte a la possibilit de rester inactive, d'avancer ou de reculer. Seule l'action de recul est motrice. L'effet sur l'environnement peut tre de trois types : aucun dplacement, avance ou chute. A partir de cette information, l'apprentissage permet d'duquer chacun des rseaux pour dcouvrir une marche. En fait, l'algorithme d'apprentissage explore de manire alatoire l'espace des mouvements des six pattes. Chaque avance dans la "bonne" direction est encourage et on s'loigne des tats conduisants la chute. Il existe 10 marches possibles deux temps. A l'issue de l'apprentissage, toutes les marches possibles sont 64

dcouvertes (fig.2). Il suffit gnralement de moins d'une centaine d'itrations pour trouver une marche.

Figure 2. Une marche en deux temps.

65

9Rseaux multicouches
Apparus en 1985, les rseaux multicouches sont aujourd'hui les modles les plus employs. Plusieurs couches de traitement leurs permettent de raliser des associations non linaires entre l'entre et la sortie. Ils sont ainsi capables de rsoudre le cas du "ou exclusif" (cf Perceptron). On sait depuis les annes soixantes que les possibilits de traitement des rseaux multicouches sont suprieures celle du Perceptron, cependant l'algorithme d'apprentissage manquait. Pour la couche de sortie, on peut appliqu l'apprentissage du Perceptron, mais comment modifier les poids pour les connexions qui ne sont pas en relation avec un neurone de sortie ? Le problme est ramn l'obtention d'une estimation de la valeur dsire pour chaque neurone de la couche cache. La rtropropagation de gradient est une solution ce problme. Cet algorithme a t propos indpendamment par trois quipes en 1985, dont Y. le Cun. Des recherches bibliographiques ont montr qu'il s'agit en fait d'une redcouverte. Concluons que le Faire-savoir est aussi important que le Savoir dans le domaine scientifique. Le principe utilis par la rtropropagation ("backpropagation" en anglais) de gradient est la minimisation d'une fonction dpendante de l'erreur. Il s'agit d'une mthode gnrale, largement employe dans d'autres domaines tels que la physique. Une perception intuitive de cet algorithme consiste considrer l'apprentissage comme la recherche sur la surface de cot de la position de cot minimal. A chaque configuration de poids correspond un cot. Le gradient est une estimation locale de la pente de la surface. La minimisation du gradient permet de parcourir cette surface orthogonalement aux courbes de niveau d'un pas fix. Les problmes rencontrs durant l'apprentissage rsultent des zones trs plates et des minima locaux.

Minimum local Minimum global

Figure 1. Recherche de la zone de cot minimal dans l'espace de configuration des poids du rseau (ramener ici en deux dimensions) pour les exemples de la base d'apprentissage. Les courbes de niveaux sont en trait fin. 66

1 Structure / Fontionnement Les neurones sont continus. La fonction de transfert est une sigmode (cf chp 3) qui peut tre dfinie, par exemple, par l'quation : f (ai) = (eai - 1) / (eai + 1) o spcifie la pente de la sigmode. L'architecture d'un rseau multicouche et son fonctionnement en phase d'utilisation ont t prsent au chp. 3. 2 Apprentissage L'apprentissage est supervis : on associe une configuration d'entre une configuration de sortie. L'algorithme de la rtropropagation est un algorithme de gradient itratif conu pour minimiser un critre quadratique (" la puissance 2") d'erreur entre la sortie obtenue d'un rseau multicouche et la sortie dsire. Cette minimisation est ralise par une configuration des poids adquate. L'erreur (e) est la diffrence entre la valeur dsire (d) pour le neurone de sortie et sa valeur calcule par propagation (x). Ce signal d'erreur permet de dfinir une fonction de cot : C(W) = M [Cl(W)] = M [ j e lj 2(W)] avec e lj = (dlj - xlj ) o, j indique un numro d'indice pour les neurones de sortie et l indique un exemple d'apprentissage. M est l'oprateur de moyennage, c'est une estimation de la moyenne temporelle dans le cas stochastique. On ralise donc la moyenne des erreurs obtenues pour chacun des exemples de la base d'apprentissage. Cet algorithme ncessite une fonction continue, non-linaire et diffrentiable comme fonction de transfert du neurone. 1/ Initialisation des poids des valeurs alatoires de faible grandeur; 2/ Slection d'un exemple d'apprentissage (E, d)l dans la base d 'apprentissage 3/ Prsentation de la forme d'entre (E) sur la couche d'entre du rseau; 4/ Calcul par propagation de la sortie obtenue (o); 5/ Si erreur en sortie alors pour tous les neurones i (depuis la sortie jusqu' l'entre) Si i est un neurone de sortie alors yi = 2 f '(ai).(di - xi) ; Si i est un neurone cach (ou d'entre) alors yi = f '(ai). k(wki.y k) ; (k : neurones compris entre la couche actuelle et la couche de sortie) 6/ Application de la procdure de gradient. est un gain fix par l'utilisateur. wij (t+1) = w ij (t) + .y i .x j ; 7/ Tant que l'erreur est trop importante, retour l'tape 2 (exemple suivant).

67

L'algorithme de la rtropropagation de gradient, bien que trs simple implanter, ncessite un certain savoir-faire pour une utilisation efficace. En effet, la convergence de l'algorithme n'est pas prouve et de multiples variables sont ajuster prcisment en fonction du problme trait. Parmi ces variables fixer, citons par exemple : les paramtres apparaissants dans les diffrentes quations (gain de la procdure de gradient (), pente de la fonction sigmode (), ..), la slection des exemples pour l'apprentissage et le test, l'ordre de prsentation et les distributions relatives des exemples dans la base d'apprentissage, le choix du codage des informations en entre et en sortie, la structure du rseau (prsence ventuelle de connexions directes de la couche d'entre sur la couche de sortie pour traiter ce niveau la partie linaire du problme, limitation pratique du nombre de couches, taille de la couche cache), la configuration initiale des poids, le nombre d'itrations d'apprentissage, ... 3 Rsultats L'application la plus connue est le logiciel NETtalk (fig. 2). Un rseau de neurones multicouche apprend prononcer du texte en anglais. Un exemple d'apprentissage est constitu d'une chaine de caractres et de sa transcription phontique. Texte anglais I c o u l

Prononciation de la lettre

/k/

Figure 2. NETtalk : 309 neurones (3 couches) et 10629 poids (80 cellules caches). Aprs 12 h d'apprentissage, la performance est de 95% sur le texte d'apprentissage (1000 mots) et 90% sur du texte nouveau (mots nouveaux). On a connect en sortie un synthtiseur de paroles, le texte est comprhensible. De plus, il semble que durant l'apprentissage, NETtalk se comporte de la mme manire qu'un enfant apprenant lire (mme type de fautes, ...).

4 TP Implication floue calcule par rseau multicouche 1/ Introduction 68

Nous avons dlibrment choisi de coupler connexionnisme et intelligence artificielle, domaines parfois considrs comme concurrents, prouvant ainsi qu'ils ne s'excluent pas. L'exprimentation mene est un exemple typique de systme hybride employant au mieux les avantages des deux domaines. L'objectif est de fournir des systmes experts plus spcifiques du domaine d'application et donc plus performants. Dans les systmes rgles de production floues actuels, la propagation de coefficients d'incertitude est faite par le truchement de formules de calcul issues de modles mathmatiques du raisonnement incertain. Mais l'utilisation d'une formule fournie par un modle abstrait gnral, ne dpendant donc pas intimement de l'application, peut conduire un traitement de l'incertain ne refltant pas le raisonnement flou de l'expert humain. L'approche connexionniste propose rsout ce problme de l'infrence floue, la rgle de propagation de l'incertitude spcifique du domaine d'application tant dtermine par apprentissage partir d'exemples d'infrences. Dans un systme base de rgles, la base de connaissances est compose de deux parties : la base de rgles et la base de faits. La base de rgles contient des connaissances exprimes sous la forme : Si <condition> Alors <action>. Le moteur d'infrences est un programme charg d'exploiter les rgles et les faits. Pour schmatiser, on peut dire qu'il consiste slectionner, puis appliquer, les rgles dont la partie gauche concorde avec les faits tablis. En gnral, dans ce type de systme les rgles sont assimilables des implications logiques entre propositions ou prdicats. Ainsi le raisonnement est lui-mme assimilable une suite de dductions logiques. Dans certaines applications, il est ncessaire de traiter des connaissances incertaines, imprcises ou incompltes : on parle alors de raisonnement flou (ou, plus prcisment, de raisonnement non-exact). Dans le cadre des systmes experts, la notion de flou est gnralement modlise par l'introduction des coefficients d'incertitude pris dans l'intervalle rel [0,1]. 0 signifie certainement faux, 1 signifie certainement vrai et les valeurs intermdiaires signifient plus ou moins vrai (et plus ou moins faux). Ces coefficients d'incertitude sont associes la fois aux faits tablis et aux rgles. On dispose donc d'une pondration des faits, et d'une pondration de la dduction elle-mme. 2/ Infrence floue La manipulation de rgles et de faits flous entrane plusieurs problmes pratiques dont l'infrence floue (propagation des coefficients d'incertitude) : Comment combiner le coefficient d'incertitude d'une rgle et celui de sa prmisse pour dterminer le coefficient d'incertitude de sa conclusion ? Par exemple, soit la rgle "S'il y a des nuages alors il va pleuvoir", qui est vrai dans 80% des cas (valeur 0.8). Le temps aujourd'hui est relativement nuageux ( 60%, soit valeur 0.6). Quelle est la probabilit de pluie ? 69

De manire plus formelle, le problme de la propagation des coefficients d'incertitude (infrence floue) revient dterminer une fonction g telle que : CI(Q) = g (CI(P), CI(P->Q)) pour toute rgle P->Q du systme,

avec : CI(P->Q) = coefficient d'incertitude de la rgle P->Q, CI(P) = coefficient d'incertitude avec laquelle la condition P a t tablie CI(Q) = coefficient d'incertitude de la conclusion Q, dterminer. Dans les systmes experts actuels, la fonction g est ralise l'aide d'une rgle de calcul obtenue partir d'un modle mathmatique d'implication floue (par exemple, l'infrence floue de Lee) ou construite par le cognicien (par exemple, dans le cas de MYCIN). L'inconvnient est qu'il est difficile de garantir que le mcanisme utilis reflte le raisonnement de l'expert. En effet, il n'existe pas de modles mathmatiques dont on serait certain qu'il traduise parfaitement la problmatique du raisonnement flou humain. De plus, un modle mathmatique gnral est a priori indpendant de l'application et du domaine d'expertise, ce qui ne parait pas tre conforme la ralit. L'analyse des formules utilises montre avec certitude qu'elles comportent une bonne part d'arbitraire. Cette remarque reste valable en ce qui concerne les formules construites par le cogniticien (cf. par exemple la formule utilise dans MYCIN). 3/ Infrence floue connexionniste Nous proposons l'utilisation d'un rseau de neurones pour approximer l'implication floue partir d'exemples d'infrence floue. Si g est la fonction tablisant la correspondance entre les CI des prmisses et celui de la rgle avec le CI de la conclusion. Les exemples d'apprentissage soumettre au rseau seront des vecteurs de la forme : (e1,e2...en,en+1,d) avec d = g (e1,e2...en,en+1). Les valeurs (e1,e2...en) sont celles des CI des prmisses. La valeur en+1 est celle du CI de la rgle, d est la valeur du CI de la conclusion. L'apprentissage permet d'adapter la fonction f ralise par le rseau de neurones au comportement dcrit par des exemples d'apprentissage. On peut considrer que le rseau a parfaitement appris lorsque la fonction f est quivalente la fonction g. La figure 2 montre de faon schmatique comment oprer l'apprentissage du rseau. e1 e2 ... en+1 Base d'exemples ((e1, e2, ..., en+1), d) avec d=g(e1, e2, ..., en+1)

Figure 2. Apprentissage de l'infrence floue par un rseau multicouche, 70

les exemples sont de la forme (prmisses, conclusion) 4 Infrence floue de Lee L'infrence floue de Lee est un exemple de modle mathmatique de l'infrence floue. Elle est exprime par la rgle de calcul suivante : [0, CI(P->Q)] CI(P->Q) si CI(P->Q) > 1- CI(P) si CI(P->Q) < 1- CI(P) si CI(P->Q) = 1- CI(P)

CI(Q) =

Pour la ralisation pratique, rduisons la taille du problme en choisissant des valeurs dcimales (p = 0.1) pour les CI et une seule prmisse (n = 1) pour les rgles. La table 1 donne le coefficient d'incertitude de la conclusion CI(Q) calcul partir des coefficients d'incertitude de la condition CI(P) et de la rgle CI(P->Q) (pour simpifier le codage on a remplac l'intervalle [0, CI(P->Q)] par la seule valeur CI(P->Q)).

CI(Q) 0 0 .1 .2 .3 .4 CI(P) .5 .6 .7 .8 .9 1 .1 .2 .3

CI(P->Q) .4 .5 .6 .7 .8 .9 .9 .9 .9 .9 .9 .9 .9 .9 .9 .9 1 1 1 1 1 1 1 1 1 1 1 1

.3 .3 .3 .3 .4 .4 .4 .4 .4 .5 .5 .5 .5 .5 .5 .6 .6 .6 .6 .6 .6 .6

.1 .1

.2 .2 .2

.7 .7 .7 .7 .7 .7 .7 .7

.8 .8 .8 .8 .8 .8 .8 .8 .8

Table 1. Table de l'infrence floue de Lee Questions : Construction heuristique du rseau L'utilisation d'un rseau de neurones pour une application particulire ne se fait pas aussi facilement que ce que l'on pourrait le croire. En effet, il n'existe aujourd'hui aucune rgle ou formule qui permette de slectionner au mieux les nombreux paramtres d'un rseau : 1/ Codage des entres et des sorties,

71

2/ Architecture du rseau en nombre de neurones et nombre de couches caches, voir modle de rseau, 3/ Slection des bases d'exemples d'apprentissage et de test ... 1/ Codage des coefficients d'incertitude Les cellules de la couche d'entre codent le CI de la prmisse et celui de la rgle. La sortie est le CI de la conclusion. Il existe de nombreux codages possibles pour les CI sur la couche d'entre du rseau (fig. 2). 0 1 2 3 4 5 6 7 8 9

Codage 1 parmi n

Codage de type thermomtre

Codage de type interpolation Figure 2. Diffrents codages possibles pour la valeur 7. Il y a 10 neurone d'entres, leur valeur d'activation est fonction de la couleur depuis 0 (blanc ) 1 (noir). Question : Quel est le codage qui vous apparait le plus adapt et pourquoi ? Proposez votre propre codage. Rponse : Le codage de type thermomtre pour les valeurs de [0, 1]. Ce codage minimise la distance de Hamming entre deux valeurs voisines. Par exemple, le codage de 0.2 et 0.3 ne diffrent que par la valeur de la troisime cellule en partant de la gauche. On choisi un code loign au sens de la distance de Hamming pour . Ce codage est montr par la table 2. CI 0 .1 .2 .3 .4 ... .9 1 Codage 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

1 1 1 1 1

1 1 1 1 1

1 1 1 1 1

1 1 1 1 1 1 1 1 1 -1 1 1 1 -1 -1 1 1 -1 -1 -1 1 -1 -1 -1 -1

1 1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 72

-1 1 1 1 1 1 1 1 1 1 1 1

Table 2. Codage des coefficients d'incertitude Les erreurs ralises par le rseau dans le cas de l'implication floue de Lee, ne sont pas arbitraires. Elles se produisent principalement dans ce que nous avons dnomm la zone frontire montre la table 4. b 0 0 .1 .2 .3 .4 a .5 .6 .7 .8 .9 1 .1 .2 .3 .4 c .5 .6 .7 .8 .9 .9 .9 .9 .9 .9 .9 .9 .9 .9 .9 1 1 1 1 1 1 1 1 1 1 1 1

.3 .3 .3 .3 .4 .4 .4 .4 .4 .5 .5 .5 .5 .5 .5 .6 .6 .6 .6 .6 .6 .6

.1 .1

.2 .2 .2

.7 .7 .7 .7 .7 .7 .7 .7

.8 .8 .8 .8 .8 .8 .8 .8 .8

Table 4. Zone frontire de la table de l'infrence floue de Lee. On remarque qu'il est possible de rduire les erreurs en choisissant les exemples d'apprentissage dans cette zone frontire. Cette zone ne bnficie pas de l'avantage li au codage des valeurs des CI, qui a tendance minorer les erreurs. 2/ Architecture Question : Le nombre de couches caches n'est pas fix a priori. Les rsultats thoriques imposent une couche cache, cependant il est parfois plus pratique d'obtenir une solution avec des rseaux dots de deux, voir trois couches caches. D'autre part, si le nombre de neurones des couches d'entre et de sortie est dfini par le codage adopt, il n'en est pas de mme du nombre de neurones sur les couches caches. Recherchez une bonne configuration du rseau. Rponse : Le rseau slectionn la suite d'un processus plus ou moins intuitif associ une exprimentation exhaustive est compos de 66 neurones, 1080 synapses rpartis en trois couches. La couche d'entre contient 24 neurones, la couche de sortie 12 neurones et la couche cache 30 neurones.

73

3/ Bases d'exemples Le rseau est entrain partir d'un ensemble d'exemples qui lui est prsent de manire rpte. Un exemple d'apprentissage est un couple, CI des prmisses et de la rgle d'une part, et d'autre part, le CI de la conclusion. Question : Comment rpartissez-vous les 121 exemples entre la base d'apprentissage et la base de test. Rponse : Les exemples d'apprentissage ont t slectionns au hasard parmi les 121 possibles selon une densit de probabilit fixe. La table 3 montre un ensemble d'apprentissage et son ensemble de test associ.
CI(Q) 0 0 .1 .2 .3 .4 CI(P) .5 .6 .7 .8 .9 1 .1 .2 .3 CI(P->Q) .4 .5

.6

.7

.8

.9 .9 .9 .9 .9 .9 .9 .9 .9 .9 .9

1 1 1 1 1 1 1 1 1 1 1 1

.3 .3 .3 .3 .4 .4 .4 .4 .4 .5 .5 .5 .5 .5 .5

.1 .1

.2 .2 .2

.6 .6 .6 .6 .6 .6 .6

.7 .7 .7 .7 .7 .7 .7 .7

.8 .8 .8 .8 .8 .8 .8 .8 .8

: Exemple appris (52),

: Exemple de test (69)

Table 3. Bases d'exemples d'apprentissage et de test Question : Dessinez les courbes des performances de l'apprentissage en fonction du nombre d'itrations d'apprentissage et de la taille de la base d'apprentissage. Rponse : On constate qu'aprs 25 itrations d'aprentissage, un minimum pour la valeur de l'erreur a t obtenu : tous les exemples d'apprentissage produisent la sortie correcte. A l'issu de l'apprentissage, les 81 exemples inconnus de la base de test sont prsents au rseau au cours de la phase de test de faon mesurer le degr de gnralisation. La figure 3 montre la performance de gnralisation du rseau en fonction du nombre d'exemples d'apprentissage.

74

Performance 100% 90%

70% 36 52 64 121 Nombre d'exemples d'apprentissage

Figure 3. Impact du nombre d'exemples d'apprentissage sur la performance en utilisation On constate que pour un apprentissage partir de 40 exemples les performances de la gnralisation sont de 72%. De plus, si l'on autorise une erreur d'une valeur absolue gale 0.1 sur la rponse du rseau, alors les performances de la gnralisation par le rseau atteignent 100%. Performances en fonction du nombre d'itrations : l'ensemble d'apprentissage est constitu de 40 exemples (figure 4) et la base de test est constitue des 81 exemples restants. Performance 100%

50

125

Nombre d'itrations

Figure 4. Impact du nombre d'itrations d'apprentissage sur la performance en utilisation. On constate qu'aprs 40 itrations, les performances de la gnralisation sont de 100%. Si on considre comme bonne une rponse correspondant une erreur mesure nulle, alors les performances sont de 72%. 5/ Infrence floue employe dans MYCIN

75

Second exemple illustratif des capacits connexionnistes, retrouver partir d'exemples la formule utilise dans le clbre systme MYCIN pour la propagation des coefficients d'incertitude. Cette implication floue est dcrite comme suit : Soit R = F1 & F2 ... & Fn -> F une rgle de coefficient CI(R), on dfinit alors le coefficient associ F par : CI(F) = CI(R) x v avec : w + CIp(F) - w x CIp(F) si w 0 et CIp(F)0 v = w + CIp(F) + w x CIp(F) si w 0 et CIp(F)0 (w + CIp(F))/1-MIN(w,CIp(F)) si -1< w x CIp(F) <0 1 sinon MAX(CI(F1), ... CI(Fn)) w = MIN(CI(F1), ... CI(Fn)) 0 sinon CIp(F) = Coeff. prcdent de F 0 si CI(Fi) -0.2 " i si CI(Fi) +0.2 " i

si F dj dduit sinon

Faisons observer que dans cette formule : - le calcul de w cherche raliser le MIN en valeurs absolues des CI des prmisses (s'il s'agit de valeurs de mme signe et suprieures un seuil = 0.2) - le calcul de v cherche ventuellement "renforcer" le CI d'un fait F provenant de plusieurs rgles. - le coefficient associ la conclusion est en fin de compte quelque chose comme : CI(R) x MIN (CI(Fi)). En ce qui concerne l'apprentissage de la formule, nous allons nous limiter (pour des raisons de clart) au cas suivant : - Les rgles admettent au plus 2 prmisses : n 2. - Les conclusions sont infres pour la premire fois : CIp(F) = 0. Avec ces restrictions, on a : CI(F) = CI(R) x v MAX(CI(F1) , CI(F2)) v = w = MIN(CI(F1) , CI(F2)) 0 Questions : Construction heuristique du rseau 76 si CI(F1) -0.2 et CI(F2) -0.2 si CI(F1) +0.2 et CI(F2) +0.2 sinon

L'utilisation d'un rseau de neurones pour une application particulire ne se fait pas aussi facilement que ce que l'on pourrait le croire. En effet, il n'existe aujourd'hui aucune rgle ou formule qui permette de slectionner au mieux les nombreux paramtres d'un rseau : 1/ Codage des entres et des sorties, 2/ Architecture du rseau en nombre de neurones et nombre de couches caches, voir modle de rseau, 3/ Slection des bases d'exemples d'apprentissage et de test ... Rponses Architecture : le rseau employ comprend 69 neurones et 1100 synapses. Il y a 33 cellules d'entre, 25 cellules pour la couche cache et 11 cellules de sortie. Codage des CI : les CI sont choisies parmi l'une des 11 valeurs de l'ensemble {-1, -0.6, -0.3, 0.2, -0.1, 0, 0.1, 0.2, 0.3, 0.6, 1} (la valeur du pas est variable). Le codage sur les couches d'entre et de sortie reprend celui de la table 3. Base d'exemple d'apprentissage et de test : il existe 1331 exemples de comportement de la rgle d'implication "floue" de Mycin. Comme prcdemment, la rpartition des exemples entre la base d'apprentissage a t tablie de manire alatoire. La figure 5 montre les performances de l'apprentissage par rapport au nombre d'exemples appris. Performance 100% 97% 94%

266 532 665 798 1054 1331 Nombre d'exemples d'apprentissage Figure 5. Impact du nombre d'exemples d'apprentissage sur la performance en utilisation dans le cas de l'infrence floue de MYCIN. 665 exemples d'apprentissage sont suffisants pour que les performances du rseau atteignent 100%.

77

Performances en fonction du nombre d'itrations : l'ensemble d'apprentissage est constitu de tous les exemples (figure 6). Performance 100%

10

30

Nombre d'itrations

Figure 6. Impact du nombre d'itrations d'apprentissage sur la performance en utilisation pour l'apprentissage de l'implication floue de Mycin. On constate qu' partir de 15 itrations d'apprentissage, les performances de la gnralisation sont de 100%. Dans le cas d'une mesure erreur nulle, les performances sont de 84%. Discussion Les performances ont t prsent en fonction du nombre d'exemples d'apprentissage. Ceci dans le but d'illustrer les proprits de gnralisation du rseau. Nous sommes la recherche de la densit d'exemples d'apprentissage minima permettant d'obtenir une bonne gnralisation. Cette valeur est videmment trs dpendante de la nature mme de la fonction dcrite par les exemples (implication floue de Lee ou de MYCIN). En fonction du nombre d'itrations, on remarque que la performance en reconnaissance dcroit au del d'une certaine valeur limite. Cela est du l'apparition du phnomne d'apprentissage par coeur de la base d'apprentissage avec impossibilit de gnraliser sur la base de test. Question : Seul le cas de rgle une ou deux prmisses a t trait ici. 1) Quels sont les problmes pratiques impliqus par la gnralisation aux cas de rgles multi-prmisses ? 2) Quelles solutions proposez-vous ? 3) Dans quels cas ? Rponse : 1) -Le nombre de neurones croit avec le nombre de prmisses. -La taille de la base d'exemples augmente en fonction du nombre de prmisses et de la prcision choisie (nombre de valeurs discrtes disponibles pour coder les CI). -L'augmention de la prcision se traduit aussi par une augmentation du nombre de neurones ( peu prs linaire). 78

2) De fait, la mise en oeuvre pratique au sein d'un systme rel de notre module connexionniste de propagation de l'incertitude se heurte au problme pos par le nombre, variable, de prmisses des rgles. Mme en acceptant de fixer a priori une borne suprieure au nombre de prmisses, comment faut-il traiter des rgles comportant un nombre variables de prmises ? Une solution coteuse en nombre de neurones consiste construire un rseau correspondant chaque cas. 3) La solution propose peut tre envisage dans deux cas : - Si le cogniticien (+ ventuellement l'expert) est capable de trouver par ttonnements la formule de propagation de l'incertitude (comme on peut le supposer par exemple dans le cas du systme MYCIN) : on peut alors envisager de dterminer une formule assez proche par apprentissage et dgager le cogniticien de ce problme. - Si le cogniticien (+ ventuellement l'expert) est incapable de trouver une telle formule : on peut alors essayer de la construire par apprentissage partir d'exemples que l'expert sait formuler.

79

10 Connexionnisme et applications
Les domaines d'application sont ceux de de la reconnaissance de formes, du traitement du signal, du diagnostic, ... En fait, est considre comme ligible toute application qui se reprsente sous la forme d'une fonction ralisant une mise en correspondance de deux espaces, pour peu que l'on dispose d'exemples reprsentatifs et en quantit suffisante du comportement de cette fonction. Cependant, dterminer une application potentielle n'est pas tout, il faut aussi spcifier le meilleur modle de rseau suceptible de rsoudre le problme et ses nombreux paramtres. Remarquons que jusqu'en 1985, date laquelle la rtropropagation de gradient s'est rpandue, les fonctions ralisables par les rseaux taient limites aux fonctions linaires. Cet algorithme d'apprentissage pour rseaux multicouches a permi d'aborder les problmes nonlinaires (thorme de Hecht-Nielsen en annexe) dont l'exemple le plus reprsentatif est le ouexclusif. La Darpa recense un certain nombre d'applications dmonstratives ralises avec ce modle. 1 Systme de mise en correspondance Les rseaux de neurones sont des systmes apprenant raliser des fonctions de mise en correspondance entre deux espaces. Par exemple, Y. le Cun a propos l'application des techniques connexionnistes un problme de diagnostic mdical en cas d'urgence. Dans ce cas, le rseau met en correspondance l'espace de dpart constitu des symptmes avec l'espace d'arrive compos des diagnostics possibles. La fonction associant les symptmes avec les diagnostics est apprise par le rseau partir d'un ensemble de cas rels (fig.1).

80

Symptmes

Systme de mise en correspondance

Diagnostic

Spcifications : modle de rseau, nombre de neurones, nombre de couches, algorithme d'apprentissage, paramtres du rseau, bases d'exemples d'apprentissage, ...
Figure 1. Application un problme de diagnostic mdical Le terme "application" doit cependant tre pris avec prcaution. En effet, il faut distinguer entre les "applications candidates" qui sont en principe soluble par la technique connexionniste, les applications en cours de dveloppement dont la faisabilit a t dmontr sur un cas simplifi et les "applications prouves", peu nombreuses. Raliser une application, c'est d'abord exprimer le problme sous la forme d'une mise en correspondance de deux espaces, puis construire une base d'apprentissage reprsentative des donnes et enfin choisir, en se rfrant son exprience, le modle de rseau et ses paramtres. Il faut aussi pralablement dfinir les critres de mesure des performances (construction de la base de test), les prtraitements et le codage sur le rseau. 81

2 Exemple du diagnostic des douleurs abdominales Expression du problme : Mise en correspondance de l'espace des symptmes avec celui des diagnostics partir d'exemples de diagnostics raliss par un expert humain (fig. 1). Modle : La base d'exemples est constitue de 5765 malades admis aux urgences. Chaque cas est dcrit par 132 symptmes qualitatifs (par exemple le sexe) ou semi-quantitatifs (par exemple l'age), assortis l'un des 22 diagnostics possibles. Environ 80% des symptmes seulement sont connus pour chacun des malades. On choisi de conserver 1740 cas pour le test (30%) tandis que 4027 cas (70%) sont utiliss pour l'apprentissage. A priori, la relation entre ces deux espaces est complexe (en particulier non linaire) ce qui implique l'utilisation d'un rseau multicouche (ou de plusieurs rseaux multicouches). En fonction du codage utilis pour reprsenter les entres et les sorties, le rseau se compose d'une seule couche cache de 62 neurones, de 316 entres et 22 cellules de sortie. Il y a donc 3380 poids et 400 neurones. Les connexions intercouches ne sont pas compltes. Performance : Aprs application de la procdure de rtro-propopagation de gradient, les performances mesures sur la base d'apprentissage sont de 75% et sur la base de test de 71% (seulement). Il faut relativiser ces performances en ce sens qu'un praticien en situation d'urgence ne fourni le bon diagnostic que dans 60% des cas. D'autre part, l'abscence de certaines valeurs au niveau des symptmes posent problme. De mme, il est possible que des incohrences existent au niveau de la base d'apprentissage ou de test (deux situations sypmtmatiques identiques avec un diagnostic diffrent par exemple). C'est l l'un des principaux avantages de l'approche connexionniste que de pouvoir rester efficace mme dans ces situations. 3 Prdiction mtorologique (TD) La prdiction mtorologique est un problme trs complexe, sans doute l'origine du dveloppement de la puissance de calcul des gros ordinateurs. On sait aujourd'hui, grce la thorie des catastrophes, que les prvisions sont obligatoirement limites dans leur dure. Aprs quelques jours, un imprvisible battement d'ailes de papillon au dessus de Pkin (Beijing) modifiera irrmdiablement, et de manire effectivement imprvisible, le temps Trifouilly-lesOies. Mais court terme, les prdictions sont posssibles. Question : Proposez une approche connexionniste de la prdiction du temps, en explicitant particulirement l'expression du problme, le modle utilis, la nature des donnes d'entres, la constitution de la base d'apprentissage et de la base de test. Rponse : La prdiction du temps peut se concevoir comme une application de diagnostic. Face une situation non plus compose de symptmes mais plutt de valeurs baromtriques, de 82

donnes arologiques, etc, il faut proposer non pas un diagnostic mais une prdiction. Il y a donc mise en correspondance des donnes mtorologiques actuelles avec le temps venir partir d'exemples issus de l'histoire mtorologique. Le rseau le plus adapt semble tre, dans l'tat actuel de la technique, celui qui permet de reprsenter les relations les plus complexes entre l'espace d'entre et l'espace de sortie (par exemple non linaires) : le rseau multicouche. Le codage des donnes d'entres est, comme pour le diagnostic mdical, primordial et dpend de leurs caractres qualitatif ou quantitatif, ainsi que de leurs domaines de variation. 4 Evaluation de la qualit des plantes en pot Il s'agit ici d'une application typique du connexionnisme, o l'on demande au rseau d'tablir une classification partir de caractristiques dont nous ne sommes certains et selon un procesus de combinaison inconnu. En effet, la beaut n'est pas une grandeur quantitative. Elle ne peut pas tre mesure avec certitude (sur quels critres de base ?). Pourtant, la mise sur le march ncessite la slection des plantes suivant leur "beaut". C'est une tche que des experts humains savent remplir. Expression du problme : Mise en correspondance de l'espace des caractristiques extraites de l'images avec celui des notations partir d'exemples de notations ralises par les experts humains. Modle : La base d'exemples est constitue de 100 cyclamens nots par un comit d'experts. Deux images de chaque plante ont t prises, une vue latrale et une vue de dessus. Une segmentation couleur permet de distinguer les fleurs (rouges) des feuilles (vertes). Nous avons alors notre disposition 4 images par plantes. On extrait de chaque image dix paramtres tels que : la surface totale, le primtre total, les coordonnes du centre de gravit, les inerties sur les axes horizontal et vertical, et des caratristiques relatives l'enveloppe convexe. Il y a donc 40 paramtres pour chaque plantes. Une analyse statistique de l'influence de chacun des paramtres permet de n'en conserver que 8, (a priori les plus importants). Le rseau multicouche choisi se compose de 5 neurones cachs, 8 entres et 3 sorties correspondants la note de qualit gnrale, des fleurs et des feuilles. La base d'apprentissage se compose de 50% des cas. Performance : Aprs application de la procdure de rtropropagation de gradient, les performances mesures sur la base de test montrent que la corrlation du comportement du rseau avec celui de l'expert virtuel est suprieure 80%. Ces rsultats placent l'approche neuronale devant les mthodes purement statistiques, telle que l'analyse en composantes principales. 5 Analyse de donnes conomiques par carte auto-organisatrice 83

L'objectif de l'analyse de donnes est de rduire la complexit de l'information afin de dgager des relations de structures, de causalit, en bref l'information pertinente. De nombreuses techniques existent telles que la rgression linaire, l'analyse canonique, l'analyse discriminante, l'analyse en composantes principales (ACP). L'ACP est une mthode de rduction de dimension d'un problme base sur une composition des caractres (et non une simple slection). Aprs cette transformation, il y a projection orthogonale sur le plan principal (slectionn avec soin pour tre le plus discriminant possible). L'application que nous dcrivons a pour objectif l'analyse de donnes conomiques de 52 pays en 1984. Expression du problme : Mise en correspondance de l'espace des donnes conomiques avec l'espace de la carte en respectant la densit de distribution et les relations topologiques. Modle : L'tat de chacun des 52 pays est spcifis par 6 caractres, tels que la croissance annuel, la mortalit infantile, le taux d'illtres, la frquentation scolaire, le PIB (produit intrieur brut) et la croissance du PIB. Il y a donc 52 exemples d'apprentissage. La carte autoorganisatrice est compose de 100 neurones, avec 6 entres par neurones. Rsultats : Aprs 35000 tirages alatoires au sein de la base d'apprentissage, on obtient les rsultats montrs figure 2. Chaque pays est positionn sur le rseau d'aprs le neurone qu'il active. On note l'apparition de groupes de pays correspondant diffrentes situations conomiques : pays en voie de dveloppement, pays producteurs de ptrole, pays de l'Est et Amrique du Sud, CEE et les 7 pays les plus industrialiss. Notons que l'application de l'ACP sur les mmes donnes fournis des rsultats comparables (bien que les algorithmes appliqus soient diffrents).
Sude Suisse Yougoslavie Grce

France USA Japon Canada

Australie Italie

Koweit

RFA Finlande URSS RDA Cuba

Irlande Espagne Chili Isral Mexique

Bahrein Prou Arabie Saoudite

Royaume Uni Argentine

Venezuela Brsil Afrique Mozambique Madagascar du Sud Nigria

Core du Pologne Hongrie Turquie Maroc Sud Algrie Indonsie Chine Syrie Egypte Cameroun Vitnam Nicaragua Kenya Inde Ethiopie Iran

Sngal Niger BurkinaFaso

Figure 2. Application d'une carte auto-organisatrice aux donnes conomiques : 84

apparition de groupes de pays. 6 Problme d'optimisation (version connexionniste) Nous avons vu que les rseaux de neurones artificiels s'appliquent ds lors que l'on peut exprimer le problme comme une fonction de mise en correspondance aprs apprentissage sur des exemples. Ce n'est cependant pas la seule utilisation qui est faite des rseaux de neurones artificiels. En effet, certains proposent des versions "neuronales" d'algorithmes afin de bnficier de ce fait d'une excution en parallle, d'une implantation VLSI simple ou d'une comprhension plus facile. Citons dans cet ordre d'ides tous les dveloppements raliss avec le modle de Hopfield pour des problmes d'optimisation tels que le problme du voyageur de commerce, ou l'ordonnancement des tches dans les chaines de fabrication. Il n'est pas dans notre objectif de nous tendre sur cet aspect du connexionnisme. Enfin, et ce sera l'objet des deux applications suivantes, des chercheurs astucieux ont utiliss des "effets de bords" pour rsoudre certains types de problmes particuliers tels que la compression d'image ou le maillage. 7 Compression dimage par rseau multicouche Principe : Limage compresser est apprise par le rseau de neurones. Il sagit dautoapprentissage : lentre et la sortie sont identiques. La taille de la couche cache est infrieure la taille de la couche dentre. Aprs apprentissage, on retrouve limage partir des niveaux dactivation des cellules de la couche cache et des poids des cellules de la couche cache vers la couche de sortie. On peut coder plusieurs images avec les mmes poids en ayant des vecteurs dactivation de la couche cache diffrents.

85

S a b

Fig. 8. Rseau multicouche pour la compression dimage. a) Apprentissage auto-associatif (mme entre et sortie). Le nombre d'units caches est, par principe, trs rduit. b) En utilisation, seul le vecteur d'activation de la couche cach est requis, ainsi que les poids des connexions de la couche cache vers la couche de sortie. Exemples de taux de compression : Avec un rseau multicouche 100 x 5 x 100 neurones, il y a au total 500 poids (de la couche cache vers la couche de sortie). Les valeurs des poids sont codes sur 4 bits, ainsi que les 5 valeurs des niveaux dactivation. - Pour une image initiale de 100 pixels (sur 256 niveaux de gris : 8 bits), on obtient un taux de compression de (100 . 8) / (500 . 4 + 5 . 4) = 0.38 Si on code 10 images avec le mme rseau, on obtient un taux de compression de (100 . 10 . 8) / (500 . 4 + 10 . 5 . 4) = 3.6

Afin que l'opration soit rentable, il faut coder plusieurs images par rseau. Cette technique est limite par la dure d'apprentissage (plusieurs centaines d'itrations sont ncessaires), ce qui exclu actuellement tout traitement en temps rel. 86

8 Maillage Principe : L'ide vous est certainement venue d'interprter gomtriquement la rpartition des neurones dans l'espace synaptique. Si cette rpartition se superpose la gomtrie d'tude ont peut constituer le maillage d'une pice. Il ne s'agit pas ici d'une application classique au sens mise en correspondance de deux espaces. Dans de nombreuses disciplines (lectrotechnique, mcanique, thermique...), les techniques de rsolution numrique font appel un maillage de la gomtrie d'tude. La prcision des rsultats et le temps de calcul dpendent fortement du maillage qui constitue une tape-cl de la rsolution. Les cartes auto-organisatrices du fait de leurs proprits d'auto-organisation et d'arrangement optimal satisfont aux critres usuels de maillage. Pour le maillage en lectrotechnique, les critres gomtriques sont les suivants : aucun " trou " ni recouvrement n'est tolr, les lments doivent tre le plus rgulier possible (triangles quilatraux, quadrilatres proches de rectangles pas trop plats, ...). Les critres physiques sont fonction du problme. En rgle gnrale, le maillage doit tre plus fin (lments plus petits) dans les zones critiques o peuvent se produire des phnomnes tels que : effet de pointe, frontires entre rgions, proprits des matriaux (saturation), ... Pour mailler une pice avec une carte auto-organisatrice, la premire approche qui vient l'esprit montre que le rseau ne respecte pas la concavit. Certains neurones sont en dehors de la gomtrie. Si on essaye alors de supprimer les neurones en dehors de la pice et de reprendre l'apprentissage en ayant une forme de rseau plus adapte la pice, les rsultats ne sont pas satisfaisants. Il faut raliser une dcoupe pralable de la gomtrie mailler en sous-parties convexes et fixer les neurones sur la priphries (Figure 9).

Figure 9. Maillage d'une gomtrie concave par une carte auto-organisatrice

87

Rseau : Le choix du rseau est purement li des critres gomtriques de la pice pour la structure et des critres physiques du problme pour le nombre de neurones (dont va dpendre le nombre de mailles). La forme des mailles est donne par les relations de voisinage entre neurones. Par exemple, un voisinage de 6 donne des mailles triangulaires. Rsultats exprimentaux (figure 10) : Les rsultats prsents montrent la validit d'une telle approche. La qualit gomtrique du maillage est satisfaisante. La matrise du nombre de mailles est possible. La souplesse au niveau de la non-uniformit du maillage est accrue par rapport aux mailleurs automatiques classiques. La combinaison des lments (triangles et quadrilatres) est possible. Enfin, cette approche permet une numrotation optimale des nuds.

Figure 10 Maillage d'un huitime d'alternateur dcoup en trois sous-domaines. L'encoche est maille par un rseau carr 5 x 5, la partie extrieure du rotor par un rseau rectangulaire 7 x 8. Enfin, le triangle intrieur est maill par un rseau triangulaire de 12 neurones de ct, les mailles tant triangulaires. Le maillage se compose de 187 lments. La discrtisation du contour est gomtrique aux alentours de l'encoche. On a de plus dfini une zone critique maille plus finement dans le coin suprieur droit du triangle. Le maillage ncessite 500 itrations pour l'encoche, 2000 pour la partie extrieure et 5000 pour le triangle intrieur. 9 Conclusion Un certain nombre d'applications ont t prsent. Il en existe beaucoup plus, quelques ouvrages rfrencs dans la bibliographie rpertorient uniquement des applications. Dans leur grande majorit, les applications dveloppes sont compltement neuronales. A cel plusieurs raisons, la plus mauvaise est que le dveloppeur ne dispose pas de comptences autres que connexionnistes pour envisager un couplage avec des techniques plus classiques. Une seconde raison est qu'une application purement connexionniste peut tre interprte plus avantageusement en terme de possibilits neuronales. Enfin, et c'est la principale, coupler les techniques classiques avec les techniques connexionnistes est un difficile problme.

88

11 Dveloppement dune application en RCM


Il tait une fois un ingnieur d'une SSII (Socit de Service en Informatique Industrielle) qui avait lu rapidement cet ouvrage. Un industriel se prsente alors, son problme est de rduire ses cots lis la saisie de fiches manuscrites. Aprs un tour rapide de la question, il faut se rendre l'vidence : il n'existe pas dans le domaine de la reconnaissance de caractres manuscrits (RCM) de systmes fiables, peu coteux et adapts son application. De plus, il n'existe pas non plus d'algorithmes ou de techniques adaptes, au moins dans sa sphre comptence. Par contre, quelques illustrations entrevues dans cet ouvrage rappellent la RCM. L'approche sera donc neuronale. Le programme de travail a t schmatis sur la figure 1. 1/ Dfinition du cahier des charges : quelle doit tre la vitesse de traitement, quel est le nombre d'crivains, quelles sont les performances attendues (taux de rejet, taux de mal classs) ? 2/ Construction des bases d'apprentissage et de test. Comment rpartir les exemples entre ces deux bases, quel nombre est suffisant, lesquels sont les plus reprsentatifs ? pour toutes ces questions, les rponses manquent aujourd'hui, aussi on confie souvent au hasard le soin d'y apporter une rponse (qui si elle n'est pas la meilleure, ne devrait pas pour autant tre la plus mauvaise). 3/ Slection d'un modle de rseau. Il s'agit de raliser la mise en correspondance de l'image "pixel" avec le caractre. Etant donn que l'on dispose de la sortie dsire, l'apprentissage est supervis. A priori, la fonction de mise en correspondance est complexe (non linaire) ce qui impose le choix d'un rseau multicouche. L'algorithme d'apprentissage le plus performant aujourd'hui sur cette structure est la rtropropagation de gradient. 4/ Dfinition des prtraitements : squelettisation, seuillage, dtection de contours, normalisation, ... Dfinition du traitement : nombre de rseaux de neurones, association avec traitement classique (vrification, controle de vraissemblance). Codage des informations d'entre et de sortie (type thermomtre, pixel, ASCII, ...). 5/ Modle : un rseau de neurones, scanner (binaire), codage des entres : on attribue chaque neurone d'entre une partie (bloc) de l'image. Dfinition : nombre de couches caches, nombre de neurones par couche (entre, cache(s), sortie), constante d'apprentissage (), nombre d'itrations d'apprentissage. Retour l'tape 4 pour ajustement. 6/ Mise au point sur la base de test Quelles sont les lettres qui posent problme, pourquoi ? Sur quels critres peut-on autoriser l'apprentissage en cours d'utilisation, avec quels valeurs de paramtres ? 89

Vrification du respect des performances prcises dans le cahier des charges. 7/ Essais sur site. 8/ En parallle, rdaction de la documentation, des drivers pour le scanner, etc. Cahier des charges performances attendues Constitution de la base d'apprentissage et de test

Slection de la structure et de l'algorithme d'apprentissage Prtraitement, traitement et codage Modifications des paramtres : nombre de couches, de neurones, d'itrations

Test, analyse des perfomances Essais sur site Figure 1. Les tapes de la construction d'une application connexionniste NB : Dans cette fiction, de nombreux problmes ardus ont t "oublis", tels que : - taille de la base d'apprentissage (si le nombre d'crivains est important), - extraction de chacune des lettres de la fiche (et d'une lettre seulement), - codage de l'image en bloc qui ne fonctionne certainement pas pour toutes les lettres de l'alphabet ensemble. Certaines lettres sont trop peu diffrentes selon ce codage pour tre dissocies. Le gain principal est, outre celui de proposer une approche un problme jusqu'alors mal traite, de rduire le temps de dveloppement. Il faut environ deux mois un ingnieur non spcialiste des rseaux de neurones pour raliser un prototype. Cette dure est trs infrieure 90

celle ncessit par l'tude et le dveloppement des algorithmes employs dans le domaine de la reconnnaissance de caractres manuscrits.

91

12 Environnements de dveloppement, simulateurs, neurocalculateurs et intgration


Les modles connexionnistes sont nombreux, en fait plus d'une centaine. Mais leurs spcifications applicatives ne reposent pas sur des rsultats thoriques (sauf pour les plus simples : Perceptron). Aussi, l'exprimentation est le moyen le plus appropri pour choisir le modle de rseau adopter face une application dtermine. Aujourd'hui, l'immense majorit des rseaux de neurones artificiels sont simuls logiciellement sur des ordinateurs squentiels classiques. Nous diffrencions simulateur et environnement de dveloppement. Un simulateur permet de tester rapidement un modle que ce soit face une situation propose par l'utilisateur ou dans le cadre d'une application prdfinie. La fonction de ce logiciel est donc a priori informative, en particulier pdagogique. Un environnement de dveloppement a pour objectif de fournir au programmeur un cadre de travail efficace lui permettant de dcrire rapidement un applicatif. Il s'agit d'un logiciel beaucoup plus coteux. En plus d'un simulateur de rseaux neuronaux, il intgre souvent la possibilit de dcrire ses propres rseaux et la description des rseaux courants (jusqu' une vingtaine), des bibliothques de prtraitement et conversion des donnes, des outils d'analyse et d'aide la mise au point, la possibilit de dcrire une interface graphique, ... Les fabricants proposent souvent en sus du logiciel des outils pour acclrer les calculs : cartes, processeurs, etc. Il n'entre pas dans le cadre de cet ouvrage une description des logiciels disponibles sur le march. Ils sont trop nombreux et d'autre part, leurs fonctionnalits et performances voluent trs rapidement. Notons cependant qu'il en existe pour toutes les bourses : depuis les logiciels en free-ware (on ne paye que le prix du support magntique), en passant par les versions pour PC, jusqu'aux environnements ddis pour les stations de travail. Certains industriels proposent mme des "neurocomputers". Il s'agit en fait de configurations particulirement tudies pour le dveloppement d'applications connexionnistes, qui comprennent souvent des processeurs matriciels, de la RAM, etc. En ce qui concerne l'intgration de rseaux de neurones artificiels dans des circuits intgrs (VLSI ou autres), plusieurs approches sont explores par les chercheurs (analogique, digitale, avec ou sans apprentissage). La principale difficult est lie l'intgration de l'algorithme d'apprentissage. Ds aujourd'hui, des puces contenant quelques neurones (dizaine) sont en vente, d'autres de quelques dizaines existent l'tat de prototypes dans les laboratoire de recherche. 1 Prsentation d'un simulateur

92

SACREN (Systme d'Aide au Choix d'un REseau de Neurones) est un simulateur bas sur les concepts de neurones et de synapses. Il permet la construction et la simulation d'une grande varit de rseaux. Le principal critre guidant son dveloppement a t la flexibilit (chaque cellule possde son comportement propre, tout type de schma de connexions peut tre spcifi), ainsi que le montre la figure 1.

Bases d'apprentissage et de test

Bilbliothque d'algorithmes Rtro ART ARP

interface Description structurelle du rseau interface

Description comportementale de neurones (fonction de transfert)

Rseau

Simulateur Figure 1. Structure gnrale du simulateur Le module dsign sous le terme de description structurelle de neurones regroupe les utilitaires permettant de construire l'architecture du rseau de neurones : les donnes (schma des connexions) utilises pour la simulation. Le second module de description comportementale de neurones a pour objet la spcification du comportement de chacune des cellules. La bibliothque des algorithmes regroupe diffrentes procdures d'apprentissage pour le rseau de neurones : la rtropropagation de gradient, etc. La procdure d'apprentissage travaille partir d'une base d'exemples d'apprentissage. Le module simulateur est compos d'un simulateur vnementiel vnements discrets qui gnre, classe et traite les vnements conscutifs l'application sur le rseau d'une forme en entre. Les interfaces sont des procdures proposant 93

l'utilisateur, sous forme de menu, toutes les actions impliques dans le droulement d'une session. 2 Droulement d'une session L'utilisation du simulateur est schmatise figure 2. Le travail dbute par le choix de la structure de rseau (modle, nombre de neurones, comportement de la fonction de transfert) et l'algorithme d'apprentissage (nombre d'itration d'apprentissage, pas de modification des poids, constitution des bases d'exemples). Puis, la phase d'apprentissage sur la base d'exemples est excute. L'tape suivante est l'utilisation du rseau qui permet de valider ou d'invalider les diffrents choix effectus dans les phases prcdentes.

choix de l'algorithme d'apprentissage et ses paramtres

choix de la structure du rseau de neurones et ses paramtres

entre d'une forme d'apprentissage

processus d'apprentissage

non

fin de l' apprentissage ? oui Simulation

entre d'une forme reconnatre

oui

ajout d'une forme d'apprentissage ? non non fin de la session ? oui

Figure 2. Organigramme d'une session

94

13 Conclusion
Nous esprons avoir tout au long de cet ouvrage employ un langage clair et concis. Remarquons cependant que si ceci profite la pdagogie, la rigueur scientifique n'est pas toujours conserve. Il aurait fallu souvent modrer notre propos, annoter d'exceptions tous nos noncs et consteller le discours de rfrences bibliographiques. Soyons tous conscients qu'il s'agit ici d'une introduction au connexionnisme destine donner un aperu au lecteur curieux et tre complte par des lectures plus prcises par le futur spcialiste. L'approche des rseaux de neurones artificiels s'est faite par rfrence au monde biologique. Ce n'tait pas le seul guide possible. Nous citons au chapitre des renseignements utiles une liste d'ouvrage abordant le sujet selon d'autres dmarches (physicienne, mathmaticienne, etc). La description biologique a permi de souligner l'cart entre le modle et la ralit, par exemple au niveau du nombre d'lments impliqus ou de leur complexit. Ainsi, le lecteur est mme de revenir sur le terme "rseaux de neurones artificiels" et de se forger sa propre opinion. Bien que trs simples, les modlisations ralises (Perceptron, mmoires associatives cartes auto-organisatrices, ART, ARP, rseaux multicouches) nous ont montres, au travers d'exemples d'applications, la porte de cette approche pour l'ingnieur. Pour peu qu'il soit capable d'exprimer le problme rsoudre sous la forme d'une fonction de mise en correspondance et qu'il dispose d'exemples pour l'apprentissage, les performances d'une solution connexionniste dans le domaine de la gnralisation du comportement des situations inconnues (ou imprvues) sont tout fait intressantes. Citons pour mmoire le diagnostic, la prdiction, la classification, la reconnaissance de formes, etc. Mme lorsque les performances ne sont pas suprieures celles d'une approche plus classique (algorithmique ou base de connaissance), la facilit de programmation des modles neuronaux par l'exemple autorise le dveloppement d'applications sans requrir une connaissance trs exhautive du domaine par l'ingnieur. Les temps de dveloppement, et les cots, sont donc rduits. Remarquons cependant que si une expertise du domaine d'application n'est pas ncessaire de la part de l'ingnieur, il lui faut malgr tout acqurir une aisance dans la manipulation des modles et leurs paramtres, la constitution des bases d'apprentissage, et d'autres facteurs moins identifis. Celle-ci ne peut actuellement tre obtenue qu' l'issue d'une exprience personelle de la mise en oeuvre de techniques neuronales, dont les travaux pratiques proposs ici peuvent constituer la base. Il est temps maintenant de questionner la validit de certaines hypothses fondatrices. Ainsi, nous avons suppos que les comportements intelligents s'appuient sur l'architecture neuronale au niveau des neurones et de leurs connexions. Les nombreux exemples applicatifs que nous avons recenc semblent confirmer ce choix. Cependant, dans quelle mesure n'est-il pas possible d'observer des comportements plus intressants (plus intelligents ?) en choisissant comme niveau de modlisation les membranes ioniques, les molcules ou les comportements 95

lmentaires. La figure 1 montre les diffrents niveaux biologiques et le niveau de modlisation choisi par les rseaux de neurones artificiels. Comportement global du cerveau

Systmes et voies de communication

Circuits

Neurones

Microstructure

Synapes

Membranes, molcules et ions

Figure 1. D'autres niveaux de modlisation possibles pour la gnration de comportements intelligents. Remarquons que le terme "ordinateur molculaire" est dj sorti des livres de science-fiction. Une confrence sur le sujet organise en 1983 l'initiative de la NSF (National Science Founding, USA) appelle "Chemically Based Computer Design" (construction d'odinateurs base sur la chimie) a cristallis et catalys les efforts de recherche. Notons aussi l'apparition du terme "neuro-thologie computationelle" o les rseaux de neurones artificiels fournissent un support physique aux comportements lmentaires, dont l'interaction gnre un comportement complexe. Le lecteur curieux aura sans doute remarquer que la conclusion ne semble pas annoncer la fin de cet ouvrage, tout au moins au vu du nombre de pages restantes. En effet, nous proposons quelques questions rcapitulatives destines tester le lecteur. De plus, nous avons dlibremment choisi de reporter en annexe tout le formalisme mathmatique non indispensable. Suivent les rfrences indispensables pour prolonger l'instruction et quelques informations pratiques. Enfin, il nous semble important de proposer un index et un glossaire fournis. 96

97

14 Questions rcapitulatives
1 Association d'une carte auto-organisatrice avec un rseau multicouche Question : Si l'on place en prtraitement d'un rseau multicouche rtropropagation de gradient une carte auto-organisatrice, va-t-on augmenter les performances par rapport un rseau multicouche seul ? Argumentez. Rponse : Non, car la sortie de la carte est un unique foyer d'activation. 2 Machine squentielle connexionniste Il existe un certain nombre d'applications o la rponse doit tre fonction des entres actuelle et passes. A l'exemple du domaine de la reconnaissance de la parole, le traitement ralis doit pouvoir prendre en compte la squence des vnements reus et non plus seulement l'entre actuelle (fig. 1.). Nous dfinissons une squence comme une suite ordonne de formes. Une forme est un vecteur d'entre. La longueur, ou taille, de la squence est gale au nombre de formes qui la composent. Dans une squence, la mme forme d'entre peut produire des sorties diffrentes.
Systme de mise en correspondance Squence de phonmes Mot reconnu

Figure 1. Application un problme de nature squentielle Un certain nombre de modles connexionnistes ont t proposs pour rsoudre des problmes de nature squentielle. Mise part deux approches qui vacuent le problme squentiel en le transformant en un problme combinatoire (srie-parallle et spatio-temporelle), les autres approches sont toutes des instances du modle gnral de machine squentielle (fig. 2). La machine squentielle est une reprsentation formelle propose pour la modlisation des circuits squentiels, qui englobe tous les modles de rseaux squentiels. Une machine squentielle est un quintuplet M = (I, O, S, , ) 98

o I, O, S sont respectivement les ensembles non vides, finis, des entres, des sorties et des tats. : I x S -> S est la fonction de transition. Elle calcule l'tat interne futur en fonction des entres actuelles et de l'tat interne prsent. : I x S -> O est la fonction de sortie. Elle value la sortie en fonction de l'tat interne prsent et des entres actuelles. Nous pouvons classer (fig. 2.) plus prcisement les machines squentielles en fonction des capacits de leurs composants : - Soit chaque cellule est une machine squentielle dfinie par un quintuplet, toutes les cellules sont identiques. A chaque cellule est attache une variable d'tat. La fonction de transition globale est une composition des fonctions de transition locales. La boucle de rtroaction est implicite. - Soit chaque cellule est dfinie par un triplet, la fonction de transfert est donc combinatoire. On distingue alors deux cas, selon la position des boucles de rtro-action : - Le traitement squentiel est introduit par une boucle de rtro-action explicite sur chacune des cellules . - Des boucles de rtroaction externes sont introduites sur le schma d'interconnexion et permettent de dfinir un sous ensemble de cellules pour le stockage de la mmoire. Dans ce dernier cas, la fonction de changement d'tats est globale.

Machine squentielle

Transformation srie parallle

Transformation spatio-temporelle

Fonction de transition locale

Boucle sur la cellule

Boucle externe sur la structure

Figure 2. Classification des approches pour la rsolution de problmes squentiels Remarque : La classification que nous avons ralis entre les diffrents modles issus de la machine squentielle ne se justifie que pour un certain niveau d'observation. A un autre niveau, il est possible de considrer tout modle boucles externes comme un modle ne comprenant qu'une seule cellule avec boucle de rtro-action explicite. Rciproquement, tout modle

99

compos de cellules avec boucle de rtro-action explicite peut tre considr comme une interconnexion de rseaux boucle externe (chaque rseau ne comprenant qu'une seule cellule). a/ Transformation srie-parallle On ralise extrieurement au rseau une transformation srie-parallle. L'hypothse est faite que l'on dispose, un instant donn, d'une squence de longueur fixe que l'on peut traiter en parallle. Le comportement rsultant est dcrit par l'quation (o : la sortie, i : l'entre) : o(t) = F(i(t+n), i(t+n-1), ..., i(t), i(t-1), ..., i(t-n)), avec n petit en pratique. L'exemple d'application le plus connu est NETtalk. Un rseau de neurones multicouche, dot de la rtropropagation de gradient, apprend prononcer un texte en langue anglaise. La prononciation d'une lettre dpend des 3 lettres prcdentes et des 3 lettres suivantes. La taille de la squence, appele ici fentre, est donc de 7 lettres (fig.3.).
Rseau multicouche Texte anglais I c o u l i(t-3) i(t-2) i(t-1) i(t) i(t+1) i(t+2) i(t+3) Prononciation de la lettre o(t) /k/

Figure 3. NETtalk : un exemple de transformation srie-parallle Question : Quelles sont les limitations imposes par cette approche ? Rponse : Un tel modle ne permet pas de prendre en compte plus de 3 lettres prcdentes. Comme le note Sejnowski, atteindre un haut niveau de performance (contrle de l'intonation, ...) pour ce rseau ncessiterait la prise en compte d'une fentre plus large. Une entre hors de la fentre ne pouvant pas intervenir sur la rponse du rseau, le pass lointain est inabordable par cette technique. La longueur maximale des squences traites doit tre infrieure la dimension de la fentre, qui reste faible en pratique. b/ Approche spatio-temporelle

100

w12 w11 a) x1 w21 x2 w22

Temps x1(0) w12 w11 x1(1) b) x1(t) w12 w11 x1(t+1) w21 w22 x2(t+1) t+1 ... ... x2(t) w21 w22 x2(1) ... t 1 x2(0) 0

Figure 4. Approche spatio-temporelle a) un rseau boucl. b) le rseau quivalent sans boucle sur une priode de temps finie. Les premieres tudes dans le cas des rseaux multicouches et de la rtropropagation de gradient sont dues Rumelhart & al.. Ils proposent de construire pour chaque rseau connexions rcurrentes un rseau sans boucle montrant le mme comportement sur une priode de temps finie (fig. 4). Il s'agit en fait de dupliquer la structure dans l'espace. c/ Fonction de transition locale Les modles biologiques de rseaux de neurones sont des exemples de modles avec prise en compte du pass au niveau de la fonction ralise par le neurone. Dans le modle tudi par Zeigler, le neurone est binaire, son comportement est dcrit par une quation de type : x(t+1) = f (t, a(t)). Il passe dans un tat excit si la somme de ses entres est suprieure la valeur du seuil. Cette valeur de seuil est variable, elle dpend du temps coul depuis la dernire excitation (not n). La valeur de seuil, dont le comportement est montr figure 4., est dfinie par une quation de la forme : seuil (t) = 1/ n .

101

seuil

0 1 2 3 4 5 6 7 8 9 10 Temps pass

Figure 4. Une fonction de seuil typique d/ Boucle sur le neurone La fonction d'activation de chaque neurone est modifie de faon prendre en compte la prsence de la boucle de rtroaction. Il s'agit en fait, dans le cas d'une boucle unique avec un retard gal 1, de faire intervenir l'tat prsent x(t) pour le calcul de l'tat futur. Question : Donnez l'quation dcrivant le comportement du rseau : Rponse : o(t+1) = F(i(t+1), x(t)) Question : Proposez une quation de la fonction d'activation du neurone appartenant cette approche ? Rponse : x(t+1) = (e(.a(t) + k.x(t)) - 1) / (e(.a(t) + k.x(t)) + 1) o , k sont des constantes, a est la somme pondre des entres et f une fonction de type sigmode. k est le coefficient de prise en compte de l'tat prsent. Si k = 0 alors on retrouve la fonction d'activation classique. L'architecture du rseau est multicouche, l'algorithme d'apprentissage est driv de la rtroprogation de gradient. Bien que ce modle, et d'autres du mme type, montrent des capacits certaines dans l'apprentissage et la reconnaissance de squences, la longueur des squences traites demeure faible. e/ Boucles externes : Machine squentielle connexionniste Structure : Elle reprend la structure de la machine squentielle en remplaant les circuit digitaux par des rseaux multicouches (fig. 5.). Le premier bloc ralise la fonction de transition, le second ralise la fonction de sortie. Il y a une boucle de rtro-action sur le rseau ralisant la fonction de transition. Chaque neurone de la couche de sortie est reboucl sur un neurone dentre. Tous les neurones sont identiques, les connexions se rpartissent en deux classes selon la nature fixe ou plastique du poids de la connexion. Les connexions en provenance des entres primaires et celles en provenance de la sortie du rseau ralisant la fonction de transition 102

sont de poids fixes (en traits gras). Les connexions entre les diffrentes couches dans chaque rseau sont plastiques, leur poids est modifi durant l'apprentissage. Tous les neurones d'une couche sont connects tous les neurones de la couche suivante. Il n'y a pas de connexions entre neurones d'une mme couche, ainsi que de connexion rcurrente sur le neurone lui-mme.

i(t) s(t+1) Retard s(t) d l s(t) o(t)

Figure 5. Machine squentielle connexionniste Fonctionnement : Le rseau ralisant la fonction de transition calcule partir de l'tat prsent s(t) et de l'entre actuelle i(t) l'tat futur s(t+1). Le rseau ralisant la fonction de sortie calcule partir de l'tat prsent et de l'entre actuelle la sortie o(t). Question : Donnez les quations dfinissant le comportement de chacun des rseaux : Rponse : Rseau de transition s(t+1) = (s(t), i(t)) Rseau de sortie o(t) = (s(t), i(t)) Le mode de comportement de cette machine est synchrone. Nous considrons que chaque boucle de rtroaction est dote d'un poids gal 1 et comporte un lment mmoire fictif, reproduisant sur sa sortie la valeur de son entre, lorsqu'une impulsion d'horloge survient. Ce choix d'un comportement synchrone avec lment mmoire fictif n'est videmment pas le seul envisageable. On peut, tout aussi bien, envisager un comportement asynchrone pur. Question : Pourquoi avons nous choisi de remplacer les circuits combinatoires de la machine squentielle par des rseaux multicouche ? Rponse : Il nous intressait de pouvoir modliser des fonctions de transition et de sortie non linaires. Ce n'est pas la seule possibilit, tout modle neuronal est envisageable. Ainsi Kohonen a propos une machine tats finis ralise par une mmoire auto-associative. Les possibilits de ce modle sont limites par celles des mmoires associatives.

103

Le modle de Jordan L'architecture : Elle est multicouche, la dernire couche est reboucle sur la premire (fig. 6). Les cellules d'entre se rpartissent en deux groupes : les cellules de plan et les cellules d'tat. Les cellules de sortie sont reboucles sur les cellules d'tat par des connexions de poids fixes, de mme pour les cellules d'tat qui rebouclent sur elle-mme par des connexions de poids fixes. L'tat interne est dfini par l'ensemble des cellules de sortie et des cellules de plan.
i o(t) o(t+1)

retard

Figure 6. Rseau propos par Jordan Comportement : Une forme d'entre i est applique sur les cellules de plan. Ce vecteur, appel vecteur de plan, ne sera plus modifi pour la suite de la production de la squence. Le vecteur d'tat des cellules de sortie varie dans le temps du fait des connexions rcurrentes sur les cellules d'tat. Ces connexions modifient les valeurs d'activation des cellules d'tat et imposent une entre variable dans le temps au rseau multicouche. En utilisant des vecteurs de plan diffrents, le mme rseau apprend plusieurs squences diffrentes. Question : Dcrivez le comportement de ce modle par une quation : Rponse : o(t+1) = F(i, o(t)) L'algorithme d'apprentissage : C'est une gnralisation de la rtropropagation de gradient. Plutt que d'utiliser une valeur fixe pour les sorties dsires, des contraintes sont imposes sur ces valeurs. Une contrainte spcifie, par exemple, un intervalle pour la valeur de la sortie. Il y a apprentissage aprs chaque forme produite. Rsultats : Quelques simulations ont t ralises. Par exemple, un rseau compos de 8 cellules d'tat, 6 cellules de plan, 10 cellules caches, 8 cellules de sortie, est capable d'apprendre gnrer une squence de 8 formes. Le modle d'Elman L'architecture : Elle est lgrement diffrente de celle de Jordan. Il sagit dune structure multicouche (fig. 7.) o les boucles de rtro-action relient la couche cache avec les cellules dentre. La couche d'entre consiste en deux ensembles de cellules, les cellules de contexte et 104

les cellules d'entre. Il y a autant de cellules caches que de cellules de contexte. Chaque cellule cache est relie une seule cellule de contexte par une connexion fixe, de poids gal 1. L'tat interne est dfini par l'ensemble des cellules de la couche cache.
c(t+1) i(t) c(t) o(t+1)

retard

Figure 7. Rseau propos par Elman Comportement : La couche cache a la tche d'tablir, la fois, les associations de la fonction de sortie et les associations de la fonction de transition. Question : Donnez les quations reprsentatives du comportement de ce modle sachant qu'il ncessite d'introduire la fonction G ralise par la premire couche de poids du rseau. Rponse : o(t+1) = F(i, c(t)) , c(t+1) = G(i(t), c(t)) A chaque instant, une sortie est calcule sur la base de l'tat interne (contexte) et de l'entre prsente. Il y a copie du vecteur d'activation de la couche cache sur la couche de contexte. De cette faon, le rsultat intermdiaire du traitement la date prcdente (t-1) peut infuencer le traitement la date actuelle (t). L'algorithme d'apprentissage : C'est la rtropropagation de gradient. Les vecteurs d'activation de la couche cache dvelopps par le rseau sont significatifs du problme soumis. Ces vecteurs d'activation sont les reprsentations internes construites par le rseau. Rsultats : Dans le cas o les squences d'apprentissage ont t gnres en accord avec le graphe d'tats finis d'un automate, l'apprentissage permet de raliser la synthse de cet automate. Le codage des tats internes du rseau est reprsentatif des noeuds du graphe d'tats (fig. 8.).

105

1/0 Dbut A1 0/0 1/0 1/1 0/0 A4 0/0

0/0 A2 1/0

A3

Entre : 11000111010001011010001110101 Sortie : 00000000000000010000000000001 Figure 8. Le graphe d'tats d'un automate dtecteur de la squence 0101 (longueur 4). Sur chaque transition, on a indiqu la valeur de l'entre et la sortie correspondante. Une squence d'apprentissage (Entre, Sortie) est prsente au dessous. Un millier d'itrations d'apprentissage est suffisant pour que le rseau syjnthtise l'automate correspondant aux squences d'apprentissage. Le rseau est alors capable de classer sans erreur des squences de longueur quelconque comme appartenant ou non l'automate. Le rseau de neurones se compose d'une couche de 4 cellules d'entre, 3 cellules de contexte, 3 cellules caches et 2 cellules de sortie, alors que le graphe d'tat montre 4 tats, 8 transitions et 2 valeurs d'entres (notes sur les arcs). Ces prcisions techniques permettent de situer les applications envisageables, les performances tant fortement lies la taille de la grammaire. Question : En utilisant le formalisme gnr par la machine squentielle connexionniste, que peut-on dduire du comportement, des potentialits des modles de Jordan et d'Elman. Dcrivez, en les dessinant, ces deux modles comme des machines squentielles connexionnistes particulires. A partir des structures de rseaux dfinies pour raliser les fonctions de transition et de sortie, il est possible de connatre les classes de fonctions ralisables. On apprhende ainsi les applications que ces diffrentes machines squentielles sont capables de traiter. Rponse : La machine squentielle connexionniste permet de reprsenter les modles de Jordan et d'Elman. Le grand intrt de telles reprsentations est la possibilit de prdire et d'expliquer le comportement de chacun de ces modles, les fonctions de transition et de sortie y tant plus explicites. Le modle de Jordan (fig. 9.) est une machine d'tats connexionniste. La fonction de transition est ralise par un rseau multicouche (3 couches). Il y a une connexion rcurrente de 106

chacun des neurones d'tats internes sur lui-mme. Ce modle se comporte comme une machine d'tat asynchrone. Pour un vecteur d'entre donn, on observe l'volution de la machine, qui passe par plusieurs tats transitoires pour ventuellement aboutir dans un tat stable.

i s(t+1) s(t)

0.5 / 1 retard

Figure 9. Le modle de Jordan : une machine d'tat connexionniste Le modle d'Elman (fig. 10.) correspond une machine squentielle connexionniste o les rseaux ralisant les fonctions de transition et de sortie sont des rseaux de neurones deux couches. Il n'y a pas d'entre primaire sur la fonction de sortie, c'est donc un modle de type machine de Moore. La fonction de transition et la fonction de sortie sont apprises. Cependant, comme il n'y a qu'une seule couche de poids modifiables pour chaque fonction, les possibilits au niveau des fonctions ralisables sont rduites. Seules peuvent tre ralises des fonctions linairement sparables. Par rapport la machine squentielle connexionniste, ce modle ne peut pas raliser dassociations non-linaires au niveau de la fonction de transition.
i(t) s(t+1) o(t+1)

s(t)

1 1
retard

Figure 10. Le modle d'Elman : une machine squentielle connexionniste dgnre Le modle de Jordan et celui d'Elman prsentent certaines limitations que nous avons explicites. Lapproche suivie par ces auteurs est empirique : ayant imagin une structure de rseau, ils vrifient quelle rpond, ou non, au problme. La dmarche qui a procd au 107

dveloppement de la machine squentielle connexionniste est inverse. Une structure gnrale pour la rsolution de problmes de nature squentielle est propose, structure que lon adapte pour des applications particulires. De fait, la machine squentielle connexionniste est une gnralisation des rseaux de neurones squentiels. 3 Construction d'une taxonomie des modles de rseaux neuronaux Huit critres sont utiliss pour rpertorier les modles : temps discret / continu, variables discrtes / continues, dterministe / stochastique, modle autonome / non autonome, invariance / non invariance par rapport au temps, combinatoire / squentiel, modle instantan / non instantan, synchrone / asynchrone. Question : Dans une simulation temps discret, les vnements se passent des instants prcis, spars dans le temps. Comment caracterisez-vous les modles que vous connaissez ? Rponse : Aujourd'hui, la plupart des rseaux de neurones sont des modles temps discret. L'unique raison semble tre la facilit de programmation et de simulation. Question : Les variables descriptives du modle peuvent tre soit discrtes, soit continues. Comment caracterisez-vous les modles que vous connaissez ? Rponse : Il ne s'agit pas l d'un critre trs utile. Les rseaux neuronaux contiennent souvent des variables continues : les poids des connexions. Notons cependant qu'un rseau dont les variables de sortie sont continues peut fournir une infinit de rponses. Inversement un rseau dont les sorties sont discrtes ne peut fournir qu'un nombre fini de rponses. Cette remarque est particulirement importante dans le cas des variables d'tat des rseaux squentiels (cf machine sqentielle connexionniste). Question : Un modle est stochastique si sa description contient des variables alatoires, dterministe dans le cas contraire. Comment caracterisez-vous les modles que vous connaissez ? Rponse : ARP est un modle stochastique, que l'apprentissage rend dterministe. Question : Un modle autonome est un systme sans interaction avec le monde rel. Comment caracterisez-vous un rseau de neurones autonome que vous connaissez ? Rponse : Un modle autonome, dans le cas des rseaux de neurones, est un rseau sans entre. Les variations de la sortie rsultent de phnomnes internes gnrs par des neurones oscillatoires par exemple. Question : Un modle est invariant par rapport au temps si le temps n'intervient pas comme argument des rgles d'interactions. Celles-ci sont de fait les mmes n'importe quelle date. Comment caracterisez-vous les modles que vous connaissez ? 108

Rponse : La plupart des rseaux sont des modles invariant par rapport au temps. Dans le domaine neuromimtique, les choses sont souvent diffrentes. Par exemple, le neurone propos par Zeigler (exercice prcdent) est dot d'un comportement binaire dont le seuil varie au cours du temps. De cette faon, le neurone est insensible l'arrive de nouveaux stimuli aprs excitation (simulation de la priode rfractaire). Question : La sortie d'un modle instantan est obtenue ds la prsentation d'une nouvelle entre. Un modle squentiel est ncessairement non instantan. Imaginez des modles de rseaux combinatoires non instantans Rponse : Il s'agit des rseaux combinatoires avec retards sur les connexions. Question : Dans un modle synchrone, toutes les variables d'tat voluent la mme date. Ce critre s'applique aux modles squentiels ou combinatoires non instantan. Comment caracterisez-vous les modles que vous connaissez ? Rponse : La plupart des rseaux sont considrs (implicitement) comme synchrones. Remarquons que l'on peut construire une autre catgorie selon la nature implicite ou explicite du temps dans les modles. Dans la plupart des modles, le temps est implicitement confondu avec la notion d'itration. Cette classe de modles temps implicite regroupe ensemble les modles combinatoires instantan et squentiels synchrones temps discret. Cependant, cette catgorisation est moins prcise. 4 Coopration multi-rseaux La lecture des ouvrages recensants les applications actuellement dveloppes permet de constater que la trs grande majorit des applications impliquent au maximum 300 neurones. Ceux-ci sont habituellement rpartis comme suit : 200 neurones d'entres, 70 neurones cachs et 30 neurones de sortie, au sein d'un unique rseau muni d'un algorithme d'apprentissage de type rtropropagation de gradient. Le traitement ralis par le rseau est l'apprentissage d'une fonction de mise en correspondance entre l'espace d'entre et l'espace de sortie. La gnralisation est le rsultat d'une interpolation non-linaire effectue sur les exemples d'apprentissage. Ainsi, nous sommes aujourd'hui capables d'analyser le traitement ralis par ce type de rseau (analyse en composantes principales sur la premire couche, etc). L'application d'un modle de rseau unique, avec un petit nombre de neurones, ne permet de rsoudre que des probmes simples. Question : La rsolution de problmes complexes impose d'augmenter le nombre de neurones. Mais quelles sont les causes qui restreignent le nombre de neurones mis en oeuvre ? Comment les contourner ? Rponse : Deux parmi les causes recences sont relatives aux temps de calculs (pour l'apprentissage) et l'abscence d'tudes sur le comportement des algorithmes d'apprentissage 109

sur "grands" rseaux (de l'ordre de 100 000 neurones). Ces deux limitations peuvent tre contourn en changeant de niveau d'organisation. Manipuler des interconnexions de rseaux augmente le nombre de neurones mis en jeu. N'oublions pas l'essentiel cependant, l'lment de base du systme reste le neurone (et non le rseau). Il faut concevoir ce changement de niveau comme une facilit pour la construction et l'apprentissage de grands rseaux neuronaux. Question : Le dveloppement des tudes sur la coopration multi-rseaux est une approche possible pour rsoudre des problmes complexes. La rsolution d'un problme par un rseau de neurones consiste trouver par apprentissage la bonne relation d'entre/sortie. Lorsque cette relation est complexe, le problme doit tre dcompos en sous-problmes et ainsi de suite jusqu' aboutir un ensemble de sous-problmes terminaux pour lesquels on sait trouver une solution. L'ensemble des comportements et leur schma d'interconnexions constitue une dcomposition structurelle hirarchise du problme. Proposez deux ralisations pratiques de cette approche. Rponse : Dans le premier cas, chacun des comportements des sous-problmes terminaux est ralis par un rseau de neurones, que nous appelons rseau de base. On dtermine donc pour un problme complexe donn, d'une part la structure du systme et d'autre part, les comportements que doivent raliser chacun des rseaux de bases. L'apprentissage peut tre ralis en contexte, partir de la seule relation globale d'entre/sortie, ou hors contexte si l'on connait pour chacun des rseaux de base le comportement raliser. En d'autres termes, on peut donc considrer que le problme de la construction de rseaux de neurones hirarchiss se dcompose en : dfinition de structures adaptes des classes de problmes spcifiques, choix du type et de la structure des rseaux de neurones apparaissant dans la hirarchie, mise en oeuvre de la technique d'apprentissage hors contexte et/ou en contexte. Les travaux raliss sur les machines squentielles connexionnistes constituent une premire approche l'tude de la combinaison de plusieurs types de rseaux neuronaux. Dans ce cas, il s'agit de coupler deux rseaux de neurones correspondant respectivement la fonction de transition et la fonction de sortie. Chacune de ces fonctions est ralise par un rseau de neurones multicouche. La structure est fixe a priori. Ce modle ralise une synthse automatique d'un automate partir d'exemples de squences. Dans le cas o le graphe d'tat de l'automate synthtiser par le rseau n'est pas connu, on ne peut pas raliser un apprentissage hors contexte de chacun des rseaux. Dans le second cas, il s'agit d'utiliser le travail ralis par l'analyste/programmeur pour la rsolution du problme en remplaant chaque bloc d'instructions par un rseau de neurones. Le rseau se comporte alors comme la fonction prescrite par le code (phase d'apprentissage). De plus, la ralisation neuronale permet d'envisager une gestion efficace de situations imprvues 110

(conditions aux limites, drive des donnes d'entre, etc). L'un des modles de rseau de neurones qui semble le plus adapt cette situation est la machine squentielle connexionniste. Chaque procdure est une machine squentielle particulire que l'on remplace par la machine squentielle connexionniste correspondante. Celle-ci est mme de synthtiser tout comportement squentiel, qui apparait notamment dans la gestion des boucles. Remarque : Devant de telles architectures neuronales, nous ne sommes plus capables d'effectivement comprendre le comportement du rseau. Sommes nous de ce fait en train de gnrer un comportement intelligent, de par sa nature incomprhensible ?

15 Annexes
1 Carte auto-organisatrice Certains neurones peuvent rpondre de moins en moins activement un stimulus lorsque celui-ci se prsente frquemment. Une frquence de slection est introduite, qui s'incrmente ou se dcrmente selon que le neurone est le foyer d'activation (cluster) ou non. Ensuite, la corrlation des neurones aux entres est pondre par un facteur dpendant de la frquence d'activation. Algorithme d'apprentissage modifi pour les cartes auto-organisatrices : 1/ Initialisation des poids des valeurs alatoires autour d'une valeur centrale. Initialisation des frquences : pour tout neurone i, freq[i] = constante. Initialisation des gains (0) et (0). Choix de nombre_itrations. 2/ Prsentation d'une entre El = (e1, e 2). 3/ Calcul de la distance de chacun des neurones par rapport e1 et e2 xj = |wj1 - e1| + |wj2 - e2| xj = xj.( freq[j] + a / nombre_neurones) a : constante relle positive. 4/ Slection du neurone le plus proche : Min(x)= xi 5/ Modification des poids pour le neurone choisi (i) et ses 4 plus proches voisins (k). wi1 = w i1 + (t). (e 1 - wi1) 111 (* calcul de la distance *) (* pondration de la distance par la frquence *)

wi2 = w i2 + (t). (e 2 - wi2) wk1 = w k1 + (t). (e 1 - wk1) wk2 = w k2 + (t). (e 2 - wk2) (t) > 0 et 0< (t) a(t) 6/ Mise jour des frquences (b > 0) : Si i est le neurone choisi : freq[i] = freq[i] + b . ( (1 - freq[i]) / nombre_neurones ) sinon : freq[j] = freq[j] + b . ( (0 - freq[j]) / nombre_neurones ) 7/ Dcrmentation des gains et : (t+1) = (t) - (0) / nombre_itrations (t+1) = (t) - (0) / nombre_itrations

8/ Tant que (t) > 0 : Retour l'tape 2 et slection de l'exemple suivant dans la base d'apprentissage. 2 Rtropropagation de gradient Il faut trouver une configuration de poids qui minimise un critre d'erreur. On dfinit donc une fonction de cot : C(W) = M [Cl(W)] = M [ j elj 2(W)] avec elj = (dlj - xlj ) o, j indique un numro d'indice pour les neurones de sortie et l indique un exemple d'apprentissage. M est l'oprateur de moyennage, c'est une estimation de la moyenne temporelle dans le cas stochastique. On ralise donc la moyenne des erreurs obtenues pour chacun des exemples de la base d'apprentissage. L'algorithme du gradient permet de trouver une configuration minimale pour la fonction de cot, il suffit d'appliquer de manire itrative la formule : W(t+1) = W(t) - . C(Wt) o C(t) ets la drive partielle de C par rapport tous les wij. Cet algorithme ncessite une fonction continue, non-linaire et diffrentiable comme fonction de transfert du neurone. ai = j wij . x i ; f (ai) = (eai - 1) / (eai + 1) La linarit de l'oprateur de moyennage permet d'effectuer tous les calculs sur les valeurs instantanes de la fonction de cot. C/wij = C / ai . ai / wij (drivation des fonctions composes) 112

Sachant que ai = j wij . x i alors C/wij = C / ai . x j Il nous reste donc calculer les C / ai que nous notons -yi Si i est une cellule de sortie : yi = -C / ai = - q e2q Aprs drivation, yi = - q e2q / xi . xi / ai

(e2q / xi est nulle si q i pour

toute cellule de sortie, indpendantes de fait). d'o yi = -e2i / xi . xi / ai = -2ei . ei / xi . xi / ai Sachant que pour les cellules de sortie ei = (di - xi), alors ei / xi = -1 Rsultat : yi = 2ei . f'(a i)

Si i est une cellule cache (ou d'entre) : yi = -C / ai Posant l'hypothse que tous les yk auxquelles la cellule i envoie sa sortie sont connus alors yi = k (-C / ak . ak / ai) = k (yk . ak / xi . xi / ai) Soit yi = k (yk . wki. f'(a i)) = f '(ai). k(wki.y k) Le calcul du gradient attach une cellule utilise les poids qui les relient aux cellules avals ainsi que des gradients correspondants yk (fig. 1).

Sens de calcul des y

Entre j wij

wki

Sortie

Sens de calcul des x Figure 1. Dfinition d'un sens de propagation de l'information oppos pour le calcul des x et des y. 3 Algorithme d'apprentissage par pnalit/rcompense (ARP ) Il a t originellement propos par Barto et Anandan. Il s'applique toute architecture de rseau, la seule contrainte tant d'avoir des neurones de sortie stochastiques, gouverns par la rgle habituelle : Probabilit (xi = 1) = g(a i) = (1 + exp(2ai))-1 o ai = j wij . x i La valeur xi (binaire) des neurones de sortie est tire au sort avec une probabilit que le neurone se trouve dans l'tat +1 fonction de la somme pondre des entres ai. Cette fonction g est une 113

sigmode dont les valeurs asymptotiques sont 0 et +1. est un paramtre qui dtermine la valeur de la pente de la courbe.

Sortie Simulateur retour +/d'environnement

Entres

Figure 2. Algorithme d'apprentissage par pnalit/rcompense. Algorithme 1/ Dans une premire tape, les poids sont initialiss de petites valeurs alatoires qui placent les probabilits des neurones de sortie autour de 0.5. 2/ une entre E = (e1, ...e n) est prsente, 3/ une sortie correspondante possible xi est calcule pour chaque neurone, 4/ La sortie globale produite est analyse de faon gnrer un signal de retour r, positif ou ngatif, et une sortie cible (dsire) est choisie : di = xi si r = +1 (rcompense) di = -xi si r = -1 (pnalit) 5/ les poids sont modifis par une mthode de gradient en prenant pour sortie effective la moyenne xi des sorties que l'on aurait obtenues si l'on avait effectu un trs grand nombre de prsentation de la mme entre. Rappelons que le comportement stochastique des neurones de sortie autorise l'obtention de sorties diffrentes pour une mme entre et avec la mme configuration de poids. La moyenne est donne par la formule : xi = (+1) . g(ai) + (-1) . (1 - g(a i)) = tangente_hyperbolique (ai) L'erreur considre est alors : erreur i = di - xi La modification des poids est ralise par la classique mthode du gradient : wij = . r . erreur i . x j En gnral, dpend de r et est pris 10 100 fois plus grand ( +) pour r = +1 que pour r = -1 ( -). La rgle globale est donc finalement : 114

wij = + . (xi - xi) . xj si r = +1 (rcompense) wij = - . (-xi - xi) . xj si r = -1 (pnalit) 6/ Puis, tant que la sortie du rseau n'a pas produit une squence satisfaisante suffisamment longue, retour l'tape 2. 4 Approximation de fonction par rseau de neurones Thorme : "Pour toute valeur e > 0 et toute fonction f de L2 telle que f : [0, 1]n -> R m, il existe un rseau multicouche trois couches dot de l'algorithme d'apprentissage de la rtropropagation de gradient qui peut approximer f avec une mesure de l'erreur au carr infrieure e." L2 inclut toutes les fonctions qui peuvent apparaitre dans une application pratique (continues et discontinues). Il faut remarquer que ce thorme ne donne aucune indication sur le nombre de neurones dans la couche cache et d'autre part, il prsente les rseau une couche cache comme un minimum. En pratique, des rseaux avec deux ou trois couches caches peuvent se rvler plus performants. D'autre part, ce thorme garantit qu'un rseau trois couches avec les poids adquats peut approximer n'importe quelle fonction de L2, mais il n'exprime aucune ide sur la faon dont ces poids pourraient tre calcul. 5 La simulation dirige par les vnements La simulation vnementielle est une mthode peu utilise dans le domaine des rseaux de neurones artificiels, bien qu'elle soit trs employe en CAO (Conception Assiste par Ordinateur) des circuits. La simulation vnementielle prsente de multiples avantages par rapport au calcul matriciel (matrice des poids) classiquement utilise, dont : - Gain en facilit de conceptualisation : les neurones et synapses sont effectivement reprsents comme des entits. - Gain de temps de calcul : seuls les neurones ayant chang d'tats crs un vnement. De fait, le minimum de calcul est effectu. Rappelons que le calcul matriciel oblige de recalculer chaque interaction la valeur des tats de tous les neurones du rseau. Ceci est particulirement pnalisant dans le cadre des rseaux multicouches sans boucle o les couches sont actives les unes aprs les autres (et une seule la fois). - Gain de place mmoire : la structure de donnes dcrivant le modle est minimale, en effet seules les neurones et les connexions existants sont dcrits. La technique classique (matricielle) impose de manipuler des matrices de connexions trs creuses. Ainsi dans le cas d'un rseau de neurones multicouche connexions complte intercouches sans boucles comprenant n cellules, la taille de la matrice est de n2 ; alors qu'il n'existe qu'environ 0.1 n2 connexions effectives. Pour des rseaux de grandes dimension, le gain de taille mmoire est considrable. 115

Les lments de base d'un simulateur dirig par les vnements sont l'chancier et les vnements. L'chancier est une structure dans laquelle sont stocks les vnements. A chaque vnement est associ une date. L'chancier assure le classement des vnements en fonction de leur date afin que soit trait en premier l'vnement le plus proche dans le temps. Les vnements, dans notre cas, sont au nombre de deux. Un premier type d'vnement (ev1) correspond la transmission d'information depuis un neurone, ou une entre, ayant chang d'tat. Il peut tre vu comme le cheminement d'un potentiel d'action le long de l'axone. Cet vnement permet l'introduction explicite au niveau de la synapse du concept de retard (encore peu exploit au sein des modles neuromimtiques dvelopps actuellement). Le second type d'vnement (ev2) calcule l'tat du neurone en ralisant, chaque instant, la somme des informations arrives. Cet vnement gnre, ventuellement, de nouveaux vnements (ev1).

116

16 Bibliographie
Chapitre 1 J. Anderson, E. Rosenfeld, Neurocomputing : Foundations of research, MIT Press, Cambridge, Second printing, ISBN 0-262-01097-6, 1988. On trouve dans cet ouvrage tous les articles importants tels que : W. James, Psychology (Briefer Course), New york: Holt, Chapter XVI, "Association,"pp. 253-279, 1890. W. McCulloch and W. Pitts, "A logical calculus of the ideas immanent in nervous activity," Bulletin of Mathematical Biophysics 5: 115-133, 1943. D. Hebb, The Organization of Behavior, New York: Wiley, 1949. F. Rosenblatt, "The Perceptron: a probabilistic model for information storage and organization in the brain," Psychological Review 65 : 386-408, 1958. B. Widrow and M. Hoff, "Adaptive switching circuits," 1960 IRE WESCON Convention Record, New York: IRE, pp. 96-104, 1960. J. J. Hopfield, Neural networks and physical systems with emergent collective computational abilities," Proceedings of the National Academy of Sciences 79 : 2554-2558, 1982. D. Ackley, G. Hinton and T. Sejnowski, "A learning algorithm for Boltzmann machines," Cognitive Science 9 : 147-169, 1985. D. Rumelhart, G. Hinton & R. Williams, "Learning internal representations by error propagation," Parallel Distributed Processing, Vol. 1., D. Rumelhart and J. McClelland Eds. Cambridge: MIT Press, pp. 318-362, 1986. DARPA, DARPA Neural Network Study, Chap. 8. AFCEA International Press, 1988. M. Minsky and S. Papert, Perceptrons, Expanded Edition. MIT Press, 1988. Chapitre 2 Le Cerveau, Bibliothque de la revue Pour la Science, ISBN 2-902918-24-7, 1982. R. Masland, "L'architecture fonctionnelle de la rtine," revue Pour la Science, pp.94-104, fvrier 1987. J. P. Changeux, L'homme neuronal, Collection Pluriel, Fayard, ISBN 2-01-009635-5, 1983. Chapitre 3 B. Zeigler,Theory of Modelling and Simulation, Malabar: Robert E. Krieger Publishing Company Inc, 1976. Chapitre 4 D. Hebb, cf. chp. 1. 117

F. Rosenblatt, cf. chp. 1. D. Rumelhart, G. Hinton & R. Williams, Parallel Distributed Processing, Vol. 1. Cambridge: MIT Press, 1986. J. L. Mc Clelland and D. E. Rumelhart, Explorations in Parallel Distributed Processing, a Handbook of Models, programs, and Exemples, MIT Press, Cambridge, 1988. Chapitre 5 C. Jutten, Calcul neuromimtique et traitement du signal, analyse en composantes indpendantes, thse de Doctorat d'tat, INPG, Grenoble, 1987. T. Kohonen, Self-Organization and Associative Memory ; Second Edition, Springer Series in Information Sciences, Vol. 8, Springer Verlag, Berlin , ISBN 3-540-18314-0, 1987. Chapitre 6 T. Kohonen, cf. chp. 5. Y. Coiton, Thse de Doctorat, Uiversit d'Aix-Marseille II, juillet 1992. Y. Coiton, J. C. Gilhodes, J. L. Velay and J. P. Roll, "A neural network model for the intersensory coordination involved in goal-directed movements," Biological Cybernetics, n 66, pp. 167-176, 1991. S. Dellaporta, Compression dimages par carte auto-organisatrice, rapport de DEA, USTL, Montpellier, juillet 1991. Chapitre 7 G. A.Carpenter and S. Grossberg, "The ART of Adaptive Pattern Recognition by a SelfOrganizing Neural Network," Proceedings IEEE, March 1988. S. Sehad, Rseaux neuronaux "ART", application la coalescence de donnes en gntique, rapport de DEA, Universitt de Montpellier II, 1992. Chapitre 8 C. Touzet et O. Sarzeaud, "Application d'un algorithme d'apprentissage par pnalit/rcompense la gnration de formes locomotrices hxapodes", Journes de Rochebrune, AFCET I.A., 20-24 janvier 1992. A. G. Barto & P. Anandan, "Pattern Recognizing Stochastic Learning Automata," IEEE Transactions on Systems, Man and Cybernetics, SMC-15 : 360-375, 1985. R. A. Brooks, "A robot that walks: Emergent behaviors from a carefully evolved network," Neural Computation 1(2) : 253-262, 1989. Chapitre 9 Y. le Cun, Modles Connexionnistes de l'Apprentissage, Thse de Doctorat, Universit Pierre et Marie Curie, Paris, France, 1987. 118

D. Rumelhart, G. Hinton & R. Williams, cf. chp 1. N. Giambiasi, R. Lbath & C. Touzet, "Une approche connexionniste pour calculer l'implication floue dans les systmes base de rgles", Proc. Neuro-Nmes 89, Nmes, France, EC2 (eds), ISBN 2-906899-29-1, novembre 1989. P. Handcock, "Data representation in neural nets: an empirical study," Proc. of the 1988 Connectionist Models Summer School, D. Touretzky & al. Eds, Morgan Kaufmann Publishers, ISBN 1-55860-033-07, 1988. Chapitre 10 A. Brons, G. Rabatel, F. Svila et C. Touzet, "Evaluation de la qualit des plantes en pots par un rseau multicouche, assist par des mthodes statistiques," Proc. Neuro-Nmes 91, Nmes, France, EC2 (eds), ISBN 2-906899-67-4, novembre 1991. F. Blayo et P. Demartines, "Algorithme de Kohonen, Application l'analyse de donnes conomiques," Bulletin SEV/VSE, Zurich, Suisse, 13 mars 1992. O. Sarzeaud, Y. Stephan et C. Touzet, "Application des cartes auto-organisatrices la gnration de maillage aux lments finis", Proc. Neuro-Nmes 90, Nmes, France, EC2 (eds), ISBN 2-906899-47-X, novembre 1990. Darpa, cf. chp. 1. Chapitre 11 C. Touzet et N. Giambiasi, S.A.C.R.E.N. : Systme d'Aide au Choix d'un Rseau de Neurones, rapport final du contrat ANVAR n A8801006JAL, Juillet 1989. D. Rumelhart, G. Hinton & R. Williams, cf. chp. 4. Chapitre 12 F. Blayo, Une implantation systolique des algorithmes connexionnistes, Thse de Doctorat n 904, EPFL, Lausanne, Suisse, 1990. Chapitre 13 R. D. Beer, Intelligence as Adaptive Behavior, An Experiment in Computational Neuroethology, Perspectives in Artificial Intelligence, Vol. 6, Academic Press, Inc., ISBN 012-084730-2, 1990. P. Maes, Designing Autonomous Agents, MIT/Elsevier, ISBN 0-262-63135-0, 1990. Chapitre 14 C. Touzet,Contribution l'tude et au dveloppement de modles connexionnistes squentiels, Thse de Doctorat, Universit des Sciences et Techniques du Languedoc, Montpellier, France, 1990.

119

Chapitre 15 Z. Kohavi,Switching and Finite Automata Theory , Second Edition, Computer Science Series, McGraw-Hill, 1978. R. Hecht-Nielsen, Neurocomputing, Redwood City: Addison-Wesley Pub. Co, ISBN 0-20109355-3, 1989.

120

17 Informations pratiques
Ouvrage gnraux Le groupe de recherche PDP (Parallel Distributed Processing), l'initiative de J. McClelland et D. Rumelhart, a publi deux ouvrages de rfrence (aussi appel le PDP ou "la bible") sur les modles connexionnistes : D. E. Rumelhart, J. L. Mc Clelland and the PDP Research Group, Parallel Distributed Processing : Explorations in the Microstructure of Cognition, Vol 1 : Foundations, Vol 2 : Psychological and Biological Models, MIT Press, Cambridge, Massachussets, London, England 1986. Quelques annes plus tard, ces deux auteurs ont rdigs un troisime ouvrage consacr l'tude des systmes parallles distribus qui propose maints programmes et exemples. Il est destin servir de support pour l'acquisition d'une certaine exprience pratique aux amateurs de rseaux neuronaux. En mme temps que le livre est fourni un ensemble de programmes pour la simulation des diffrents modles. Ces logiciels sont crits en C (le code source est fourni) sur deux disquettes de 51 /4 " au format MS-DOS et sont donc utilisables sur matriel PC. L'utilisateur est mme de modifier les programmes afin de les adapter ses dsirs. J. L. Mc Clelland and D. E. Rumelhart, Explorations in Parallel Distributed Processing, a Handbook of Models, programs, and Exemples, MIT Press, Cambridge, 1988. J. Anderson, E. Rosenfeld on dit un ouvrage qui regroupe pratiquement tous les articles de recherche important jusqu'en 1987 : J. Anderson, E. Rosenfeld, Neurocomputing : Foundations of research, MIT Press, Cambridge, Second printing, ISBN 0-262-01097-6, 1988. J. Hertz et al. ont publi un ouvrage introductif, prsentant une approche plutt thorique des rseaux neuronaux (nombreuses quations), trs clair et complet : J. Hertz, A. Krogh and R. Palmer, Introduction to the Theory of Neural Computation, A Lecture Notes Volume in the Santa-Fe Institute Studies in the Sciences of Complexity. Redwood City: Addison-Wesley Publishing Company, ISBN 0-201-51560-1, 1991. L'approche employe par J. Dayhoff est plus biologique, et trs pdagogique : J. Dayhoff Neural Networks Architectures ; Van Nostrand Reinhold, ISBN 0-442-20744-1, 1990. Neural Networks : le journal de INNS (cf. association) est "la" revue scientifique du domaine ( Pergamon Press Inc. 395 Saw Mill River Road, Elmsford, New York 10523, USA). IEEE Neural Networks : journal de l'IEEE, prsente le mme intrt que le prcdent (445 Hoes Lane, P. O. Box 1331, Piscataway, NJ 08855-1331, USA) 121

Il existe de nombreux autres journaux consacrs directement au connexionnisme, ou ses domaines d'applications privilgis. Contacts en France et l'tranger (liste non exhaustive) News group : comp.ai.neural-nets INNS-L@UMDD.bitnet (dpend de l'INNS)

Associations : IEEE Neural Networks Council, cf. son journal. INNS International Neural Network Society, Suite 300, 1250 24th Street, NW, Washington, DC 20037, USA. (Souscrire l'association permet de s'abonner en mme temps la revue pour un prix modique). NSI : Association Neurosciences et Sciences de l'Ingnieur, LTIRF, 46 avenue F. Viallet, Grenoble. (Organise chaque anne, soit les journes NSI, soit une cole de printemps). AFCET, Groupe de travail "Information et Systmes", 156 bd. Priere, 15017 Paris. Club CRIN "Rseaux de neurones", Association ECRIN, 28, rue Sainte Dominique, 75007 Paris. (Destine favoriser les changes Recherche-Industrie). Greco CNRS (Groupes de Recherches Coordonnes), Projet Commande Symbolique et Neuromimtique. ACTH : Association des Connexionnistes en THse, LERI, Parc G. Besse, 30000 Nmes. ARC : Association pour la Recherche Cognitive, ENST, 46 rue Barrault, 75634 Paris Cedex 13. Enseignements : Ecole Polytechnique Fdrale de Lausanne (EPFL), cours Postgrade en Informatique Technique, rseaux de neurones biologiques et artificiels (180h), Dpt. informatique, INEcublens, 1015 Lausanne, Suisse. Ecole pour les Etudes et la Recherche en Informatique et Electronique (EERIE), cours de spcialisation 3me anne d'ingnieur (60h depuis 1990), Parc G. Besse, 30000 Nmes, France. Institut National Polytechnique de Grenoble, Sup-Telecom (Paris), Ecole des Mines dAls, Ecole Suprieure de Physique Chimie Industrielle (Paris), etc, les enseignements de DEA Neurosciences, Sciences Cognitives, etc. Manisfestation : Neuro-Nmes : les rseaux de neurones et leurs applications. Chaque anne Nmes depuis 1988, en novembre (confrence scientifique, cours, exposition de matriels). Contact : EC2, 269-287, rue de la Garenne, 92000 Nanterre, France. 122

Entreprise : Neurosystmes, Parc Scientifique Georges Besse, 30000 Nmes. La plupart des grandes entreprises (Thomson-CSF, Philips, Siemens, Alcatel, CNET, CEALETI, etc.) ont aussi leur propres services de recherches et dveloppements.

123

18 Petit glossaire
Les dfinitions fournies ici ont pour objectif d'clairer la lecture de cet ouvrage. Leurs validits est, a priori, restreintes. Affrent : Apprentissage : Entre. L'apprentissage est une phase du dveloppement d'un rseau de neurones durant laquelle le comportement du rseau est modifi jusqu' l'obtention du comportement dsir. L'apprentissage neuronal fait appel des exemples de comportement. Auto-association : La clef est identique la rponse. Base d'apprentissage : Exemples utiliss pour l'apprentissage, reprsentatifs du comportement de la fonction raliser. Base de test : Exemples diffrents de ceux de la base d'apprentissage, utiliss pour mesurer les performances de la gnralisation. Champ rcepteur : Rgion de l'espace d'entre en relation avec un neurone (particulirement en vision). Clusterisation : Terme driv de l'anglais identique coalescence, qui lui est franais. Coalescence : Regoupement des donnes. Comptition : Entre les neurones par des connexions latrales inhibitrices (exemple : ART, carte auto-organisatrice). Cognition : Ensemble des sciences dont l'objectif est la comprhension du conscient (Neurosciences, Informatique, Psychologie, etc.). Connexionnisme : Discipline dfinie par l'utilisation des rseaux de neurones artificiels pour l'ingnieur. Dendrite : Une! Effrent : Sortie. Emergence : Il y a mergence lorsque aapparait une proprit nouvelle non directement prdictible depuis la composition des lments constitutifs ("la somme est suprieure l'ensemble des parties"). Ethologie computationelle : Utilisation de l'outil informatique pour l'tude du comportement animal (en particulier pour raliser des simulations). Gnralisation : Principal intrt des rseaux de neurones artificiels. Capacit rpondre correctement des situations inconnues (c.a.d. n'apparaissant pas dans la base d'apprentissage). Htro-association : La clef est diffrente de la rponse. Informatique : Science du traitement automatique de l'information, plus ancienne que les ordinateurs. 124

Mmoire adressable par son contenu, la diffrence des mmoires plus classiques ou l'adresse est requise. Neuromimtique : Discipline dfinie par l'utilisation des rseaux de neurones artificiels pour valider des hypothses biologiques par le neuroscientiste (!). Neurone : Unit de traitement de l'information dans le cerveau, au nombre mille milliards environ. Neurosciences : Ensemble des sciences ayant pour objectif l'tude du cerveau, depuis le niveau molculaire jusqu'aux comportements sociaux en passant par les rseaux de neurones (Histologie, Neuropsychopharmacologie, Neurophysiologie, Ethologie, Psychologie, etc.). Organisation : Ce n'est pas mettre de l'ordre! C'est , au sens biologique, gnrer de la vie. Pattern matching : Terme anglais identifiant l'opration de mise en correspondance de deux formes. Processeur lmentaire : Allusion au processeur de calcul (en beaucoup plus simple), aussi appel neurone ou cellule. Rseaux de neurones artificiels : Rseaux fortement connects de processeurs lmentaires fonctionnant en parallle. Chaque processeur lmentaire calcule une sortie unique sur la base des informations qu'il reoit. Toute structure hirarchique de rseaux est videmment un rseau. Supervis : Les poids sont modifis en fonction de la sortie dsire. Non supervis : Les sorties dsires sont inconnues, les entres sont projetes sur l'espace du rseau. Synapse : Jonction entre deux neurones, trs complexe au niveau des mcanismes chimiques mis en oeuvre ; outrageusement simplifie dans les modlisations. Vie artificielle : L'objectif de cette nouvelle (!) discipline est de crr des tres artificiels. Le connexionnisme est une des techniques impliques.

Mmoire associative :

125

Adaline 7 Adaptive Resonance Theory 58 analyse de donnes 82 aplysie 16 application 80 apprentissage 33 apprentissage par renforcement 62 approche algorithmique 3 architecture volutive 58 arrangement spatial optimal 47; 48 ART1 58 auto-apprentissage 84 auto-associatives 41 axone 11 base d'apprentissage 73; 83 base de test 73 beaut 82 carte auto-organisatrice 44; 82; 86 cartes somatotopiques 48 cerveau 11 coalescence 61 codage en frquence 16 codages 71 colonne corticale 46 colonnes de dominance oculaire 20 comptition 44 compression d'image 51 compression dimage 85 connexion complte 25; 28 connexionnisme 6; 8; 68; 82; 122 connexions locales 24 connexions rcurrentes 24 cot 66; 112 cyclamens 82 dendrites 11 diagnostic 79 domaines d'application 79 environnement de dveloppement 91 fonction de transfert 23 formation 10 Grossberg 7; 58 habituation 17 Hebb 6; 21; 33; 36; 42; 45 htro-associatives 41 homonculus 48 Hopfield 7; 84 infrence floue 68 informatique 3 inhibition latrale rcurrente 29 Ising 8 Kohonen 7; 41; 45; 57; 103 le Cun 65; 79 Machine de Boltzmann 8 maillage 85 Mc Culloch et W. Pitts 6 mmoires associatives 41 Minsky 7 126

mise en correspondance 79 MYCIN 75 NETtalk 67; 99 Neuro-Nmes 8; 123 neuromimtique 6 neurone 11 non supervis 33 paramtres 67 Partition 38 Perceptron 25; 36; 50 potentiel d'action 12 prdiction 81 qualitatif 62 quantification vectorielle 52 rseau multicouche 24; 26; 66; 84 rseaux de neurones artificiels 6; 94 rtine 19 rtropropagation 8 rtropropagation de gradient 7; 8; 65; 79; 82; 88; 97; 100; 108; 115 robot 50 Rosenblatt 7 SACREN 92 sensibilisation 17 sigmode 66 simulateur 91 stochastiques 62 supervis 33 synapse 11 systme hybride 68 systmes experts 3 vision et les tages de traitement 19 voisinage 46 Widrow 7

127

Vous aimerez peut-être aussi