Carte auto adaptative - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

Carte auto adaptative ou auto organisatrice est une classe de réseau de neurones artificiels fondée sur des méthodes d'apprentissage non-supervisées.
On la désigne souvent par le terme anglais self organizing map (SOM), on encore carte de Teuvo Kohonen (en) du nom du statisticien ayant développé le concept en 1984.

Elles sont utilisées pour cartographier un espace réel, c'est-à-dire pour étudier la répartitions de données dans un espace à grande dimension. En pratique, cette cartographie peut servir à réaliser des tâches de discrétisation, quantification vectorielle ou classification (voir un exemple sur le site [1] pour la discrétisation de l'espace de travail d'un robot).

Idée de base

Ces structures intelligentes de représentation de données sont inspirées, comme beaucoup d’autres créations de l’intelligence artificielle, par la biologie ;
Il s'agit de reproduire le principe neuronal du cerveau des vertébrés : des stimuli de même nature excitent une région du cerveau bien particulière. Les neurones sont organisés dans le cortex de façon à interpréter tous les types de stimuli imaginables. De la même manière, la carte auto adaptative se déploie de façon à représenter un ensemble des données, et chaque neurone se spécialise pour représenter un groupe bien particulier des données selon les points communs qui les rassemblent. Elle permet une visualisation en dimension multiple de données croisées.

Techniquement, la carte réalise une quantification vectorielle de l'espace de données. Cela signifie discrétiser l'espace ; c'est-à-dire le diviser en zones, et assigner à chaque zone un point significatif dit vecteur référent

Architecture SOM.JPG

Architecture des cartes auto-organisatrices. L'espace d'entrée V est divisé en plusieurs zones. wr représente un vecteur référent associé à une petite zone de l'espace V_{r}^{M} et r(2,3) représente son neurone associé dans la grille A. Chaque zone peut être adressée facilement par les index des neurones dans la grille.

Algorithme d'apprentissage

Principe

Après une initialisation aléatoire des valeurs de chaque neurones on soumet une à une les données à la carte auto adaptative. Selon les valeurs des neurones, il y en a un qui répondra le mieux au stimulus. Celui dont la valeur sera la plus proche de la donnée présentée. Alors ce neurone sera gratifié d'un changement de valeur pour qu'il réponde encore mieux à un autre stimulus de même nature que le précédent. Par là même, on gratifie aussi un peu aussi les neurones voisins du gagnant avec un facteur multiplicatif du gain inférieur à un. Ainsi, c'est toute la région de la carte autour du neurone gagnant qui se spécialise. En fin d'algorithme, lorsque les neurones ne bougent plus, ou très peu, à chaque itération, la carte auto organisatrice recouvre toute la topologie des données.

Algorithme som.JPG

Représentation de l'algorithme d'auto-organisation pour le modèle de Kohonen. Chaque neurone a un vecteur référent qui le représente dans l'espace d'entrée. Un vecteur d'entrée v est présenté. v sélectione le neurone vainqueur s, le plus proche dans l'espace d'entrée. Le vecteur référent du vainqueur ws est rapproché de v. Les vecteurs référents des autres neurones sont aussi déplacés vers v, mais avec une amplitude moins importante.

Formalisation mathématique

La cartographie de l'espace d'entrée est réalisée en adaptant les vecteurs référents wr. L'adaptation est faite par un algorithme d'apprentissage dont la puissance réside dans la compétition entre neurones et dans l'importance donnée à la notion de voisinage.

Une séquence aléatoire de vecteurs d'entrée est présentée pendant l'apprentissage. Avec chaque vecteur, un nouveau cycle d'adaptation est démarré. Pour chaque vecteur v dans la séquence, on détermine le neurone vainqueur, c'est-à-dire le neurone dont le vecteur référent approche v le mieux possible:

 s = \phi _{w}(v)= \arg \min_{r\in A} \left\|v - w_{r} \right\|

Le neurone vainqueur s et ses voisins (définis par une fonction d'appartenance au voisinage) déplacent leurs vecteurs référents vers le vecteur d'entrée

  w_{r}^{t+1}=w_{r}^{t}+ \Delta w_{r}^{t}

avec

  \Delta w_{r}^{t} =  \epsilon \cdot h \cdot (v - w_{r}^{t}),

ε = ε(t) représente le coefficient d'apprentissage et h = h(r,s,t) la fonction qui définit l'appartenance au voisinage.

Le coefficient d'apprentissage définit l'amplitude du déplacement global de la carte.

Sur la notion de voisinage

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éfinie les voisinages des neurones et donc les liaisons entre neurones.

La fonction de voisinage décrit comment les neurones dans la proximité du vainqueur s sont entraînés dans le mouvement de correction. On utilise en général :

 h(r,s,t)= \exp \left( - \frac{\left\| \vec{r} - \vec{s} \right\|}{2 \sigma^{2}(t)} \right),

σ s'appelle coefficient de voisinage. Son rôle est de déterminer un rayon de voisinage autour du neurone vainqueur.

La fonction de voisinage h force les neurones qui se trouvent dans le voisinage de s à rapprocher leurs vecteurs référents du vecteur d'entrée v. Moins un neurone est proche du vainqueur dans la grille, moins son déplacement est important.

La correction de vecteurs référents est pondérée par les distances dans la grille. Cela fait apparaître, dans l'espace d'entrée, les relations d'ordre dans la grille.
Pendant l'apprentissage la carte décrite par les vecteurs référents du réseau évolue d'un état aléatoire vers un état de stabilité dans lequel elle décrit la topologie de l'espace d'entrée tout en respectant les relations d'ordre dans la grille.

Page générée en 0.114 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise