Brevet FR2679355A1 — publié le 19930122

"PROCèDE D'APPRENTISSAGE DANS UN DISPOSITIF DE CLASSIFICATION DE DONNEES COMPRENANT UN RESEAU DE NEURONES ET DISPOSITIF DE CLASSIFICATION POUR LA MISE EN OEUVRE DE CE PROCèDE" La présente invention concerne un procédé d'apprentissage dans un dispositif de classification de données comprenant un réseau de neurones à (N+1) entrées et K sorties1 à l'aide d'une base d'apprentissage constituée d'un ensemble de V vecteurs de dimension N en correspondance avec N caractéristiques d'objet, lesdits vecteurs devant être classés en un nombre de classes inférieur ou égal au nombre maximal de classes K. L'invention concerne également un dispositif de classification de données prévu pour la mise en oeuvre d'un tel procédé. Cette invention est utilisable dans de nombreux domaines et notamment dans celui de la segmentation d'images. Depuis quelques années, un nombre croissant de recherches approfondies ont été engagées dans le domaine du traitement de l'information à l'aide de réseaux de neurones. A l'inverse des ordinateurs qui fonctionnent de manière séquentielle et synchrone, un réseau de neurones1 dans le cadre d'une interprétation neurobiologique, est censé fonctionner un peu à l'image du cerveau humains avec un stockage des informations qui ntest plus limité à des mémoires spécifiques localisées mais qui au contraire se trouve réparti à travers le réseau. Les avantages des structures à base de réseaux de neurones sont alors essentiellement le traitement parallèle et asynchrone7 la capacité d'apprentissage1 une faible sensibilité au bruits et une forte résistance aux pannes (du fait de la répartition des éléments porteurs de 1' information). Un neurone, cellule élémentaire du réseau7 est dans sa version la plus simple1 comme le montre la représentation de la figure lî un automate à seuil (donc non linéaire) délivrant un signal de sortie Y (ou activaticn1 ou potentiel de sortie)1 dont l'ar.plitude dépend du résultat de la comparaison entre d'une part un seuil donné S et d'autre part une somme de signaux qui parviennent au neurone en provenance d'une série d'éléments placés en amont et qui sont eux-mêmes formés à partir de signaux d'entrée x17 x2,..., xN pondérés par des coefficients respectifs wi, W2t..., wN dits coefficients synaptiques. Selon cette modélisation désormais traditionnelle, le neurone effectue donc une somme pondérée des potentiels d'action qui lui parviennent (c'est-à-dire de valeurs numériques représentant ltétat des neurones ayant émis ces potentiels), puis s'active à son tour si cette somme pondérée dépasse un certain seuil, le neurone ainsi activé transmettant une réponse (un neurone non activé ne transmet rien) sous forme d'un nouveau potentiel d'action. Parmi les types de réseaux de neurones les plus répandus, on distingue notamment les réseaux en couches, dans lesquels les neurones sont regroupés en couches successives où chaque neurone est connecté à tous les neurones de la couche suivante, l'information passant de la couche d'entrée aux éventuelles couches suivantes (couches alors dites cachées) jusqu'à la couche de sortie. De tels réseaux, dits multi-couches, s' avèrent particulièrement adaptés à la résolution de problèmes de classification. On peut en effet considérer toute une série d'exemples à classer, chaque exemple, défini par un ensemble de données, pouvant être qualifié de vecteur de données dans un hyper-espace et les données attachées à cet exemple constituant dans cet hyper-espace les coordonnées dudit vecteur. Compte tenu d'un 4 vecteur d'entrée déterminé X, on montre alors que les activations de sortie d'un réseau multi-couches fournissent 4 des valeurs de probabilité a posteriori, notées P(C/X), d'appartenance à différentes classes possibles, selon le vecteur d'entrée correspondant à chaque exemple. Pour effectuer un traitement donné, un réseau de neurones doit cependant, au préalable, apprendre à I'effectuer, au cours d'une étape appelée apprentissage : dans un premier temps, comme le réseau de neurones, dont les caractéristiques ne sont pas encore adaptées à la tâche prévue1 va délivrer des résultats erronés, on détermine une erreur sur les résultats obtenus, puis, à partir d'un critère de correction, on modifie les paramètres du réseau (seuils et coefficients synaptiques) pour permettre à celui-ci de s'adapter progressivement aux informations d'entrée qui lui sont soumises. Cette étape de correction est réitérée sur le nombre d'exemples (ou vecteurs d'entrée) considéré comme nécessaire pour un apprentissage satisfaisant du réseau. Cette phase d'apprentissage, préalable à celle de fonctionnement normal du réseau, est dite supervisée lorsque l'erreur est évaluée par comparaison entre les résultats obtenus et ceux que l'on aurait dû obtenir qui sont dans ce cas connus à l'avance, et que les paramètres du réseau de neurones sont modifiés en fonction de cet état connu des sorties désirées. Dans la suite de la description t l'apprentissage dont il est question est dit au contraire non supervisé, les résultats à obtenir n'étant pas connus à l'avance soit parce qu'une telle connaissance préalable n'est pas possible, soit parce que le coût pour y parvenir est trop élevé. Un apprentissage non supervisé implique donc que l'attribution d'une classe à chacun des vecteurs ou prototypes d'apprentissage doit se faire automatiquement1 sans intervention humaine ni aucune connaissance préalable des sorties souhaitées. De nombreux documents ont décrit le principe de base de l'apprentissage non supervisé, par exemple les communications "Learning to recognize patterns without a tacher", IEEE-IT-13, n01, janvier 1967, pp.57-64, ou "Optimal unsupervised learning multicategory dependant hypotheses pattern recognition", IEEE-IT-14, n03, mai 1968, pp.468-470. La phase de fonctionnement après apprentissage est alors une phase de généralisation1 dans laquelle les paramètres du réseau de neurones, jugés corrects, sont figés. Au cours de cette phase, il est possible d'effectuer la classification d'autres prototypes que ceux de la base d'apprentissage1 à chacun d'eux correspondant en effet un état des sorties qui permet sa classification. En bref, au cours d'une telle phase, il s'agit essentiellement d'opérer la 4 partition d'un ensemble de vecteurs d'entrée X en diLférentes classes 3 = 1, 2, 3,..., K-i, K, le réseau de neurones devant à cet effet apprendre à délivrer pour chaque vecteur d'entrée (ou prototype) une activation qui, pour chaque neurone j, est l'estimation de la probabilité que ce prototype appartienne à une classe déterminée j. Dans l'application ici choisie de la segmentation d'images, un certain nombre d'éléments d'images, ou "pixels", servent de prototypes-exemples et permettent d'extraire des images considérées des caractéristiques texturales ou autres. Le réseau va apprendre progressivement à classer ces prototypes-exemples, puis généralisera au classement d'autres pixels de l'image. Un procédé d'apprentissage connu, dit des centres mobiles et particulièrement utilisé, est décrit notamment dans les articles "Cluster methodologies in exploratory data analysis", de R. Dubes et A.K. Jain, paru dans "Advances in Computing", vol.19 (1980), pages 113-228, et "Discriminant analysis and clustering", paru dans "Statistical Science", vol.4 (1989), pages 34-69. Un tel procédé consiste à séparer progressivement l'espace des vecteurs d'entrée en plusieurs zones selon la proximité de ce vecteur par rapport à différents points autour desquels se forment progressivement les nuages de vecteurs correspondant aux différentes classes. Le but de l'invention est de proposer un procédé d'apprentissage reposant non plus sur la formation de ces nuages autour de points qui en sont en quelque sorte les centres de gravité, mais sur la recherche des frontières entre ces nuages, c'est-à-dire de zones vides ou pratiquement vides de ces vecteurs d'entrée. A cet effet, l'invention concerne un procédé d'apprentissage tel que défini dans le préambule et caractérisé en ce que, pour chacun desdits vecteurs, on évalue les activations de sortie Yl(v), Y(v),..., Yi(v),..., Yk(v) du réseau, Yi représentant l'activation de la i-ième sortie du réseau de neurones, puis l'on décide d'entreprendre soit une étape d'adaptation du réseau par modification des poids et des seuils associés à chaque neurone pour rapprocher lesdites activations de valeurs idéales préalablement déterminées par tirage au hasard, soit une étape de désactivation par augmentation desdits seuils. L'invention concerne aussi, pour la mise en oeuvre de ce procédé, un dispositif caractérisé en ce qu'il comprend (A) une première mémoire de stockage des V vecteurs-prototypes de dimension N d'une base d'apprentissage constituée en correspondance avec N caractéristiques d'objet, ladite mémoire étant associée, pour la définition de l'ordre de présentation desdits vecteurs-prototypes au processeur neuronal, à un séquenceur lui-même commandé par un processeur maître recevant les informations de définition de ladite base d'apprentissage (B) entre ladite première mémoire et ledit processeur neuronal, un processeur de prétraitement pour la conversion desdits vecteurs-prototypes en vecteurs de dimension (N+1) (C) en sortie dudit processeur neuronal1 une deuxième mémoire de stockage des K activations de sortie de celui-ci pour chacun des vecteurs-prototypes, lesdites activations étant fournies à un processeur stochastique pour la détermination de la classe de chacun de ceux-ci par tirage au hasard, et ledit processeur stochastique étant suivi d'une troisième mémoire des classes ainsi déterminées, puis, en sortie de celle-ci, d'un processeur de détermination de la décision d'adaptation ou de désactivation à fournir au processeur neuronal, le processeur neuronal recevant également en provenance du processeur maître un signal de décision définissant le mode de fonctionnement "apprentissage" dudit processeur neuronal ou, lorsque ledit apprentissage est terminé, le mode de fonctionnement "évaluation des K sorties" de ce processeur. La communication "A neural unsupervised learning technique", faite par A.F. Atiya, Department of Electrical Engineering, California Institute of Technology, Pasadena, Ca91125 USA, lors du Lremier syrprsium organisé par la revue "The official journal of the International Neural Network Society" à Boston, 6-10 septembre 1988, décrit un apprentissage non supervisé conduisant, comme dans le cas de l'invention, à la détermination de régions de l'espace dans lesquelles les vecteurs d'entrée, ou prototypes, ont une densité aussi faible que possible, mais cette détermination est réalisée par des étapes d'adaptation du réseau de neurones qui diffèrent de celles du procédé et du dispositif ici décrits. En effet, dans le procédé selon ce document, la partition de l'espace des vecteurs d'entrée est réalisée en suivant un processus qui fait appel à un arbre binaire : à chaque étape de l'apprentissage, il y a séparation d'une partie de l'espace d'origine des vecteurs d'entrée en deux classes. On ne s'occupe donc, à chaque étape, que d'une petite partie du problème de partition. Cet inconvénient, conjugué à celui du fait que l'approche n'est pas stochastique, entraine une probabilité non négligeable d'aboutir à une partition finale de l'espace des vecteurs d'entrée qui n'est pas optimale. Au contraire, dans le cas de l'invention, le choix des classes est effectué de façon stochastique, avec, associée à chaque classe, une probabilité d'être choisie. Ainsi le réseau de neurones peut-il effectuer son apprentissage avec, pour sorties désirées, les valeurs résultant de ce choix stochastique, renouvelé après une ou plusieurs époques d'apprentissage jusqu'à ce que l'apprentissage soit achevé. Les particularités du procédé et du dispositif selon l'invention seront maintenant précisées de façon plus détaillée dans la description ci-après et dans les dessins annexés, donnés à titre d'exemple non limitatif dans le cas du type d'application cité plus haut et dans lesquels - la figure 1 est une représentation classique d'un neurone formel - la figure 2 montre un exemple de réalisation d'un dispositif de classification selon l'invention. La segmentation d'image consiste, on le sait, à tenter d'extraire d'une image des régions d'intérêt majeur. Par exemple, dans le cas d'images en provenance de satellites, les régions correspondent à différents types de terrains tels que zones urbaines, régions boisées, terres agricoles, réseau hydrographique, etc. (en général, pour réduire de façon significative la dimensionnalité du problème à résoudre et concentrer l'information en un petit nombre de paramètres, certaines caractéristiques de texture connues pour leur pouvoir discriminatoire en matière de classification sont extraites localement avant d'être fournies au réseau de neurones). La couche d'entrée du réseau comprend alors un nombre d'entrées individuelles correspondant exactement au nombre de caractéristiques sélectionnées, tandis que le nombre de neurones en sortie du réseau est égal au nombre de types de texture dans l'image. Ainsi, après la phase d'apprentissage, le réseau de neurones est capable d'opérer la classification de zones d'image suivant l'une des classes de texture sur lesquelles il a été entraîné, cette classe correspondant à celui des neurones de sortie dont l'activité est la plus élevée, c'est-à-dire qui donne la réponse la plus significative pour chacune des valeurs d'entrée. On va tout d'abord décrire le procédé d'apprentissage neuronal lui-même, pour la mise en oeuvre duquel l'utilisateur dispose d'une base d'apprentissage. Cette base est constituée d'un ensemble de V vecteurs (ou prototypes) constitués chacun de N caractéristiques d'un prototype d'objet, et ces V vecteurs, de dimension N et de classe inconnue, doivent être classés en un nombre de classes inférieur ou égal à un nombre maximal de classes K fixé par l'utilisateur, K étant bien entendu inférieur -ou égal- à V. On suppose d'autre part que l'on dispose d'un réseau de neurones à N+i entrées et à K sorties (il y a donc N+1 entrées individuelles dans la première couche du réseau, et K neurones dans sa dernière couche). La fonction non linéaire attachée à chaque neurone est, dans le cas présent, de la forme arctan, et la sortie d'un neurone de sortie (quelconque) est donnée par la formule suivante (où Yi va donc varier entre -1 et 1) 4 4 2 Ir Wi. X - Si Yi = - arctan (2 Ti i dans laquelle 4 X est le vecteur représentant le motif d'entrée, Wi est le vecteur-poids associé au neurone de sortie de rang i, Si est un seuil associé, et Ti est un coefficient de sensibilité du neurone concerné aux entrées, encore appelé température (par analogie avec certaines expériences thermodynamiques - les recuits - au cours desquelles les températures servent de paramètres de contrôle, les fortes températures permettant le nivellement des différentes sorties Yi, et l'abaissement de ces températures permettant au contraire de retrouver davantage de sensibilité). Avant présentation au réseau de neurones, chacun des vecteurs d'entrée ou prototypes, dont l'expression peut être écrite (t indiquant la transposition matricielle et v le numéro d'ordre du vecteur-prototype concerné) 4 t X(v) = CXlr X2 r r XN) subit ici deux transformations. La première de celles-ci est la suivante : chacune des dimensions xi, x2, . .., xN desdits vecteurs-prototypes est ramenée à une échelle unité -ou normalisée- par une simple transformation affine, de façon par exemple que sa moyenne soit nulle et sa variance gale à l'unité. En ce qui concerne la deuxième de ces transformations, on a vu plus haut que, du fait de la comparaison à un seuil, chaque neurone de sortie était capable de séparer l'espace des entrées en deux classes, c'est-à-dire en deux demi-espaces non bornés séparés par un hyperplan séparateur. La deuxième transformation subie a pour objet de permettre la séparation de cet espace des entrées en deux domaines dont l'un est borné1 et ce en effectuant un prétraitement qui consiste à ajouter une dimension supplémentaire à l'espace des entrées : chaque 4 vecteur-prototype X(v) de dimension N est transformé en un vecteur de dimension (N+i) en lui ajoutant cette dimension supplémentaire sous la forme d'une composante fixe h (de valeur égale à ou de l'ordre de l'unité si la normalisation a été effectuée selon l'exemple précédent). Ces deux opérations conduisent à ce que l'on présente désormais aux (N+1) entrées individuelles du réseau de neurones les grandeurs suivantes (a) aux N premières entrées du réseau, les N premières composantes du vecteur-prototype transformé, ce nouveau vecteur-prototype (celui qui sera maintenant présenté au réseau de neurones) étant noté (b) à la (N+i)ième entrée du réseau, la (Ni1)ième composante, notée Dans ces expressions, la grandeur présente au dénominateur est la norme globale du vecteur-prototype de dimension (N+i) ci-dessus créé (cette opération est équivalente à une projection de tous les points de l'hyperplan des vecteurs-prototypes d'entrée sur une hypersphère). Enfin, les poids (ou coefficients synaptiques) et les seuils du réseau de neurones sont initialisés au hasard, les normes des vecteurs synaptiques de chacun des neurones sont fixées à 1, en calculant la valeur courante du vecteur synaptique 4 (ou vecteur "poids") W1 de chaque neurone de sortie et en divisant ce vecteur "poids" et le vecteur "seuil" de ce 4 neurone par la norme IIWill , et les températures sont initialisées à des valeurs voisines de i. Après ces opérations, le réseau est prêt pour la phase d'apprentissage. Cette phase est réalisée de la façon suivante, en passant en revue tous les vecteurs-prototypes de la base d'apprentissage pour déterminer la classe de chacun d'eux, selon un professeur stochastique comme on va le voir (c'est-à-dire en faisant appel à un processus aléatoire). Tout d'abord, pour l'un quelconque v des vecteurs-prototypes de ladite base (ayant subi comme on l'a décrit les opérations de passage à la dimension N+1 et de fixation de norme), et en utilisant un générateur de nombres aléatoires, on tire au hasard, parmi les K classes, une classe k(v) que l'on associe au vecteur-prototype de numéro d'ordre v, avec une probabilité P(k(v) = i) d'attribuer à k(v) une des valeurs possibles i, ladite probabilité étant définie selon I'expression suivante avec i et j variant de i à K, et Yi(v) représentant l'activation de la i-ième sortie du réseau de neurones. D'autre part, ce tirage étant effectué, on définit des sorties dites idéales et notées Yi(V) = Y'i = +1, si k(v) = i Yi(v) = Y"i = -1, si k(v) * i Pour chaque itération d'apprentissage,c'est-à-dire pour chaque vecteur-prototype de la base devenant successivement le vecteur-prototype courant, on évalue alors, en fonction des (N+1) entrées présentées au réseau, les activations de sorties Yi(v) de ce réseau, pour i = 1, 2,..., K (K = nombre maximal de classes), et l'on décide, pour ledit vecteur-prototype courant de numéro d'ordre v, d'entreprendre l'une des deux actions suivantes (a) soit une étape dite d'adaptation, par modification des poids et des seuils associés à caque neurone, de manière à rapprocher les activations Yi(v) réellement obtenues des valeurs idéales Y'i ou Y"i définies ci-dessus, le taux d'apprentissage étant inversement proportionnel au nombre de vecteurs-prototypes attribué à chaque classe (b) soit une étape dite de désactivation par augmentation desdits seuils, de manière à rapprocher toutes les activations Yi(v) de la valeur minimale -1 (il s'agit donc là, en quelque sorte, d'une étape de désapprentissage, s'effectuant de manière similaire à l'apprentissage à cette exception près que les modifications sont des élévations des seuils, augmentant la proportion de désactivations des neurones de sortie). Ces opérations d'adaptation ou de désactivation s'effectuent de préférence sans variations trop importantes des coefficients synaptiques : pour cela, on décide que lesdites opérations s'effectuent tout en gardant quasiment constante la norme (somme des carrés) desdits coefficients pour un neurone de sortie déterminé. Ladite décision d'adaptation est prise lorsque le signe de Yi(v) est différent, pour au moins une des sorties i = 1 à K, de celui de la sortie idéale Y'i ou Y"i correspondante, ou bien par simple tirage au hasard lorsqu'au contraire ce signe de Yi(v) est le même que celui de ladite sortie idéale correspondante, et la décision de désactivation est prise à la suite dudit tirage au hasard (dans l'exemple ici décrit, la probabilité de la décision de désactivation est une valeur fixe P(anti) prise dans tout l'intervalle O - 1). Après autant d'étapes d'adaptation ou de désactivation que de vecteurs-prototypes dans la hase d'apprentissage, on réduit ensuite les températures Ti des neurones, par exemple en les multipliant par un même facteur inférieur à et voisin de l'unité, en vue d'une nouvelle époque d'apprentissage (en appelant donc époque d'apprentissage la période pendant laquelle on n'a présenté qu'une seule fois les V vecteurs-prototypes de la base) comprenant à nouveau autant d'étapes que de vecteurs-prototypes dans ladite base. La succession de telles époques d'apprentissage prend fin lors de la réalisation d'un événement déterminé, tel que, par exemple, le dépassement d'une valeur maximale du nombre d'époques d'apprentissage ou le passage d'un paramètre (valeur d'une erreur calculée, température d'un des neurones) au-dessous d'un seuil. Bien entendu, les sorties Yi(v) du réseau de neurones pour les différents vecteurs-prototypes définissent un nouvel ensemble de vecteurs-prototypes de dimension K, et cet ensemble peut constituer les vecteurs d'entrée d'une nouvelle base d'apprentissage, pour une nouvelle mise en oeuvre du procédé d'apprentissage décrit précédemment, en vue du regroupement des vecteurs-prototypes initiaux en un nombre de classes L inférieur à R. Un exemple de dispositif pour la mise en oeuvre du procédé qui vient d'être détaillé dans ses différentes étapes est maintenant décrit, en se référant à la figure 2. Le dispositif représenté sur cette figure comprend tout d'abord une première mémoire 10 de stockage des vecteurs-prototypes de la base d'apprentissage, ici une mémoire à accès aléatoire. Cette mémoire 10 est associée à un séquenceur 11, destiné notamment à définir (connexion A) de manière aléatoire l'ordre de présentation desdits vecteurs-prototypes et lui-même commandé (connexion B) par un processeur maître 12 qui a pour fonction de définir et suivre le déroulement de la mise en oeuvre du procédé. Ce processeur maître 12 est par exemple un ordinateur séquentiel et reçoit de l'utilisateur U (connexion C1) les informations de définition de la base d'apprentissage : nombre de vecteurs-prototypes V, nombre maximal de classes K, dimension N des vecteurs d'entrée, et aussi les vecteurs-prototypes dont le processeur maître 12 commande (connexion C2) l'envoi dans la première mémoire 10. Avant présentation au réseau de neurones, les vecteurs-prototypes reçoivent, on l'a vu, une dimension supplémentaire, dans un processeur de prétraitement 20 recevant lesdits vecteurs par la connexion D. Le réseau de neurones est présent dans un processeur neuronal 21 qui reçoit (connexion E) la sortie du processeur de prétraitement 20, c'est-à-dire les vecteurs-prototypes de dimension (N+1). Ce processeur neuronal 21 reçoit également, en provenance du processeur maître 12, un signal de décision (connexion F1) concernant le mode de fonctionnement, ledit mode étant l'ekécution soit de la phase de classification proprement dite, pendant laquelle est réalisée l'évaluation des K sorties du réseau de neurones dudit processeur neuronal 21 pour les (N+i) entrées données, soit de la phase d'apprentissage, pendant laquelle sont effectuées les opérations nécessaires pour rapprocher les sorties obtenues des sorties souhaitées. Ces sorties souhaitées, envoyées vers le processeur neuronal 21 par la connexion G1, sont définies à l'aide d'un processeur de détermination 33 délivrant également la décision d'adaptation ou la décision de désactivation (connexion G2). Ce processeurde détermination 33 reçoit (connexion H) d'une deuxième mémoire des classes de prototypes 32 la classe souhaitée pour chaque prototype. Une troisième mémoire 30, à accès aléatoire, est prévue en sortie (connexion L) du processeur neuronal 21 pour le stockage des K activations de sortie correspondant à chaque prototype d'entrée, c'est-à-dire pour le stockage de vecteurs de sortie de dimension K. Les K activations ainsi obtenues sont fournies (connexion M) à un processeur stochastique 31 qui détermine à partir d'elles la classe de chaque prototype, par tirage au hasard selon le procédé décrit précédemment. La mémoire 30 des vecteurs de sortie et la mémoire 32 des classes de prototypes reçoivent, comme la mémoire 10 et par la même connexion A, l'indication de l'ordre de présentation des vecteurs-prototypes au réseau de neurones du processeur neuronal 21. T, f^..cti-rn-...en. du dispositif ainsi constitué est le suivant. L'utilisateur U ayant introduit (connexion C1) les diverses informations précisées plus haut, le processeur maître 12 initialise (connexion F2) les températures des neurones, ici à une valeur élevée, voisine de i, puis envoie (connexion B) un signal de commande au séquenceur il pour que celui-ci définisse un ordre de séquencement de tous les exemples présents dans la base d'apprentissage. Le processeur maître 12 impose en outre (connexion F1) au processeur neuronal 21 le mode de fonctionnement "phase de classification". Pour chacun des V vecteurs-prototypes de la basè d'apprentissage présenté séquentiellement (après prétraitement dans le processeur 20) au processeur neuronal 21, le vecteur correspondant des K activations de sortie est évalué par ce processeur 21, puis stocké dans la troisième mémoire 30. Ces vecteurs de sortie étant ainsi évalués et stockés, le processeur stochastique 31 reçoit du processeur maitre 12 (connexion P) un signal de commande lui ordonnant l'opération de détermination des classes des V vecteurs-prototypes, par le jeu des étapes successives d'adaptation et de désactivation et des tirages au hasard. Les classes ainsi définies sont stockées (connexion R) dans la deuxième mémoire 32. Le processeur maître 12 envoie alors (par la connexion B) un signal de commande portant l'ordre d'exécution d'une époque d'apprentissage (on le rappelle ici, à température des neurones déterminée) sur tous les vecteurs-prototypes de la base et dans l'ordre défini précédemment pour ces vecteurs par le séquenceur 11, et impose (connexion F1) au processeur neuronal 21 le mode de fonctionnement "apprentissage". Cette époque comprend, pour chaque vecteur-prototype v, 1 'opération de présentation dudit vecteur à l'entrée du processeur neuronal 21, l'opération de détermination (par le processe.ir 33) des sorties souhaitées correspondantes et de la cisi d'adaptation ou de désactivation, et l'opération dait.entsssa > e elle-meme. Le même fonctionnement, c'est-à-dire la totalité des étapes décrites ci-dessus après celle d'initialisation des températures des neurones à une valeur voisine de 1r est alors repris plusieurs fois en réduisant progressivement les températures des neurones (connexion F2)r et ceci jusqu'à interruption de ce déroulement alterné des phases d'évaluation et d'apprentissage, soit lorsque le nombre d'itérations (époques d'apprentissage à température déterminée) dépasse une limite fixée à l'avance, soit lorsque ladite température des neurones passe au-dessous d'une valeur-limite prédéfinie. REVENDICATIONS 1. Procédé d'apprentissage dans un dispositif de classification de données comprenant un réseau de neurones à (N+1) entrées et K sorties, à l'aide d'une base d'apprentissage constituée d'un ensemble de V vecteurs de dimension N en correspondance avec N caractéristiques d'objet, lesdits vecteurs devant être classés en un nombre de classes inférieur ou égal au nombre maximal de classes K, caractérisé en ce que, pour chacun desdits vecteurs, on évalue les activations de sortie Yi(v), Y2 (v) r r Yi(v),..., Yk(v) du réseau, Yi représentant l'activation de la i-ième sortie du réseau de neurones, puis l'on décide d'entreprendre soit une étape d'adaptation du réseau par modification des poids et des seuils associés à chaque neurone pour rapprocher lesdites activations de valeurs idéales préalablement déterminées par tirage au hasard, soit une étape de désactivation par augmentation desdits seuils. 2. Procédé selon la revendication 1, caractérisé en ce que, pour chaque vecteur, lesdites valeurs idéales sont définies par Yi(V) = Y i = +1 si k(v) = i Yi(v) = Y"i = -1 si k(v) * i k(v) étant une classe tirée au hasard, et ce tirage étant établi selon les probabilités P(k(v) = i) d'attribuer à k(v) chacune des valeurs possibles i de i à K. 3. Procédé selon la revendication 2, caractérisé en ce que lesdites probabilités sont définies selon l'expression avec i et j variant de I à K. 4. Procédé selon l'une des revendications 2 et 3, caractérisé en ce que la somme des carrés des coefficients synaptiques composant le vecteur poids associé à chaque neurone de sortie reste constante ou pratiquement constante durant chacune étape d'apprentissage dudit procédé. 5. Procédé selon la revendication 4, caractérisé en ce que lesdites étapes d'évaluation d'activations puis de décision d'adaptation ou de désactivation sont précédées d'une étape de transformation de chaque vecteur de dimension N en un vecteur de dimension (N+1)1 à l'aide d'une composante fixe h, et d'une étape de fixation de norme, par division des vecteurs poids et seuil associé à chaque neurone de sortie par la norme dudit vecteur poids. 6. Procédé selon la revendication 5, caractérisé en ce que la décision d'adaptation est prise lorsque le signe de l'activation Yi(v), pour le vecteur considéré, est différente pour au moins une des sorties i = i à K, de celui de la sortie idéale Y'i ou Y"i correspondante, ou bien, dans le cas où ce signe est le même, en fonction du résultat binaire d'un tirage au hasard, et en ce que la décision de désactivation est, elle, prise dans le cas où ledit signe est le même et où le résultat dudit tirage au hasard est le tirage complémentaire du précédent. 7. Procédé selon la revendication 6, caractérisé en ce que le taux d'apprentissage est inversement proportionnel au nombre de vecteurs attribué à chaque classe. 8. Procédé selon l'une des revendications 6 et 71 caractérisé en ce que les sorties Yi(v) du réseau définissent un nouvel ensemble de vecteurs de dimension K apte à constituer les vecteurs d'entrée d'une nouvelle base d'apprentissage. 9. Dispositif de classification de données comprenant un processeur neuronal à (tel) entrées et K sorties et prévu pour la mise en oeuvre du procédé d'apprentissage selon l'une des revendications 1 à 8, caractérisé en ce qu'il comprend (A) une première mémoire de stockage des V vecteurs-prototypes de dimension N d'une base d'apprentissage constituée en correspondance avec N caractéristiques d'objet, ladite mémoire étant associée1 pour la définition de l'ordre de présentation desdits vecteurs-prototypes au processeur neuronal, à un séquenceur lui-même commandé par un processeur maître recevant les informations de définition de ladite base d'apprentissage (B) entre ladite première mémoire et ledit processeur neuronal, un processeur de prétraitement pour la conversion desdits vecteurs-prototypes en vecteurs de dimension (Ntl) (C) en sortie dudit processeur neuronal, une deuxième mémoire de stockage des K activations de sortie de celui-ci pour chacun des vecteurs-prototypes, lesdites activations étant fournies à un processeur stochastique pour la détermination de la classe de chacun de ceux-ci par tirage au hasard, et ledit processeur stochastique étant suivi d'une troisième mémoire des classes ainsi déterminées, puis, en sortie de celle-ci, d'un processeur de détermination de la décision d'adaptation ou de désactivation à fournir au processeur neuronal, le processeur neuronal recevant également en provenance du processeur maître un signal de décision définissant le mode de fonctionnement "apprentissage" dudit processeur neuronal ou, lorsque ledit apprentissage est terminé, le mode de fonctionnement "évaluation des K sorties* de ce processeur. 10. Dispositif selon la revendication 91 caractérisé en ce que le processeur neuronal reçoit également en provenance du processeur maitre un signal définissant un coefficient de sensibilité, dit température, constant pour chaque époque d'apprentissage, une époque d'apprentissage étant définie elle-même par la succession des opérations de présentation de tous les vecteurs de la base audit processeur neuronal, de détermination des sorties souhaitées, de décision d'adaptation ou de désactivation, et d'apprentissage, et ce jusqu'à interruption de la succession desdites époques d'apprentissage selon un critère prédéterminé.