FR 2661265 A1 19911025 FR 9005193 A 19900424 -J SYSTEME NEURONAL DE CLASSIFICATION ET PROCEDE DE CLASSIFICATION UTILISANT UN TEL SYSTEME La présente invention concerne un système neuronal de classification et un procédé de classification utilisant un tel système. Les réseaux neuronaux désignent dans le domaine de l'intelligence artificielle des techniques, inspirées du fonctionnement du cerveau, pour résoudre des problèmes de reconnaissance, de classification ou d'optimisation, et dans le domaine des circuits électroniques ou optiques, un certain type de circuits capables de réaliser des transformations sur des vecteurs ayant un nombre élevé de composantes. Pour classifier des objets, représentés par des signaux électriques et plus précisément par des vecteurs de signaux appliqués à l'entrée de réseaux neuronaux, il est connu de mettre en oeuvre une phase dite phase d'apprentissage De manière générale, cette phase consiste à configurer (c'est-à-dire à programmer) un réseau appelé aussi classifieur, qui réalise une fonction effectuant au mieux la classification envisagée en utilisant un ensemble de signaux, appelé base d'apprentissage, dont on connaît pour chacun l'appartenance à l'une des classes en lesquelles on veut les classifier Cette méthode est connue sous le nom d'apprentissage supervisé ou avec professeur. Plusieurs méthodes de codage des classes à reconnaître sur des cellules de sortie d'un système neuronal (ou de classification) sont possibles Une méthode largement utilisée consiste à attribuer une classe à chacune des cellules de sortie du système La classe qui sera attribuée à l'objet présenté en régime de classification sera celle correspondant à la cellule présentant la sortie la plus grande (règle du max) Cette méthode est très attractive par sa simplicité et l'aspect intuitif qui lui est lié (règle du max) Cependant, elle peut présenter des limitations importantes: ce type de codage peut augmenter la complexité du problème à résoudre. Ce type de codage peut conduire à un problème non linéairement séparable (du type de la fonction OU-exclusif XOR) alors qu'une solution du type linéairement séparable pourrait exister. Le temps de convergence, durant l'apprentissage, d'un algorithme de classification (par exemple l'algorithme de rétropropagation du gradient pour l'architecture neuronale la plus utilisée) est fonction de la complexité du problème: par exemple pour un problème linéairement séparable il peut n'être que d'une dizaine d'itérations tandis qu'une centaine d'itérations sont en moyenne nécessaires pour l'apprentissage de la fonction logique XOR Ceci souligne l'importance du codage des cellules de sortie du système neuronal ou de classification pour l'apprentissage. Néanmoins, si un codage performant est utilisé pour l'apprentissage, en phase de reconnaissance ou de classement il est souvent intéressant de pouvoir appliquer la règle du max qui permet notamment d'interpréter les sorties comme des probabilités d'appartenance de l'objet analysé à une des classes. On peut noter en outre que plus la tâche à résoudre par le système neuronal ou de classification est difficile, plus la structure du système risque d'être complexe Ce point est important en particulier pour la réalisation matérielle d'un système neuronal ou de classification En effet, par exemple pour les systèmes neuronaux, la difficulté de leur implantation parallèle réside dans le nombre d'interconnexions entre neurones. Avec la technologie classique actuelle une incompatibilité existe entre rapidité et nombre d'interconnexions (voir "DARPA Neural Network Study", AFCEA International Press, Février 1988) Les projections à court et moyen terme prédisent que des composants possédant des puissances de l'ordre de 109 opérations/seconde ne dépasseront probablement pas un taux de connexions supérieur à 10 interconnexions Un objectif intéressant est donc la simplification de l'architecture des systèmes neuronaux ou de classification, et plus précisément la réduction du nombre de cellules devant être totalement interconnectées. La présente invention propose une solution au problème du choix du codage de l'information en sortie du réseau neuronal, qui permet d'utiliser la classification par la règle du max. Selon l'invention, on propose un système neuronal destiné à la classification d'objets parmi N classes, ce système étant constitué par P réseaux neuronaux distincts capables de fournir chacun un résultat de classification parmi N classes, N étant inférieur à N, les P réseaux neuronaux étant aptes à subir des phases d'apprentissage respectives individuelles, et un module de traitement de signal étant connecté aux P réseaux neuronaux en phase de reconnaissance d'objets après apprentissage, pour fournir, à partir des sorties des P réseaux neuronaux, N sorties de résultats de classification parmi N. Autrement dit, l'invention propose de constituer P réseaux relativement simples (classification parmi N o N est petit et de préférence égal à 2), ces réseaux étant donc rapides, faciles à réaliser avec les technologies actuelles, et aptes à subir des phases d'apprentissage simples L'apprentissage se fait sur la classification parmi n, et lorsqu'on passe en phase opératoire, pour une classification d'objets inconnus, c'est un module de traitement de signal, connecté en sortie des P réseaux, qui effectue la détermination des résultats de classification parmi N en partant des résultats de classification parmi n. Le module de traitement est de préférence constitué d'une manière simple à l'aide de circuits effectuant des combinaisons linéaires (essentiellement des sommes et différences) de ses entrées, et de circuits effectuant une fonction de normalisation non linéaire à partir des combinaisons linéaires obtenues, cette fonction de normalisation fournissant N sorties dont la somme est constante et qui représentent ou peuvent être interprétées chacune comme une probabilité d'appartenance à une classe respective parmi N. Dans un exemple de réalisation préféré, les P réseaux neuronaux effectuent des classifications parmi deux classes (tout objet devant nécessairement être classé dans l'une des deux classes) ; il y a suffisamment de réseaux individuels pour que toutes les N classes soient représentées dans ces classifications élémentaires Le nombre P est donc compris entre N-1 (c'est le minimum) et N(N-1)/2 (c'est le maximum au delà duquel il y aurait redondance dans les P réseaux). Dans un mode de réalisation préférentiel, les P réseaux neuronaux comportent des neurones de sortie constitués chacun par un circuit assurant une fonction de sommation pondérée suivie d'un circuit assurant une fonction non linéaire saturante (constitution classique d'un neurone), et le module de traitement reçoit sur ses entrées les sorties des fonctions de sommation pondérée plutôt que les sorties des neurones après les fonctions saturantes. De préférence, la fonction non linéaire saturante en sortie des P réseaux est une fonction sigmoïde (de la forme ex /(l+ex)), et de préférence les combinaisons linéaires sont de la forme gi(X) = g (X) + fi j(X), o g (X) est une combinaison linéaire d'indice i, g (X) est une autre combinaison linéaire d'indice j, et f (X) est la sortie de sommation pondérée (avant fonction saturante) d'un réseau neuronal de classification d'objets parmi deux classes d'indices i et j respectivement. Enfin, de préférence, la fonction de normalisation non linéaire en sortie du module de traitement est de la forme P.(X) = egi(x)/lsomme des egi(x), pour i = 1 à NI et c'est cette valeur P (X) qui représente une probabilité d'appartenance de l'objet X à la iême classe parmi N Cette valeur peut évidemment être traitée par la règle du max pour fournir la classe d'appartenance. En résumé, l'invention propose une solution au problème du choix du codage de l'information en sortie du réseau neuronal, qui permet d'utiliser la classification par la règle du max Elle simplifie la tâche de classification lors de l'apprentissage en réduisant le problème de classification à N classes en problèmes de classification à petit nombre de classes donc plus simples. L'invention permet de simplifier la réalisation matérielle des réseaux neuronaux ou des systèmes de classification, faciliter la parallélisation des algorithmes pour leur implantation sur des ordinateurs parallèles à mémoire distribuée, ou sur des machines (ou des sites) physiquement différents, accélérer la convergence des algorithmes d'apprentissage par simplification de la tâche à résoudre, rajouter une nouvelle classe sans nécessiter un réapprentissage total. La présente demande de brevet a également pour objet un procédé de classification par un système neuronal tel que défini ci dessus, à P réseaux indépendants permettant chacun une classification parmi un petit nombre N de classes, caractérisé en ce que: on effectue une phase d'apprentissage pour configurer chacun des P réseaux neuronaux à partir de vecteurs d'entrée et de résultats de classification désirés dans les groupes de n classes, sans utiliser le module de traitement, on effectue les phases opératoires après apprentissage en utilisant le module de traitement pour obtenir les résultats de classification parmi N classes à partir de la reconnaissance effectuée par les P réseaux. L'invention sera mieux comprise et d'autres avantages apparaîtront grâce à la description qui va suivre, donnée à titre non limitatif, accompagnée des dessins annexés parmi lesquels: la figure 1 représente la structure classique d'un neurone, la figure 2 représente un graphe symbolique expliquant la condition permettant de déduire des fonctions de potentiel g.(X) aux noeuds du graphe à partir d'interactions f 1 j (X) entre les noeuds du graphe; la figure 3 représente un schéma d'un mode de réalisation préféré d'un système neuronal selon l'invention, la figure 4 représente une réalisation possible d'un module de traitement connecté en sortie du système neuronal. La figure 1 représente une structure classique d'un neurone comportant un certain nombre d'entrées ep, une cellule de calcul CC et une sortie S La cellule de calcul CC est formée d'un sommateur pondéré SP suivi d'un circuit à seuil CS (fonction de seuil franc ou plus souvent fonction non linéaire à saturation progressive) W est la valeur du poids reliant la pième p entrée e à la cellule de calcul. p Les réseaux de neurones peuvent être généralement agencés en couches de neurones Toutes les sorties des neurones d'une même couche pouvant être reliées à tous les neurones des couches suivantes, le nombre d'interconnexions peut être extrêmement élevé dès que le problème à résoudre est complexe; en particulier, pour un problème de reconnaissance dans lequel les vecteurs d'entrée comportent un nombre important de paramètres et dans lequel le nombre de classes à reconnaître est élevé, le réseau neuronal sera très complexe; il en découlera des difficultés de réalisation et une lenteur de fonctionnement et d'apprentissage. Un but de l'invention est de réduire la complexité du système neuronal. L'invention part de la remarque qu'il est possible dans certains cas (c'est-à-dire en respectant certaines conditions), de déduire la classification d'objets parmi N classes à partir de plusieurs classifications de ces mêmes objets parmi des classes prises deux à deux (ou plus généralement à partir de classifications parmi N o N est plus petit que N) Pour le montrer, on se limitera au cas o n= 2, mais le principe est généralisable à des cas o N est différent de deux; l'invention n'aura en général d'intérêt pratique que si N est largement inférieur à N. Bien entendu, la première condition minimale à respecter est que la classification des objets dans des couples de deux classes fasse intervenir toutes les N classes Si on oublie certaines classes, on n'a aucune chance de pouvoir déduire une classification 1 parmi N Une manière simple de respecter cette condition est par exemple de faire N-1 classifications à deux classes classification entre classes Cl et C, entre C 2 et C 3, etc, et enfin entre CN-1 et CN' D'autres solutions sont possibles, telles que par exemple des classifications C 1/C 2, C 1/C 3, etc, ou d'autres encore, pouvant éventuellement faire intervenir un nombre de classes P supérieur à N-1, et jusqu'à N(N-1)/2. La deuxième condition à respecter, qui permet d'établir les bases de la présente invention, est la suivante: si on veut qu'à partir d'une fonction fi j (X) faisant intervenir deux indices i, j on puisse définir des fonctions g 1 (X) ne faisant intervenir qu'un seul indice i, il faut qu'on puisse établir un graphe tel que celui de la figure 2, dans lequel les f i (X) représentent en quelque sorte des "interactions" entre noeuds du graphe alors que les g (X) représentent des "potentiels" des noeuds du graphe Et il faut que les circulations de ces "interactions" le long des boucles fermées du graphe soient nulles En effet, c'est alors qu'on pourra déduire n'importe quel potentiel g à partir d'un potentiel g, et de "l'interaction" fi, Dans le cas le plus simple qu'on puisse imaginer, les interactions se contentent de représenter la "différence de potentiel" algébrique entre deux noeuds, c'est-à-dire qu'on déduira un potentiel gi d'un potentiel gj voisin par la formule très simple gi gj = fi j. Cela revient à dire que pour permettre la déduction des fonctions g(X) à partir des fi, j(X) il faut pouvoir exprimer la fonction fi, j(X), qui fait intervenir deux indices i et j, sous forme d'une différence gi(X) g (X) de fonctions ne faisant intervenir chacune que l'indice i ou l'indice j mais pas les deux. On peut appliquer ce concept simple à un problème de classification de type probabiliste dans lequel on cherche des "probabilités" P (X) qu'un objet X appartienne à la classe Ci 1 1 parmi N classes C 1 à CN alors qu'on ne connaît que les probabilités Pi j(X) que l'objet appartienne à la classe Ci parmi deux classes possibles C et C seulement. On remarque d'abord que l'approche probabiliste permet d'écrire, en utilisant les règles de Bayes, l'égalité suivante ( 1) P i,j(X) = Pi(X) /l(Pi(X) + P(X)l Autrement dit, la probabilité pour que l'objet X appartienne à la classe C s'il n'y a que deux possibilités de classement C et C est liée directement aux probabilités 1 j pour que l'objet X appartienne à la classe C ou à la classe i C lorsqu'il y a N classes possibles. J On écrit de la même manière ( 2) P ji(X) = Pj(X)/l(Pi(X) + Pj(X)l pour la probabilité d'appartenance à la classe C parmi les deux seules classes possibles C i et C deux seules classes possibles C et C 1 l D'o il résulte que ( 3) Pi, j (X)/Pj, i(X) = Pi(X)/Pj (X) et par conséquent ( 4): loglP,j(X)l loglPji (X)l = loglPi(X)l loglPI(X)l Il y a donc des relations simples entre les probabilités d'appartenance à une classe parmi 2 et les probabilités d'appartenance à une classe parmi N, et ces relations peuvent s'exprimer sous formes de simples différences (de logarithmes). Selon l'invention, on propose la démarche suivante: on établit par P réseaux neuronaux distincts relativement simples (classification sur deux classes chacun) des résultats de classification pouvant être interprétés comme des probabilités Pi j(X) qui d'une part sont comprises entre O et 1 (comme toute probabilité) et d'autre pa:rt sont telles que Pi, j(X) soit égal à 1 Pj i(X); ces deux conditions expriment tout simplement que P est le résultat de type probabiliste d'une classification des objets X parmi deux classes, l'objet appartenant obligatoirement à l'une des deux classes; il y a P réseaux neuronaux distincts, et P est compris entre N-1 et N(N-1)/2; les P réseaux font obligatoirement intervenir toutes les classes C 1 à CN- ( 5) Pi (X) = 1 Pj i(X) (qui se déduit d'ailleurs de ( 1) et ( 2)) on définit alors, à partir de ces probabilités Pi, j(X), des fonctions fi, j (X) qui elles-mêmes pourront s'exprimer sous forme d'une différence gi(X) g (X); on choisit de préférence comme fonction fi j (X) la fonction ( 6) fi j(X) = log(Pi, j(X)) log( 1 Pi, j(X)) qui d'une part s'obtient très facilement à partir de P j(X) et qui d'autre part n'est pas autre chose que ( 7) fi,j(X) = log(pij(X)) log(Pji(X)) (puisque P i + Pii = 1) fi, j(X) peut alors s'écrire, d'après ( 4) ( 8) fi,j(X) = log(Pi(X)) log(Pj(X) ) ce qui s'exprime bien sous une forme de différence gi gj en écrivant tout simplement ( 9) gi(X) = log(PI(X)) + H(X) o H(X) est une fonction indépendante de l'indice i et nécessaire pour la normalisation des Pi(X). ensuite, puisque les probabilités P i sont fournies par les P réseaux et puisque l'on peut facilement connaître les fonctions f à partir des probabilités Pl (équation ( 6)), il ne reste plus qu'à déduire les gi(X) par simple circulation le long des boucles fermées du graphe de la figure 2: on se fixe un potentiel de départ quelconque (la référence est arbitraire), par exemple g 1 (X) = K; on en déduit les autres par des combinaisons linéaires du genre g 1 (X) = g 1 (X) + fi 1 (X) si fi, 1 (X) est fourni par un des P réseaux neuronaux, ou d'autres combinaisons linéaires correspondant aux circulations le long des boucles fermées du graphe de la figure 2 et utilisant celles des valeurs fi qu'on a obtenu à partir des P réseaux neuronaux de classification par deux. il enfin, ayant les valeurs g 1 (X), il ne reste plus qu'à les reconvertir en probabilités P i(X) puisque g.(X) = log (Pi(X)) + H(X) on calcule donc Pi(X) par la formule ( 10) Pi(X) = egi(X) H(X) cependant, comme on veut que les résultats probabilistes Pi(X) soient bien des probabilités d'appartenance à une classe parmi N dans laquelle la somme des probabilités d'appartenance à toutes les classes est égale à l'unité, on choisira de normaliser la fonction P (X) en l'écrivant plutôt sous la forme ( 11) Pi(X) = egi(X)/lsomme des egi(X), pour i = l à Nl ce qui revient tout simplement à identifier a posteriori la fonction H(X). On voit par conséquent qu'il peut exister un moyen simple de simplifier des réseaux neuronaux de classification lorsque le problème de classification est complexe et risque d'aboutir à des réseaux ayant un nombre d'interconnexions beaucoup trop élevé: on réalise plutôt un ensemble de P réseaux neuronaux élémentaires distincts recevant tous les mêmes vecteurs d'entrée représentant les objets X à classer et fournissant des résultats de type probabiliste de classifications parmi deux classes; ce sont des réseaux simples, donc rapides et d'apprentissage facile; on fait l'apprentissage sur ces réseaux, à partir de résultats de classification désirés dans les groupes de 2 classes Puis, quand l'apprentissage est terminé et que le réseau passe à sa fonction normale de reconnaissance et classification, on utilise les résultats probabilistes Pl È (X) des classifications sur deux classes pour les transmettre à un module électronique de traitement qui calcule les valeurs Pi(X) des probabilités d'appartenance à une classe parmi Ies N classes Le calcul est fait par l'intermédiaire des fonctions fi j(X) qui sont liées à Pi, j(X) et des fonctions gi(X) qui sont liées à fi (X) Il ne reste ensuite qu'à utiliser les sorties de ce module pour déterminer la classification, par exemple en utilisant la règle classique du max: la classe est celle qui correspond à la sortie Pi(X) la plus élevée parmi les N sorties du module. Cette démarche est généralisable pour le cas o N est différent de deux, à condition qu'on puisse établir, au moins d'une manière approchée, une règle de passage des probabilités d'appartenance à une classe parmi N aux probabilités d'appartenance à une classe parmi N. La fonction intermédiaire f qu'on a choisie de préférence et qui est fi j (X) = log(P M(X)) log( 1 Pl,(X)) 1,3 1,3 1, 3 est particulièrement intéressante car elle revient à dire que la probabilité Pi j(X) est une fonction sigmoide de fi j(X) ( 12) Pl j(X) = e fi,j(X)/l 1 + e fij(X)l Or, bien souvent, les neurones de sortie des réseaux neuronaux utilisent comme fonction non linéaire saturante des fonctions sigmoides de ce type pour établir, à partir d'une sommme pondérée S un résultat de classification de type probabiliste: la sortie probabiliste Z (après fonction non linéaire saturante) en fonction de la somme pondérée Y établie par le neurone (avant fonction non linéaire saturante) est de type Z = e Y/( 1 + e) Cela revient à dire qu'une manière très simple d'obtenir les fonctions f j(X) à partir des probabilités P j(X) est de constituer les P réseaux neuronaux élémentaires avec des neurones de sortie dans lesquels la fonction non linéaire saturante est une fonction sigmoïde, ces neurones de sortie fournissant les probabilités P (X), et de prendre alors comme valeur f j(X) la sortie du même neurone avant la fonction non linéaire saturante qui établit les Pl j (X) Cette sortie sera alors justement une valeur f (X) égale à la différence des logarithmes de Pi (X) et de 1 P i j(X) comme on le souhaite d'après l'équation ( 6). Cela évite d'avoir à réaliser un circuit de traitement spécifique pour établir à partir des P j (X) les fonctions f i (X) avant d'appliquer ces fonctions f j (X) aux entrées du module de traitement qui calcule les g (X) puis les Pi(X). On aboutit alors au mode de réali 3 ation préférentiel de l'invention qui est représenté à la figure 3. Dans la figure 3, les neurones ont été à titre d'exemple représentés sur quatre couches et sont figurés sous la forme de petits carrés tels que celui représenté sous la référence 1. Concernant les neurones de la dernière couche, on a distingué les circuits sommateurs SP des circuits à seuil CS et on suppose que la fonction de seuil est une fonction sigmoïde du type e 1 ( 1 + e'). Il y a P réseaux neuronaux distincts recevant tous les mêmes vecteurs d'entrée Par vecteur d'entrée on entend un ensemble de signaux à traiter par le réseau neuronal, cet ensemble représentant l'objet X à classer Chaque réseau neuronal comporte un neurone de sortie respectif N fournissant sur la sortie du sommateur pondéré SP la fonction f (X), et sur la sortie du circuit à seuil la probabilité Pl i(X) d'appartenance de l'objet X à une classe Ci parmi deux classes C et C Les valeurs P et f sont alors liées par la relation ( 6). On rappelle que si le circuit à seuil n'est pas de type sigmoide, il faut constituer les fonctions fi à partir des Pl j par un circuit spécifique établissant la relation ( 6). Les P sorties donnant les fonctions f i sont appliquées comme signaux d'entrée à P entrées d'un module de traitement 3 qui possède N sorties (une par classe possible) Sur ces N sorties sont établies les probabilités respectives d'appartenance de l'objet X aux différentes classes C 1 à C, ceci en fonction des relations liant les probabilités de classement parmi n aux probabilités de classement parmi N. La figure 4 permet de préciser la constitution du module de traitement ( 3) dans le cas simple qui est décrit à titre préférentiel, avec n= 2 On suppose par exemple que les P réseaux neuronaux fournissent des fonctions f 1,2 (X), f 1,3 (X), > f 1,N(X) mais ils pourraient aussi fournir d'autres fonctions telles que f 2 3, etc, la seule condition étant que les fonctions fournies permettent de décrire, dans le graphe de la figure 2, suffisamment de boucles fermées pour faire intervenir touts les indices de 1 à N Ce sont les boucles décrites qui définiront les combinaisons linéaires permettant de passer des f i (X) aux g (X). Dans ltexemple décrit à la figure 4, on établit une valeur arbitraire de signal (courant ou tension électrique par exemple) qui définira l'une des fonctions g (X) Par exemple g 1 (X) est pris arbitrairement égal à K. Le module comprend des circuits de sommation algébrique pour établir les combinaisons linéaires suivantes à partir de g 1 et des f:i : gi(X) = g 1 (X) f 1 i(X) pour tous les i. Et ensuite, à partir des combinaisons linéaires simples ainsi obtenues, le module de traitement comprend un circuit de normalisation non linéaire permettant de repasser aux probabilités P (X) constituant les sorties du module D'après la formule ( 11), on rappelle que dans le mode de réalisation préférentiel de l'invention, la fonction de normalisation non linéaire sera: Pi(X) = egi(X)/lsomme des egi(X), pour i = 1 à Nl Elle est effectuée dans un circuit de transformation non i O linéaire schématisé par un bloc référencé 31 qui reçoit les différentes combinaisons linéaires gi(X) établies dans le module Les sorties du circuit 31 sont les sorties du système neuronal selon l'invention Elles peuvent elles- mêmes être traitées par un circuit de comparaison définissant par la règle du max quel est le résultat final d'une classification parmi N. L'apprentissage du système neuronal de l'invention s'effectuera par apprentissage individuel de chacun des P réseaux neuronaux, la base d'apprentissage comprenant des vecteurs d'entrée et des classes désirées (en classification parmi deux classes possibles seulement) pour les objets représentés par ces vecteurs Le module 3 n'est pas utilisé pendant cette phase Les sorties P i (X) sont utilisées pour cette phase Après apprentissage, en phase de reconnaissance d'objets, le module 3 est connecté aux sorties donnant les f (X) et fournit les résultats désirés de classification parmi N. Le choix des couples de classes Ci, C définissant les tâches de chacun des P réseaux neuronaux peut être déterminé soit arbitrairement (pourvu que tous les indices 1 à N soient utilisés et qu'on puisse établir les boucles fermées désirées dans le graphe de la figure 2), soit en fonction du problème de classification précis à résoudre il peut en effet être avantageux de faire certaines comparaisons Ci, C; plutôt que d'autres pour faciliter la solution du problème de classification global parmi N. Par ailleurs, il peut se faire que les règles de choix des fonctions fi (X) et g (X), données rigoureusement dans 1,i j l'exemple simple décrit précédemment, ne soient pas faciles à mettre en oeuvre, de sorte qu'on ne sait pas parfaitement établir un graphe tel que celui de la figure 2: les fonctions f 1 i ne respectent pas vraiment la condition conduisant à un graphe de potentiels o la circulation des interactions le long de toute boucle fermée est nulle Dans ce cas, il faut simplement essayer d'établir un graphe s'aprochant le plus possible d'un graphe respectant cette condition Il existe des critères d'optimisation permettant de résoudre ce type de problème. A titre d'exemple, on peut envisager le cas o les probabilités partielles Pl j sont toutes apprises indépendamment, de sorte qu'elles ne sont pas liées aux probabilités finales P par les équations définies plus haut. On peut très bien alors utiliser le critère d'erreur quadratique pour minimiser, le long des boucles du graphe la différence quadratique entre la fonction f (X) et la "différence de potentiel" g 1 (X) gj (X), pour établir des interactions fi j se rapprochant le plus possible d'un graphe o les circulations des interactions sont nulles le long des boucles fermées. Cette optimisation permet d'aboutir à une détermination tout-àfait explicite (donc réalisable par un circuit électronique) de la valeur g 1 (X) en fonction des valeurs f j(X) Dans un exemple d'optimisation quadratique des différences entre les interactions f 1 et les "différencesde potentiel" gi g;, on a trouvé qu'il fallait établir des fonctions g i(X) telles que 2 Ng (X) soit la somme de toutes les différences (qui dans cette hypothèse ne sont pas nulles) f 1 j(X) f, i(X) pour j = 1 à N Cette explication montre simplement que la démarche de l'invention s'applique (mais de manière plus complexe) même dans les cas o on ne peut déduire qu'approximativement des résultats de classification Pl parmi N à partir de résultats de classification partielle Pl j parmi 2 ou n. On a cité un autre avantage potentiel de ce module la possibilité de rajouter une nouvelle classe sans nécessiter un réapprentissage total En effet, l'ajout d'une nouvelle classe se traduit au niveau du graphe d'apprentissage par l'apparition d'un nouveau noeud Pour reconstruire un graphe complètement connecté, il suffit de connaître une des interactions de ce noeud avec un des noeuds du graphe et de déduire l'ensemble des interactions manquantes (ou ce qui est équivalent, la valeur du potentiel de ce noeud) Cette approche correspond à l'apprentissage dans le cas d'un graphe o la circulation est bien nulle le long des boucles fermées La deuxième approche (quand la première n'est pas possible) consiste à apprendre toutes les probabilités à deux classes entre cette nouvelle classe et les anciennes classes Interprété sur le graphe, ceci revient à déterminer toutes les interactions entre ce nouveau noeud et les noeuds du graphe, et à appliquer la règle de détermination des potentiels g 1 (X) décrite précédemment On remarquera en particulier que cette nouvelle détermination des potentiels g (X) peut être écrite comme une perturbation par rapport aux potentiels existant auparavant. Il faut maintenant remarquer que dans le cas général, rien ne permet d'affirmer que l'apprentissage sur les N 1 sous-réseaux (donc par paires de classes) assure un apprentissage sans erreur sur l'ensemble d'apprentissage constitué de toutes les classes une fois ces sous-réseaux connectés comme cela est proposé ici par le module de traitement 3 Plusieurs solutions sont possibles: soit réaliser le partitionnement des N classes en P paires de classes en mettant en oeuvre des méthodes d'analyse des données, soit en réalisant un second apprentissage (apprentissage de perfectionnement) une fois les sous-réseaux connectés. Premier cas: Dans le premier cas on peut par exemple calculer les distances entre les centres de gravité des N classes et faire le partitionnement par paires de classes, de la façon suivante: ( 1) choisir la paire de classes les plus rapprochées l'une de l'autre et déterminer l'interconnexion sur le graphe correspondant à ce couple, ( 2) choisir la paire de classes les plus rapprochées parmi les paires de classes restantes (non-connectées sur le graphe) et déterminer l'interconnexion sur le graphe correspondant à ce couple, ( 3) déduire les interactions fi i possibles, ( 4) retourner à l'étape N O 2 si le graphe n'est pas totalement connecté, sinon: fin de la procédure. On peut noter que les distances entre classes qui viennent d'être considérées peuvent être des distances renormalisées par les variances entre classes comme cela est généralement pratiqué dans le cadre de l'analyse de données (voir le livre "Pattern classification and scene analysis" de R O DUDA et P E J HART, Wiley and sons, NEW-YORK, 1973). Deuxième cas: L'idée est ici encore plus simple et plus générale l'apprentissage réalisé par paire de classes est considéré comme un préapprentissage qui détermine les valeurs initiales pour un second apprentissage (apprentissage de perfectionnement) une fois les sousréseaux connectés Si certains objets sont mal classés, ceci correspondra à des interactions sur le graphe qui auront été mal déterminées, et donc à des erreurs entre paires de classes non-apprises par la procédure par paires On ne sera donc pas dans la situation générale o il faut classer un objet dans sa classe contre toutes les autres classes, mals seulement contre les classes qui ont permis ce mauvais classement On comprend donc que le pré-apprentissage par paires doit améliorer l'apprentissage par rapport au cas général On effectuera alors d'abord un apprentissage sans le module 3 à partir d'une base d'apprentissage faisant intervenir des résultats désirés de classifications par couples de classes (ou par groupes de n classes), puis un apprentissage complémentaire, avec le module de traitement 3 et avec une base d'apprentissage faisant intervenir des résultats désirés de classification parmi N classes. REVENDICATIONS 1 Système neuronal destiné à la classification d'objets parmi N classes, caractérisé en ce que ce système étant constitué par P réseaux neuronaux distincts capables de fournir chacun un résultat (P j(X)) de classification parmi N classes seulement, N étant inférieur à N, les P réseaux neuronaux étant aptes à subir des phases d'apprentissage respectives individuelles, et un module de traitement de signal ( 3) étant connecté aux P réseaux neuronaux en phase de reconnaissance d'objets après apprentissage, pour fournir, à partir des sorties des P réseaux neuronaux, N sorties (Pi(X)) de résultats de classification parmi N. 2 Système neuronal selon la revendication 1, caractérisé en ce que les réseaux neuronaux individuels effectuent des classifications d'objets parmi N = 2 classes possibles, toutes les classes étant représentées dans les P réseaux. 3 Système selon la revendication 2, caractérisé en ce que les réseaux sont au nombre de P = N-i. 4 Système selon l'une des revendications l à 3, caractérisé en ce que les P réseaux neuronaux fournissent des sorties P i (X) pouvant être interprété comme la probabilité pour qu'un objet X appartienne à la classe Ci parmi seulement deux classes possibles Ci et C, et en ce qu'il est prévu un moyen pour transmettre aux entrées du module ( 3) des valeurs f 3 (X) telles que: f j(X) = log(Pl j(X)) log(l Pl (X)) 5 Système selon l'une des revendications l à 4, caractérisé en ce que les P réseaux comportent des neurones de sortie (N) constitués chacun par un circuit assurant une fonction de sommation pondérée (SP) suivie d'un circuit (CS) assurant une fonction non linéaire saturante, et en ce que le module de traitement ( 3) reçoit sur ses entrées les sorties des fonctions de sommation pondérée. 6 Système selon la revendication 5, caractérisé en ce que la fonction non linéaire saturante des neurones de sortie des P réseaux est une fonction sigmoïde (de la forme e X/( 1 +ex)). 7 Système neuronal selon l'une des revendications 1 à 6, caractérisé en ce que le module de traitement ( 3) comprend des circuits établissant des combinaisons linéaires de ses entrées, et des circuits ( 31) effectuant une fonction de normalisation non linéaire à partir des combinaisons linéaires obtenues, cette fonction de normalisation fournissant N sorties dont la somme est constante et qui peuvent être interprétées chacune comme une probabilité d'appartenance à une classe respective parmi N. 8 Système neuronal selon la revendication 7, caractérisé en ce que les combinaisons linéaires sont de la forme g 1 (X) = gj (X) + f j (X), o g (X) est une combinaison linéaire d'indice i, g (X) est une autre combinaison linéaire d'indice j, et f j(X) est une valeur liée directement à la valeur de la sortie P i (X) d'un neurone de sortie fournissant une valeur pouvant être interprétée comme une probabilité d'appartenance de l'objet X à la classe Ci parmi deux classes possibles seulement Ci et Ci. 9 Système neuronal selon l'une des revendications 7 et 8, caractérisé en ce que la fonction de normalisation non linéaire en sortie du module de traitement est de la forme Pi(X) = egi(X)/lsomme des egi(X), pour i = 1 à NI. Procédé de classification d'objets par un système neuronal selon l'une des revendications précédentes, caractérisé en ce que: on effectue une phase d'apprentissage pour configurer chacun des P réseaux neuronaux à partir de vecteurs d'entrée et de résultats de classification désirés dans les groupes de n classes, sans utiliser le module de traitement, on effectue les phases opératoires de classification après apprentissage en utilisant le module de traitement pour obtenir les résultats de classification parmi N classes à partir de la reconnaissance effectuée par les P réseaux. 11 Procédé selon la revendication 10, caractérisé en ce que la phase d'apprentissage des P réseaux est suivie d'une phase d'apprentissage supplémentaire du système, dans laquelle le module de traitement est connecté, avec une base d'apprentissage faisant intervenir des résultats de classification désirés parmi N classes.