LE RESEAU DE KOHONEN Apprentissage dans le cas où la fonction de voisinage est une gaussienne Réalisé par: (TADG5) Bouthayna Ed-Dahmouni Adil Bouchana Naoufal El Issaoui Abdelmoughit Idrissi Badssi Encadré par : Mme A.Majda Table des matières 1- Présentation ........................................................................................................................................................................ 2 2- Mécanisme d’apprentissage ......................................................................................................................................... 2 Des neurones spécialisés : ............................................................................................................................................. 2 Interaction latérale entre neurones........................................................................................................................... 2 3- Synthèse générale ............................................................................................................................................................. 2 4- Algorithme d’apprentissage d’une carte de Kohonen........................................................................................ 3 1- Présentation La carte topologique auto-adaptative de Kohonen, également appelée " Self-Organizing Map " ( SOM ) est un réseau à compétition. Cette carte permet de représenter sur un petit nombre de dimensions la structure présente dans des données de haute dimensionnalité. C’est une technique de pré-traitement fort utile car il permet de diminuer l’espace de représentation. La carte topologique est composée essentiellement d'une couche compétitive de neurones de sortie. Ces neurones sont alimentés par une couche de neurones d'entrée. La règle d'apprentissage de la carte est non supervisée. 2- Mécanisme d’apprentissage Kohonen s'est basé sur des observations biologiques concernant la spécificité du rôle joué par certains neurones ainsi que les mécanismes d'interactions entre neurones. Des neurones spécialisés : D'après des études neuro-biologiques, certaines cellules nerveuses ont des rôles bien spécifiques dans les systèmes de perception. Kohonen en retire donc l'idée de créer un réseau tel que chacun des neurones qui le composent, réponde d'une manière spécifique à un type de stimulus. Il appelle ce réseau "réseau à réponses localisées". Prenons un exemple simple. Dans la reconnaissance de caractères, chaque neurone correspondra à un caractère de l'alphabet. Interaction latérale entre neurones Il a été montré qu'entre les neurones qui recevaient les signaux des cellules réceptrices, il existait un mécanisme d'interaction latérale qui dépendait de la distance entre les neurones concernés. Dans une zone latérale proche du neurone vainqueur, les neurones qui lui sont connectés ont une action excitatrice; dans un voisinage plus lointain, leur action est inhibitrice; l'action des neurones les plus éloignés est négligeable. Plutôt que d'entraîner uniquement le neurone vainqueur, tous les neurones dans le voisinage étendu du neurone vainqueur ont le droit à un apprentissage. 3- Synthèse générale Chaque cellule du réseau doit correspondre à un stimulus spécifique; L'interaction latérale entre les neurones doit provoquer la formation d'amas de neurones excités autour du neurone le plus activé par le stimulus; Pour aboutir à un tel réseau, la règle d'apprentissage proposée par Kohonen se décompose en deux étapes : sélection du neurone qui correspondra à un type de signal d'entrée donné; augmentation de l'activation de ce neurone et du groupe de neurones qui l'entoure lorsque ce signal d'entrée est présenté, ce qui revient à accroître la correspondance entre ce neurone et son voisinage avec le signal d'entrée considéré. 4- Algorithme d’apprentissage d’une carte de Kohonen Le modèle des cartes topologiques est inspiré d’une structure neuronale présente dans certaines aires corticales. Les neurones sont organisés en couches, et, à l’intérieur de chaque couche, chaque neurone émet des connexions excitatrices vers ses voisins les plus proches, et des connexions inhibitrices vers les neurones plus éloignés. Tous les neurones reçoivent les mêmes entrées. Les principaux paramètres de ce modèle sont: le nombre de neurones, le maillage des unités de la carte, la topologie de la carte, tore ou plane le taux d'apprentissage, le voisinage, et les fonctions qui déterminent sa décroissance dans l'espace et dans le temps, le rayon de propagation, le nombre d'itérations, le nombre de phases d'apprentissage. Kohonen a simulé le comportement de ce type de structure, et a montré qu’il peut être approximé par l’algorithme suivant : Avec W(0) le vecteur poids à l’instant t=0 ητ est le taux d’apprentissage final η taux d’apprentissage P(t) designe le stimulus d’apprentissage au temps t Λ g(t) represente le voisinage au temps t Cet algorithme consiste à échantillonner les stimuli d’apprentissage jusqu’à l’atteinte d’un certain critère d’arrêt. Celui-ci est le plus souvent spécifié par un nombre maximum d’itération tmax mais peut aussi tenir compte de la stabilité des poids. Par exemple, lorsque maxi ||∆iw|| < ε durant plusieurs itérations, on peut décider arbitrairement de stopper l’apprentissage puisque le réseau modélise suffisamment bien l’espace des entrées. A chaque itération, on détermine le neurone gagnant (le plus proche) et on déplace celui-ci, ainsi que son voisinage actuel, dans la direction du stimulus courant en utilisant le taux d’apprentissage courant. Une variante que l’on peut aussi rencontrer consiste à remplacer l’équation de mise à jour des poids par l’expression suivante : Où : vient remplacer le voisinage Λg par une fonction πi,g qui dépend de la distance topologique di,g (en nombre d’arêtes dans la carte) entre le neurone i et le neurone gagnant g. La fonction πi,g a une forme gaussienne telle qu’illustrée à la figure ci-dessous. Figure 1 Fonction de voisinage gaussienne Tout comme dans le cortex, les neurones sont reliés les uns aux autres, c'est la topologie de la carte. La forme de la carte définit les voisinages des neurones et donc les liaisons entre neurones. La fonction de voisinage décrit comment les neurones dans la proximité du vainqueur sont entraînés dans le mouvement de correction et force les neurones qui se trouvent dans le voisinage de s à rapprocher leurs vecteurs référents du vecteur d’entrée. Moins un neurone est proche du vainqueur dans la grille, moins son déplacement est important. On utilise en général la fonction gaussienne qui se trouve à réduire le taux d’apprentissage effectif du neurone i par rapport à son éloignement topologique du neurone gagnant. Tout comme pour le voisinage Λg, il importe que le rayon d’action de πi,g décroisse dans le temps de manière à ce que vers la fin de l’apprentissage, seul le neurone gagnant subisse une mise à jour significative de son vecteur gw. Pour ce faire, par exemple, on peut faire décroître exponentiellement la variance σ de la gaussienne en fonction du temps : où σ0 définit la variance au temps initial.