Brevet FR2736727A1 — publié le 19970117

PROCEDE DE CLASSIFICATION DE SIGNAUX EN PLUSIEURS CATEGORIES La présente invention concerne un procédé de classification de signaux en plusieurs catégories, plus particulièrement un procédé de classification en plusieurs catégories de signaux définis par un vecteur de dimension N dans lequel N est grand. Pour classifier des signaux,il est connu de mettre en oeuvre une phase dite phase d'apprentissage De manière générale, cette phase consiste à configurer un réseau qui réalise une fonction effectuant au mieux la classification envisagée en utilisant un ensemble de P signaux, appelé base d'apprentissage, dont on connait pour chacun l'appartenance à l'une des catégories en lesquelles on veut les classifier. Puis l'on teste ce réseau à l'aide d'un second ensemble de signaux, appelé base de généralisation, dont on connait aussi pour chacun l'appartenance à l'une des catégories de classification. Ceci permet de connaître les performances du réseau de décision face à des signaux inconnus lors de la phase d'apprentissage.Dans le cas d'une classification en deux classes, un des modèles les plus simples est le classifieur linéaire qui est défini par un vecteur-poids W > W) et dont la sortie est donnée par signe dans lequel I x > est un vecteur, t et représente le produit scalaire. Dans ce cas, la sortie +1 est affectée à la première classe et la sortie -1 à la seconde classe. Parmi les solutions de ce type connues en traitement de signal ou de données, l'une des solutions couramment utilisée est celle qui minimise, par rapport au vecteur | W > , le coût quadratique suivant dans lequel 1 Ai > représente un vecteur de la base d'apprentissage et ai la valeur-code de classification dudit vecteur. Cette solution est connue sous le nom de solution pseudo-inverse. Cette solution pseudo-inverse qui minimise un coût défini sur la base d'apprentissage peut donner un très bon résultat à l'apprentissage, mais n'est pas entièrement satisfaisante lors de la généralisation. Dans ce cas, en effet, on observe un surajustement de l'opérateur linéaire défini par De ce fait, avec la solution pseudo-inverse, on pénalise autant un signal trop bien classé qu'un signal mal classé. Car ces deux signaux ont un coût identique du fait de la symétrie de la fonction de coût considérée autour de la valeur désirée ai. La présente invention a pour but de proposer un procédé de classification de signaux en au moins deux catégories, dans lequel chaque signal à classifier est défini par un vecteur de dimension N, procédé qui permet de remédier a cet inconvénient de surajustement et d'obtenir de bons résultats lors de la généralisation. Le réseau obtenu est ainsi mieux adapté à la reconnaissance générale de signaux inconnus à priori. En conséquence, la presente invention a pour objet un procédé de classification de signaux en n catégories, n étant supérieur ou égal à deux, dans lequel chaque signal à classifier est défini par un vecteur de dimension N, ledit procédé consistant, dans le cas d'un système utilisant une base d'apprentissage, à - transformer le vecteur de dimension N à l'aide d'une première transformation linéaire en un vecteur de dimension m (m 4 N) dont les variables sont indépendantes et présentent une variance de valeur 1, sur la base d'apprentissage - ordonner lesdites variables dans l'ordre décroissant de leurs valeurs propres associées constituées par les valeurs propres de la matrice de covariance de la base d'apprentissage - traiter lesdites variables de manière à obtenir un vecteur intermédiaire dans lequel les variables correspondant aux valeurs propres les plus fortes ont une plus grande importance lors de la généralisation; - transformer le vecteur intermédiaire ainsi obtenu par une transformation linéaire en une valeur de sortie réelle permettant de classifier le signal dans l'une des n catégories. En fait dans le procédé ci-dessus, on découple les différentes étapes de traitement et l'on fait apparaître au niveau d'un vecteur intermédiaire, un vecteur directement en rapport avec les caractéristiques de surajustement qu'il est alors possible de traiter pour obtenir de bons résultats lors de la généralisation. Différents traitements de ce vecteur intermédiaire peuvent être envisagés. Selon un premier mode de réallsatlon, le traitement permettant d'obtenir un vecteur intermédiaire dans lequel les variables correspondant aux valeurs propres les plus fortes ont une plus grande importance consiste à éliminer les variables dont la valeur propre est inférieure à un seuil donné. Selon un autre mode de réalisation, le traitement permettant d'obtenir un vecteur intermédiaire dans lequel les variables correspondant aux valeurs propres les plus fortes ont une plus grande importance consiste à pondérer ces variables par une valeur, fonction croissante de Ad, telle que ( )k avec k égal à un nombre réel positif. Selon encore un autre mode de réalisation, le traitement permettant d'obtenir un vecteur intermédiaire dans lequel les variables correspondant aux valeurs propres les plus fortes ont une plus grande importance consiste à appliquer à ces variables une fonction saturante telle qu'une fonction tangente hyperbolique. La présente invention sera mieux comprise à l'aide de la description faite ci-après d'un mode de réalisation dans le cas d'un procédé de classification en deux classes, illustré à l'aide du dessin ci-annexé dans lequel - la figure l est une courbe donnant le taux de bonne classification lors de l'apprentissage et lors de la généralisation dans le cas du premier mode de réalisation; et - la figure 2 est une courbe donnant le taux de bonne classification lors de l'apprentissage et lors de la généralisation dans le cas du second mode de réalisation. Aussi, dans le cas d'un procédé de classification en deux classes, chaque signal représenté par le vecteur Ai de dimension N se verra affecter à la fin du procédé de classification une valeur de sortie ai = +1 s'il appartient à la première classe, et une valeur de sortie ai = -1 s'il appartient à la seconde classe. La solution actuellement utilisée, dans le cadre de modèle linéaire, est la solution qui minimise, sur la base d'apprentissage, le coût quadratique suivant Cette solution est appelée solution pseudo-inverse et elle est représentée par le vecteur et H-1 la matrice quasi-inverse de la matrice H, H étant la matrice de covariance de la base d'apprentissage définie par avec des vecteurs centrés Dans ce cas, H étant réel symétrique, elle est diagonalisable.H est donc représenté par m étant le nombre de valeurs propres non nulles, ce qui permet de définir H-1 par Cette solution, bien que minimisant le coût défini sur la base d'apprentissage, ne présente pas une bonne capacité de généralisation. Cette solution donne la classification suivante C'est-à-dire où les variables xd, Ko( sont les normalisations en écart-type et x x &alpha; présente sur la base d'apprentissage une variance égale à 1. Ainsi, pour une variable x 06 de valeur propre associée petite, on procède lors de la normalisation en écart type à une division par une faible valeur. Lors de la généralisation, cette division peut amener la variable correspondante à se trouver en dehors des normes, car la variable n'est pas normalisée sur l'ensemble de généralisation. Ainsi, les écarts entre les statistiques des signaux d'apprentissage et de généralisation sont d'autant plus importants que la valeur propre correspondante est faible. On a donc un surajustement de l'opérateur linéaire qui minimise le coût quadratique à la base d'apprentissage du fait que la fonction de coût considérée a transformé la vraie contrainte initiale, à savoir signe ( ) = ai en une contrainte bien plus forte, à savoir : = ai. Pour remédier à ces inconvénients, et conformément à la présente invention, on modifie les variables intermédiaires x de façon à annuler cet effet de surajustement. Le signal intermédiaire est donc représenté par un vecteur de dimension m dont les variables x &alpha; sont les projections orthogonales sur les m vecteurs propres de H, normalisées par les écarts types correspondants. Conformément à la présente invention, les composantes du signal intermédiaire ont été ordonnées dans l'ordre décroissant de leur valeur propre, notées > D'autre part, conformément à la présente invention, on traite ce signal intermédiaire de manière à diminuer l'importance des paramètres de variance la plus faible ou à projeter les vecteurs de test sur le nuage statistique défini par la base d'apprentissage. Différents types de traitement peuvent être envisagés à ce niveau. Un premier traitement consiste à ne garder parmi les variables x du signal intermédiaire que celles correspondant aux valeurs propres supérieures à un seuil donné et à mettre à zéro toutes les autres. Cela revient à multiplier chaque variable x els par une fonction F( #&alpha; ) où F(#) = 0, si > est inférieur à un seuil donné, et F (#) = 1, sinon. Des essais sur signaux réels réalisés à partir d'un ensemble de 500 signaux correspondant å 500 éléments à classifier en deux classes, 200 signaux étant affectés à la base d'apprentissage et les 300 autres à la base de généralisation, ont montré que le taux de bonne classification passe lors de la généralisation, d'environ 72et. avec la solution actuellement utilisée à environ 85% avec la solution de la présente invention correspondant au cas où 50% des variables intermédiaires x ont été mises à zéro. Cette première solution est illustrée par la figure 1 qui représente la courbe typique des taux de bonne classification à l'apprentissage et à la généralisation en fonction du pourcentage d'éléments de la base d'apprentissage mis à zéro. On s'aperçoit que, pour obtenir une bonne réponse lors de la généralisation, il n'est pas utile d'avoir un apprentissage à 100 %. Une autre solution consiste à multiplier chaque variable x ot par une fonction F dans laquelle k est un réel positif. Dans ce cas, on obtient une coupure plus progressive puisqu'on multiplie les variables z , par une fonction progressivement monotone croissante. Parmi les valeurs de k qui ont pu être testées, on s'aperçoit, comme représenté à la figure 2, que la solution k = 1/2 donne en général un bon résultat. Ainsi, sur 500 éléments testés, 200 étant affectés à la base d'apprentissage et 300 à la base de généralisation, on a obtenu les résultats donnés dans le tableau ci-après Apprentissage Généralisation k = O 100 % 72 % (pseudo-inverse) k = 1/2 90 % 81 % k = 1 78 % 80 % Selon un troisième mode de réalisation, on applique à chaque variable zCot une fonction saturante dont le rôle est de ramener les valeurs prises par ces variables intermédiaires x à un maximun correspondant à l'enveloppe des valeurs pouvant être prises sur la base d'apprentissage.Différents types de fonction saturante peuvent être envisagés 1 ) f (x &alpha; ou ) = x &alpha; si |x&alpha;| f (x &alpha; ) = signe (x &alpha;) sinon 20) f (x d ) = th (x &alpha;) En fait on applique avec CL représentant une coupure par rapport à la variance, par exemple # [ 1/3 > 3 - Suite à ce traitement permettant de remédier au problème de surajustement, le signal intermédiaire représenté par un vecteur de dimension m subit une transformation linéaire donnée par l'opérateur La présente invention a été décrite en se référant de manière générale à un signal quelconque. En fait, la présente invention peut s'appliquer à la classification d'éléments émettant un signal sonore (ce signal sonore étant décomposé en spectres de fréquence), à la classification d'images visibles ou infra-rouge en utilisant soit les images brutes, soit la décomposition en Fourier ou en ondelettes. La présente invention peut aussi être utilisée pour la classification d'images radar. De même, l'invention a été décrite en se référant à une classification en deux classes. Toutefois, la présente invention peut aussi s'appliquer à une classification en n classes, n étant supérieur ou égal à 2. Dans le cas d'une classification en n classes, le codage en sortie est vectoriel, noté 1 ai > . En fait, la première transformation linéaire est identique au cas de la classification en deux classes. Au niveau de la deuxième transformation linéaire, on remplace dans l'équation 1 la projection K D'autre part, le procédé de la présente invention est particulièrement intéressant lorsque le nombre d'éléments constituant la base d'apprentissage est inférieur à la dimension N de l'espace de description car c'est le cas où l'on obtient un meilleur traitement du surajustement. REVENDICATIONS 1. Procédé de classification de signaux en n catégories, n étant supérieur ou égal à deux, dans lequel chaque signal à classifier est défini par un vecteur de dimension N, ledit procédé consistant, dans le cas d'un système utilisant une base d'apprentissage, à - transformer le vecteur de dimension N à l'aide d'une première transformation linéaire en un vecteur de dimension m (m 4 N) dont les variables sont indépendantes et présentent une variance de valeur 1 sur la base d'apprentissage;; - ordonner lesdites variables dans l'ordre décroissant de leurs valeurs propres associées constituées par les valeurs propres de la matrice de covariance de la base d'apprentissage - traiter lesdites variables de manière à obtenir un vecteur intermédiaire dans lequel les variables correspondant aux valeurs propres les plus fortes ont une plus grande importance lors de la généralisation - transformer le vecteur intermédiaire ainsi obtenu par une seconde transformation linéaire en un vecteur code de sortie permettant de classifier le signal dans l'une des n catégories. 2. Procédé selon la revendication 1, caractérisé en ce que la première transformation linéaire consiste à multiplier le vecteur l x > correspondant au signal à classifier, par l'opérateur H 1/2, et à exprimer ce résultat dans la base des dans lequel t et Aen représentent respectivement les vecteurs propres et les valeurs propres de la matrice de covariance H de rang m obtenue à partir des vecteurs centrés de dimension N formant la base d'apprentissage. 3. Procédé selon l'une quelconque des revendications l à 2, caractérisé en ce que le traitement permettant d'obtenir un vecteur intermédiaire dans lequel les variables correspondant aux valeurs propres les plus fortes ont une plus grande importance consiste à éliminer les variables x &alpha; dont la valeur propre # &alpha; est inférieure à un seuil donné. 4. Procédé selon l'une quelconque des revendications 1 à 2, caractérisé en ce que le traitement permettant d'obtenir un vecteur intermédiaire dans lequel les variables correspondant aux valeurs propres les plus fortes ont une plus grande importance consiste à pondérer les variables x di par une valeur, fonction croissante de Wd, telle que (jXd)k k avec k égal à un réel positif. 5. Procédé selon l'une quelconque des revendications 1 à 2, caractérisé en ce que le traitement permettant d'obtenir un vecteur intermédiaire dans lequel les variables correspondant aux valeurs propres les plus fortes ont une plus grande importance consiste à appliquer aux variables x &alpha; une fonction saturante telle qu'unie fonction tangente hyperbolique th(x) ou une fonction f (x &alpha;) = x&alpha; si |x&alpha;| 6. Procédé selon l'une quelconque des revendications 1 à 5, caractérisé en ce que la seconde transformation linéaire consiste à multiplier le vecteur intermédiaire par KH-1/2 dans lequel H l/2 représente l'opérateur défini par avec |&alpha; > et #&alpha; représentant respectivement les vecteurs propres et les valeurs propres de la matrice de covariance de rang m obtenue à partir des vecteurs centrés de dimension N formant la base d'apprentissage, et K représente l'opérateur de Hebb défini sur la base d'apprentissage par avec le vecteur-code de classification de chaque vecteur.