WO2007068741A1 - Procede de classification non supervisee lineaire et stable sur l'ordre des objets - Google Patents

Procede de classification non supervisee lineaire et stable sur l'ordre des objets Download PDF

Info

Publication number
WO2007068741A1
WO2007068741A1 PCT/EP2006/069726 EP2006069726W WO2007068741A1 WO 2007068741 A1 WO2007068741 A1 WO 2007068741A1 EP 2006069726 W EP2006069726 W EP 2006069726W WO 2007068741 A1 WO2007068741 A1 WO 2007068741A1
Authority
WO
WIPO (PCT)
Prior art keywords
classes
objects
class
partition
sub
Prior art date
Application number
PCT/EP2006/069726
Other languages
English (en)
Inventor
Julien Ah-Pine
Hamid Benhadda
Julien Lemoine
Original Assignee
Thales
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Thales filed Critical Thales
Priority to US12/097,613 priority Critical patent/US8423549B2/en
Priority to EP06841370A priority patent/EP1960916A1/fr
Priority to CN2006800528444A priority patent/CN101410831B/zh
Publication of WO2007068741A1 publication Critical patent/WO2007068741A1/fr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/355Class or cluster creation or modification

Definitions

  • the invention relates to a method of unsupervised classification linear and stable on the order of objects.
  • clustering It relates more generally to automatic classification techniques known as "clustering".
  • Text Mining for the discovery, without a priori, knowledge (or “knowledge discovery”) in large databases.
  • These data can be of structured type when it comes to behavioral or demographic data for example, or of unstructured type when it comes to textual data.
  • the automatic classification consists in structuring these objects in the form of very homogeneous classes (or groups). This homogeneity reflects the fact that two objects of the same class must be more similar (or similar) to each other than two objects belonging to two distinct classes. The constitution of these classes will make it easy to detect groups of objects with similar profiles or themes depending on whether they are structured or unstructured data.
  • the “mobile centers” and hierarchical classification methods arbitrarily set a number of classes.
  • “first leader” methods they require the setting of a similarity threshold and are dependent on the order in which the objects are taken into account. Indeed, they can lead to completely different results depending on the order in which the objects are stored. Nevertheless, they allow to process, in reasonable times, large amounts of data. However, to obtain these performances, these methods require the fixing of a maximum number of classes very small compared to the number of objects.
  • the invention relates to a linear unsupervised classification method for structuring a database of objects and descriptors, which is stable on the order of the objects comprising a preliminary step of transforming qualitative, quantitative or textual data into data.
  • the method may comprise a step where the classes of the partition are grouped together.
  • the merging step c) comprises, for example, a step in which the best operation (in the sense of the optimization of the criterion) of the following 4 is determined from two classes in intersection:
  • the grouping of the classes of a partition is, for example, carried out on several hierarchical levels and comprises the following steps: • reduce the value of the structural threshold at each level so that weakly negative contributions can become positive,
  • the invention also relates to a linear unsupervised classification device for structuring a database composed of objects and descriptors, which is stable on the order of the objects comprising a preliminary step of transforming qualitative, quantitative or textual data into binary presence-absence data characterized in that it comprises at least the following elements: a computer comprising a memory, a database and a processor adapted to implement the steps of the method having one of the characteristics previously stated.
  • FIG. 1 a diagram corresponding to a generic system of a system supporting the method according to the invention
  • FIG. 2 a block diagram describing the general operation of the processing chain of the field of data mining applied to a body of documents or to a digital database
  • FIG. 3 a block diagram which shows the steps of the preprocessing phase which is carried out before the automatic classification process
  • FIG. 4 a block diagram which represents the scheduling of the steps constituting the method of this invention
  • FIG. 5 a block diagram which details the various operations performed during the processing 41 of FIG. 4,
  • FIG. 7 the quantities evaluated during the basic operation described in FIG.
  • Figure 8 a block diagram that shows the steps of the class hierarchical aggregation process.
  • FIG. 1 illustrates, without limitation, an example of application of the method according to the invention, making it possible to automatically generate various actions to be performed from the classification result.
  • the system on which the process operates comprises, for example, a computer 1 comprising a memory 2, a processor 3 associated with the classification process 5.
  • the computer 1 is linked to a database 4.
  • the classification result is presented for example, in the form of a set of classes stored in a suitable device 6.
  • the device 6 is, for example, in connection with a server 7 sending e-mail for example.
  • the server is provided with appropriate processing means known to those skilled in the art for processing the received class information and triggering mechanisms for sending messages to the persons of the classes concerned.
  • Any device for driving and / or driving actions according to the results of the classification may be used.
  • the description which follows is given for illustrative purposes in a general context of instructions executable in a computer program, such as program modules executed by a computer or any other computer.
  • the invention can be implemented on any type of computer, electronic organizer, etc.
  • the starting point can be either any database (set of individuals described by a set of numeric variables), or any body of documents. These two types of data are represented by the rounded blocks 20 and 25, respectively.
  • pre-processing phase 21 which consists of conventional statistical processing such as centering or data reduction or else transformations ... etc.
  • pre-treatments lead to the data table 22. It is this table that constitutes the source of the information analysis treatments.
  • a body of documents during a pre-processing phase 26 each text is transformed into a vector whose dimensions correspond to descriptors obtained by a linguistic process which can be morpho-syntactic analysis, extraction of concepts, extraction of co-occurrences ..., linguistic and semantic processing etc. .
  • a presence-absence (binary) or frequency matrix 27 which constitutes the source of the processing represented by block 23.
  • Block 23 corresponds in particular to the data processing and analysis phase.
  • These treatments can be of several types (supervised classification, unsupervised classification, statistical notation or "scoring", regression ).
  • it is unsupervised classification of data also known as automatic classification or "clustering" (Anglo-Saxon term).
  • the invention particularly relates to an unsupervised classification method, the result of which is, for example, a hierarchy of partitions of the objects 24 or documents 28 according to the initial data type.
  • v ⁇ v ⁇ v 2 , ..., v ⁇
  • Table T has the general term t lk which represents the value taken by the variable V k on the object O 1 and is in the following form:
  • the method applies on this table re-coding treatments described below, for example the discretization of quantitative variables or the recoding of qualitative variables into presence / absence descriptors.
  • the qualitative and quantitative variables are transformed into binary variables which will constitute a table K of presence-absence.
  • the transformation consists, for example, in a re-coding of the modalities into presence-absence descriptor vectors.
  • k I ⁇ can have two meanings depending on whether it is initially qualitative variables or quantitative variables:
  • k ⁇ has the following definition:
  • k is the following definition: i fl if the object belongs to the segment j K j - ⁇
  • CSP Socio-Professional Category
  • the table of transformed data K will be of dimensions ⁇ nxp) with p> m where m is the number of variable of set V.
  • Filtering eliminates unclear descriptors.
  • the elimination of the descriptors will be different according to the type of the latter.
  • numerical data is based on an indicator of relevance of the descriptor.
  • the method according to the invention uses a structural or indicator threshold which has the particular function of defining an optimization criterion adapted to the data.
  • O 1 represents the profile of the object O 1 given by the i- th row of Table K:
  • the method according to the invention is of linear complexity insofar as the formulas of the type ⁇ C n , and ⁇ / (C 1, C jV ) are computable
  • the invention for illustrative purposes describes the particular case f (C n , C ⁇ V ) - Min (C n , C lY ) particularly suitable for bases containing a large number of missing data and the procedures that make it possible to calculate with a linear complexity the Calculations of the type ⁇ Min (C n , C lV ).
  • the method according to the invention implements, for example, the following criterion:
  • the structural threshold parameter a s is calculated automatically. It is an indicator that is a function of the n 2 agreements between the objects to be classified: We can give as an example, its formulation when it represents the ratio between the arithmetic average of the agreements between all the objects on the arithmetical average of their maximal chords. :
  • the criterion C a * (X) used in the invention consists, for example, in comparing the agreements between any two objects with the product of the threshold a s by their maximum agreement (which represents a percentage of the maximum agreement).
  • the method of classification 36 is described in detail in FIG. 4.
  • the starting point is the array of binary data whose descriptors have been filtered.
  • the first step of the classification process of sorting the descriptors, 40 is based on a measure of the contribution to the criterion of each descriptor (quality of a descriptor).
  • quality of a descriptor For example, descriptors are used as "generators" for structuring the population of the objects to be classified.
  • a descriptor is represented by a column vector of 1 and 0 (presence-absence). We associate with this descriptor a class which is composed of the objects whose value taken is 1. We can then calculate for each class of objects C q its contribution measure Contrib (C q ) to the global criterion:
  • the evaluation of the contribution of a class is of polynomial complexity. In fact, suppose that all the objects constitute a single class, it would then be necessary to calculate n 1 unitary contributions in order to determine the value of the criterion.
  • This process 41 consists in particular of "fusing” progressively 42, a class generated by a descriptor 40, and a current partition (composed of several classes).
  • This "merge” operation consists in determining from two classes in intersection the best operation (in the sense of the criterion) among the following 4:
  • This process amounts to building step by step a partition which optimizes locally and progressively the global criterion.
  • This partition 45 constitutes the input of the class aggregation process, 46, which is described in FIG.
  • FIG. 5 represents an example of a functional diagram of the treatment
  • the latter consists in particular of "merging" a new class generated by a descriptor X denoted C x , 50, with the current partition P consisting of K classes 51.
  • the process is as follows: • Calculation of the intersections between the classes of the partition P and the class C x ,
  • Class C x is considered as the class whose intersection with a partition P is to be evaluated.
  • a sorted list for example, in ascending order of the indices of the objects it contains. Indeed each object is identified by a unique integer which is its index.
  • a linear sorting for example the sorting by base whose reference is the following one: Cormen et al (2002), Introduction to the algorithmic, Dunod
  • the vector A is equal to:
  • the number of operations performed when calculating intersections 52 is equal to the number of objects in the class C x to merge with the partition P. Indeed, we look for each object of the new class if it belongs to a class of the partition P, if yes we increment the intersection counter of this class.
  • R x and R y be the vectors representing classes C x and C y
  • R a , R b and R c be defined by:
  • CardA, CardB and CardC as the cardinals of the classes represented by R ", R b and R c .
  • C x ® "break" the class C x to form the two following classes: C x - C 1 , and
  • the new class C x contains the objects that can belong to the other classes of the partition P since we know, in advance, that no object of the class C y can belong to another class of the score P.
  • Hierarchical aggregation method of the classes of the invention In FIG. 8, an example of an architecture of the hierarchical aggregation method of the classes in meta-classes is represented.
  • This method consists, in particular, in grouping on several levels (the number of levels is to be set by the user) classes between them.
  • the optimization of the global criterion passes, for example, by maximizing the links between the classes formed. In other words, the classes obtained must ultimately have negative links.
  • the calculation of the links is based on the definition of the contribution Contrit ⁇ , of a pair (i, f) of objects.
  • the final quality of the score obtained is given by:
  • nb _cols nb _cols - 1

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Image Analysis (AREA)

Abstract

Procédé de classification non supervisée linéaire permettant de structurer une base de données composées d'objets et de descripteurs, qui est stable sur l'ordre des objets comprenant une étape préalable de transformation des données qualitatives, quantitatives ou textuelles en données binaire de présence-absence caractérisé en ce qu'il comporte au moins les étapes suivantes : - déterminer un seuil structurel a <SUB>s</SUB>

Description

PROCEDE DE CLASSIFICATION NON SUPERVISEE LINEAIRE ET STABLE SUR L'ORDRE DES OBJETS
L'invention concerne un procédé de classification non supervisée linéaire et stable sur l'ordre des objets.
Elle concerne de manière plus générale des techniques de classifications automatiques connues sous le terme anglais « clustering ».
Elle est notamment utilisée dans les domaines du « Data Mining » et du
« Text Mining » pour la découverte, sans a priori, de connaissances (ou « knowledge discovery ») dans de grandes bases de données. Ces données peuvent être de type structuré lorsqu'il s'agit de données comportementales ou démographiques par exemple, ou de type non structuré lorsqu'il s'agit de données textuelles.
Partant d'une base de données constituée d'un ensemble (ou population) de n objets décrits par un ensemble de m descripteurs (ou variables), la classification automatique consiste à structurer ces objets sous forme de classes (ou groupes) très homogènes. Cette homogénéité traduit le fait que deux objets d'une même classe doivent être plus similaires (ou ressemblants) entre eux que deux objets appartenant à deux classes distinctes. La constitution de ces classes permettra de détecter facilement des groupes d'objets à profils ou thématiques similaires selon qu'il s'agisse de données structurées ou non structurées.
Ce problème est hautement combinatoire pour être résolu par une méthode exacte. A cet effet, des heuristiques moins coûteuses en temps de traitements et en ressources machines ont été élaborées pour lui trouver des solutions approchées.
Certaines de ces heuristiques proposent des solutions en fixant arbitrairement le nombre de classes, tandis que d'autres, proposent une hiérarchie de partitions à nombre variable de classes. On peut citer, par exemple, les heuristiques suivantes :
® Les méthodes de type « centres mobiles » tels que les « k-means », les nuées dynamiques...
• Les méthodes de classification hiérarchiques (ascendantes ou descendantes) • Les méthodes de type « premier représentant » ou en anglo-saxon « first leader » .
Des exemples pour différentes méthodes de classification non supervisée sont données dans les références suivantes : 1 ) Saporta G. (1990),
Probabilités, Analyse de données et Statistique, Technip ; 2) Lebart et al (1995),
Statistique exploratoire multidimensionnelle, Dunod ; 3) Hartigan, J. (1975),
Clustering Algorithme, John Wiley and Sons, New York, NY, US.
Les méthodes de type « centres mobiles » et classification hiérarchique fixent arbitrairement un nombre de classes. Quant aux méthodes de type « first leader », elles nécessitent la fixation d'un seuil de similarité et sont tributaires de l'ordre dans lequel les objets sont pris en compte. En effet, elles peuvent aboutir à des résultats complètement différents selon l'ordre dans lequel les objets sont rangés. Néanmoins, elles permettent de traiter, dans des temps raisonnables, de grandes quantités de données. Cependant, pour obtenir ces performances, ces méthodes nécessitent la fixation d'un nombre maximal de classes très faible par rapport au nombre d'objets.
Parmi les problèmes majeurs rencontrés, pour répondre au problème de la classification automatique, on peut citer :
• la détermination du nombre de classes sous-jacent à la population considérée,
® les performances en temps de traitements selon les volumétries à traiter et en terme de qualité de l'homogénéité des classes obtenues,
• le pouvoir d'interprétation des résultats obtenus ; définition d'indicateurs statistiques pour la mesure de l'homogénéité des classes ainsi que du pouvoir discriminant des descripteurs participants à la formation de ces classes.
L'idée de la présente invention repose notamment sur la théorie de l'analyse relationnelle. Pour rappel, cette théorie, telle que décrite dans l'une des références suivantes : 1) P. Michaud et JF Marcotorchino, « Modèles d'optimisation en analyse de données relationnelles », Mathématiques et Sciences Humaines n°67, 1979, p7-38 ; 2 ; JF Marcotorchino et P Michaud, « Agrégation des similarités en classification automatique », Revue de statistique appliquée, Vol 30, n°2, 1981 , permet de répondre aux problématiques de la fixation du nombre de classes et de l'interprétation du résultat obtenu. Cependant le modèle théorique sous-jacent, est extrêmement coûteux en terme de ressources machine dès que le nombre d'objets est supérieur à 100. L'invention utilise une heuristique de cette théorie qui permet d'approximer très finement le résultat théorique sur de grandes bases de données.
L'invention concerne un procédé de classification non supervisée linéaire permettant de structurer une base de données composée d'objets et de descripteurs, qui est stable sur l'ordre des objets comprenant une étape préalable de transformation des données qualitatives, quantitatives ou textuelles en données binaire de présence-absence caractérisé en ce qu'il comporte au moins les étapes suivantes : a) déterminer un seuil structurel as fonction des n2 accords entre les objets à classifier, le seuil structurel définissant un critère d'optimisation adapté aux données, b) utiliser les descripteurs comme générateurs de structuration et de construction d'une partition P ou ensemble de classes, c) fusionner progressivement une classe engendrée par un descripteur et une partition (40, 41 , 42), d) pour un critère d'optimisation faisant intervenir une fonction f(Çn,CιV) = Min(Cπ,CιY) linéariser des sommes de fonctions Minimums.
Le procédé peut comporter une étape où l'on regroupe les classes de la partition entre elles.
L'étape de fusion c) comporte, par exemple, une étape où l'on détermine à partir de deux classes en intersection la meilleure opération (au sens de l'optimisation du critère) parmi les 4 suivantes :
• « Cassage » de la première classe et formation de deux classes; • « Cassage » de la deuxième classe et formation de deux classes;
• « Cassage » des deux classes pour former trois classes ;
• Réunion des deux classes en intersection pour former une unique classe.
Le regroupement des classes d'une partition est, par exemple, effectué sur plusieurs niveaux hiérarchiques et comporte les étapes suivantes : • diminuer à chaque niveau la valeur du seuil structurel de sorte que les contributions faiblement négatives puissent devenir positives,
® maximiser des liens entre les classes constituées où les liens sont déterminés en utilisant la contribution d'une paire d'objets Lien(Cq , Cq, )= ∑ ∑ Contrib,,, = ∑ ∑ Cn, - α'x/(C,; , C1,,,) içCqi'≡Cq' l≡Cqi'≡Cq' avec α' Ia nouvelle valeur de a
® regrouper deux classes dont le lien est positif, et réitérer ce processus sur tous les niveaux.
L'invention concerne aussi un dispositif de classification non supervisée linéaire permettant de structurer une base de données composées d'objets et de descripteurs, qui est stable sur l'ordre des objets comprenant une étape préalable de transformation des données qualitatives, quantitatives ou textuelles en données binaires de présence-absence caractérisé en ce qu'il comporte au moins les éléments suivants : un calculateur comprenant une mémoire, une base de données et un processeur adapté à mettre en œuvre les étapes du procédé présentant l'une des caractéristiques précédemment énoncées.
L'invention possède notamment les avantages suivants :
• la possibilité de détecter automatiquement le nombre de classes au cours du classement,
• la possibilité de traiter de grandes quantités de données dans des temps raisonnables,
® l'indépendance vis à vis de l'ordre des objets de la base. Elle est naturellement stable vis à vis de l'ordre de traitement des objets, • le procédé permet de définir et de calculer très rapidement (complexité linéaire) des indicateurs mesurant la qualité des résultats obtenus,
• le procédé est stable vis à vis de la duplication des objets. En d'autres termes, si on démultiplie la base plusieurs fois, on retrouve la même solution initiale avec les objets dupliqués au sein d'une même classe.
D'autres caractéristiques et avantages de la présente invention apparaîtront mieux à la lecture de la description ci-dessous et annexée des figures qui représentent : • La figure 1 , un schéma correspondant à un système générique d'un système supportant le procédé selon l'invention,
• La figure 2, un schéma fonctionnel décrivant le fonctionnement général de la chaîne de traitement du domaine de la fouille de données appliquée à un corpus de documents ou à une base de données numériques,
• La figure 3, un schéma fonctionnel qui montre les étapes de la phase de prétraitement qui est effectuée en amont du procédé de classification automatique,
• La figure 4, un schéma fonctionnel qui représente l'ordonnancement des étapes constituant le procédé de cette invention,
• La figure 5, un schéma fonctionnel qui détaille les différentes opérations effectuées lors du traitement 41 de la figure 4,
• La figure 6, l'opération de base qui consiste à déterminer la partition locale optimale (en une, deux, ou trois classes) issue de deux classes en intersection,
• La figure 7, les quantités évaluées lors de l'opération de base décrite dans la figure 6,
• La figure 8, un schéma fonctionnel qui représente les étapes du procédé d'agrégation hiérarchique des classes.
La figure 1 illustre, à titre non limitatif, un exemple d'application du procédé selon l'invention, permettant de générer automatiquement différentes actions à mener à partir du résultat de classification.
Le système sur lequel fonctionne le procédé comprend, par exemple, un calculateur 1 comprenant une mémoire 2, un processeur 3 associé au procédé de classification 5. Le calculateur 1 est en liaison avec une base de données 4. Le résultat de classification, se présente, par exemple, sous la forme d'un ensemble de classes mémorisé dans un dispositif approprié 6. Le dispositif 6 est, par exemple, en liaison avec un serveur 7 d'envoi de courrier électronique par exemple. Le serveur est pourvu de moyens de traitement appropriés et connus de l'Homme du métier pour traiter l'information de classes reçues et déclencher des mécanismes d'envoi éventuel de messages aux personnes des classes concernées.
Tout dispositif permettant de conduire et/ou de piloter des actions en fonction des résultats de la classification peut être utilisé. La description qui suit est donnée à titre illustratif dans un contexte général d'instructions exécutables dans un programme d'ordinateur, tels que des modules de programme exécutés par un ordinateur ou tout autre calculateur.
L'invention peut être mise en œuvre sur tout type d'ordinateurs, d'agenda électronique, etc ....
Dans la figure 2, le point de départ peut être soit une base de données quelconque (ensemble d'individus décrits par un ensemble de variables numériques), soit un corpus de documents quelconque. Ces deux types de données sont représentés respectivement par les blocs arrondis 20 et 25. Dans le cas de données numériques, il peut exister une phase de prétraitements facultative 21 qui consiste en des traitements statistiques classiques tels que le centrage ou la réduction des données ou encore des transformations... etc. Ces pré-traitements conduisent au tableau de données 22. C'est ce tableau qui constitue la source des traitements d'analyse de l'information 23. En ce qui concerne un corpus de documents, au cours d'une phase de pré-traitements 26 on transforme chaque texte en un vecteur dont les dimensions correspondent à des descripteurs obtenus par un procédé linguistique qui peut être une analyse morpho-syntaxique, une extraction de concepts, une extraction de co- occurrences..., des traitements linguistiques et sémantiques etc. On obtient alors une matrice de présence-absence (binaire) ou de fréquences 27 qui constitue la source des traitements représentés par le bloc 23.
Le bloc 23 correspond notamment à la phase de traitements et d'analyses des données. Ces traitements peuvent être de plusieurs types (classification supervisée, classification non supervisée, notation statistique ou « scoring », régression...). Dans le cadre de l'invention, il s'agit de classification non supervisée de données connue aussi sous l'appellation de classification automatique ou encore de « clustering » (terme anglo-saxon). L'invention concerne notamment un procédé de classification non supervisée dont le résultat est, par exemple, une hiérarchie de partitions des objets 24 ou des documents 28 selon le type de données initial.
Les données d'entrée de la figure 3 se présentent sous la forme d'un tableau T , 22 ou 27, désignant respectivement les cas de données numériques et le cas de corpus de documents, croisant l'ensemble / , constitué de n objets O1, Oj,..., On (des individus ou des documents), et l'ensemble V constitué de m variables (ou descripteurs), V1 ,V2 ,..., V" mesurés sur / . I = {θvO2,..., On) v = {v\v2,..., vή
Le tableau T a comme terme général tlk qui représente la valeur prise par la variable Vk sur l'objet O1 et se présente sous la forme suivante :
Figure imgf000009_0001
Le terme général tιk , des données en entrée, représente :
• la modalité de la variable k prise par l'objet i dans le cas d'une variable qualitative, • la valeur de la variable k prise par l'objet i s'il s'agit d'une variable quantitative, ® la présence ou l'absence de l'unité lexicale k dans le document / , s'il s'agit de données textuelles.
Dans le cas des données qualitatives et quantitatives, le procédé applique sur ce tableau des traitements de re-codage 30 décrits ci-après, par exemple la discrétisation des variables quantitatives ou le recodage des variables qualitatives en descripteurs de présence/absence. Les variables qualitatives et quantitatives sont transformées en variables binaires qui constitueront un tableau K de présence-absence.
Dans le cas des variables qualitatives, la transformation consiste, par exemple, en un re-codage des modalités en des vecteurs descripteurs de présence- absence.
Pour des variables quantitatives, il s'agit de discrétisations qui consistent à transformer les variables quantitatives en variables qualitatives où chaque modalité correspond à un intervalle. Par exemple, soit la variable quantitative « taille » exprimée en cm et mesurée sur un ensemble d'individus. Supposons que dans la population considérée, la taille des individus la constituant soit comprise entre 140 cm et 210 cm, une discrétisation possible serait de découper la variable en trois intervalles suivants [140,160[ ; [160,180[ ; [180,210]. Ces trois intervalles correspondent alors respectivement aux trois modalités suivantes : petite, moyenne et grande. Par conséquent, un individu qui aura la taille 175 cm par exemple, aura après discrétisation la modalité moyenne.
Le tableau K, 31 , de terme général k obtenu après ces transformations sera de la forme suivante :
Figure imgf000010_0001
Son terme général kI} peut avoir deux significations selon qu'il s'agisse initialement de variables qualitatives ou de variables quantitatives :
Dans le cas d'une variable qualitative, kυ a la définition suivante :
_ [ 1 si l'objet i possède la modalité j
77 i
J [0 sinon Dans le cas d'une variable quantitative, ky a la définition suivante : fl si l'objet i appartient au segment j Kj j — \
J [0 sinon
Dans le cas des données textuelles, il n'y a pas d'étape de recodage puisqu'à l'issue de l'étape de pré-traitement, 26, nous obtenons déjà un tableau binaire de présence-absence K dont le terme général ky a pour signification : 1 si le document i possède l'unité lexicale j
Figure imgf000010_0002
0 sinon Chaque variable du tableau T , qu'elle soit qualitative ou quantitative, engendrera plusieurs vecteurs descripteurs de présence-absence. En effet, les tableaux T et K sont de dimensions différentes.
Considérons la variable « CSP » (Catégorie Socio-Professionnel) et supposons que l'on soit en présence de quatre individus (11 , 12, 13, 14). Supposons que les modalités possibles de la variable CSP soient : cadre, ouvrier, profession libérale. Supposons de plus, que ces quatre individus ont les modalités suivantes :
Figure imgf000011_0001
Après recodage des modalités de Ia variable qualitative CSP, on obtient le résultat suivant :
Figure imgf000011_0002
Chaque modalité de la variable considérée devient donc un descripteur de présence-absence. Par conséquent, le tableau des données transformées K sera de dimensions {nxp) avec p > m où m est le nombre de variable de l'ensemble V .
A partir du tableau K , 31 , on effectue des calculs statistiques, 32 (moyennes, écart-types, coefficients de discrimination, etc.), qui permettent notamment, d'une part de paramétrer le filtrage des descripteurs, 33 (élimination des descripteurs peu discriminants), d'autre part, de calculer un indicateur appelé seuil structurel, 34, qui permet de s'affranchir de tout paramétrage du procédé de classification (non fixation ni d'un nombre de classes ni d'un nombre maximal de classes). L'indicateur est détaillé par la suite.
Le filtrage permet d'éliminer les descripteurs peu discriminants. L'élimination des descripteurs sera différente suivant le type de ces derniers. Dans le cas de données numériques on se base sur un indicateur de pertinence du descripteur.
Dans le cas des documents, on utilise la fréquence d'apparition d'un descripteur dans l'ensemble du corpus ou tout autre indicateur de mesure de discrimination tel que l'entropie... et on élimine ceux qui sont, a priori, peu discriminants. A l'issue de l'étape de filtrage, on a un nouveau tableau binaire réduit, 35, qui contient un nombre restreint de colonnes. C'est ce nouveau tableau qui sert de données en entrée au procédé de classification automatique décrit par le bloc 36 et détaillé dans les figures 4 et 5.
Seuil structurel et critère adapté aux données
Le procédé selon l'invention utilise un seuil structurel ou indicateur qui a notamment pour fonction de définir un critère d'optimisation adapté aux données.
Pour mieux comprendre son rôle, on rappelle la théorie de l'analyse relationnelle qui se base sur la maximisation du critère de Condorcet simplifié suivant :
W=Σ ;=1 Σ ;'=1 I C , -iχ/(C,,,C,,,,) k.' où C , représente le degré de ressemblance entre les deux objets i et ï . Par exemple ;
et O1 représente le profil de l'objet O1 donné par la ieme ligne du tableau K :
01 = {k,1,kι2,-,k,J,-,kψ) et où f(Cπ,C) est une fonction des accords propres maximaux des individus /' et i' Par exemple : /(CB ,ClV) = |(CB + ClV)
f{Cu , CιV) = Mm(C11 ^1,,) etc...
Xn, est par ailleurs donné par : 1
Y _ 11 si les objets i et i sont dans la même classe zz 0 sinon
Le procédé selon l'invention est de complexité linéaire dans la mesure où les formules du type ∑∑Cn, et ^^/(C,,,CjV) sont calculables
I I' I I' linéairement. Les fonctions citées en exemple précédemment sont toutes linéarisables. En effet, la mesure de similarité Cn, utilisée est un produit scalaire possédant des propriétés de linéarité connues, la fonction f(Cn,ClY) = — (C,, + C,V) est linéaire, par contre, la fonction
f (C11 , Cn.) = Mm(Cn , C ,,,,) n'est pas linéaire. Cependant, on peut linéariser les calculs du type ∑∑Min(Cn,ClV) . i /'
L'invention à titre illustratif décrit le cas particulier f(Cn, CιV) - Min(Cn , ClY) particulièrement adapté aux bases contenant un nombre important de données manquantes et les procédures qui permettent de calculer avec une complexité linéaire les calculs du type ∑∑Min(Cn ,ClV) .
Le procédé selon l'invention met par exemple en œuvre le critère suivant :
Cβ«) = ∑∑[C, -a χf(Cπ,Cή,)]Xn,
;=1 /'=1
∑∑Contribu,X,, ι=l ι'=ï
où a est un seuil et la quantité Contribn, la contribution unitaire des deux objets i et /' au critère C (JQ .
Selon l'invention, le paramètre seuil structurel as est calculé automatiquement. Il s'agit d'un indicateur qui est une fonction des n2 accords entre les objets à classifier : On peut donner comme exemple, sa formulation lorsqu'il représente le rapport entre la moyenne arithmétique des accords entre tous les objets sur la moyenne arithmétique de leurs accords maximaux. :
Figure imgf000014_0001
Cette formule est linéarisable lorsque l'on se place dans les mêmes conditions que celles évoquées précédemment. Le critère Ca* (X) utilisé dans l'invention consiste, par exemple, à comparer les accords entre deux objets quelconques au produit du seuil as par leur accord maximal (ce qui représente un pourcentage de l'accord maximal).
Ainsi, deux objets seront a priori dans une même classe dés lors que leur similarité est supérieure ou égale au pourcentage d'accord maximal calculé (contribution positive).
Procédé de classification automatique de l'invention
Le procédé de classification 36 est décrit en détail dans la figure 4. Le point de départ est le tableau de données binaires 35 dont les descripteurs ont été filtrés.
La première étape du procédé de classification qui consiste à trier les descripteurs, 40, repose sur une mesure de la contribution au critère de chaque descripteur (qualité d'un descripteur). On utilise, par exemple, les descripteurs comme « générateurs » de structuration de la population des objets à classifier. Un descripteur est représenté par un vecteur colonne de 1 et de 0 (présence-absence). On associe à ce descripteur une classe qui est composée des objets dont la valeur prise est 1. On peut alors calculer pour chaque classe d'objets Cq sa mesure de contribution Contrib(Cq) au critère global :
Contrib{Cq ) = ∑ ∑ Contrit,,, = ∑ ∑ Cn, - a x ∑ ∑ /(C,, , Cn, ) [1 ] leCqi'eCq leCqi'eCq l≡Cqi'eCq L'évaluation de la contribution d'une classe est de complexité polynomiale. En effet, supposons que tous les objets constituent une seule classe, il faudrait alors calculer n1 contributions unitaires afin de déterminer la valeur du critère.
Dans le cas où Cn, est un produit scalaire, la première partie de la formule de droite, , se simplifie de la manière suivante :
Figure imgf000015_0001
Figure imgf000015_0002
où Rq = (r9 ,r9 ' ,• • • • • ,rp q ) est appelé représentant de la classe Cq dont les termes sont donnés par la somme en colonne de chaque modalité du tableau K pour les objets de la classe : r? = ∑k,, .
I ^Cq Chaque valeur r? , j=\,...,p , représente le nombre d'objets de la classe Cq qui possède la modalité / .
Dans le cas où f (Cn , ClV) = MIn(Cn , CιV) , la deuxième partie de la formule de droite de l'équation [1] vaut ]T ^ Mm(C11, C lV) . Nous donnons ci-dessous la leCqi'eCq procédure permettant de calculer avec une complexité linéaire cette quantité.
***************************************************************************
Procédure MinCC (Classe C)
Nécessite : CαrdC > 0
Nécessite : Liste triée d'individus pour la classe C Entier : résultat - 0
Entier : j = prochain élément de C
Entier : i = 0
Tant que la classe C n'est pas parcourue Faire résultat = résultat + [(CardC -i) x2 -l]x C M j = prochain élément de C i = i + l
Fin tant que
*********************************************************************************************** On a ainsi pour chaque descripteur q la valeur de la contribution de la classe engendrée par ce dernier ou encore une mesure de la qualité du descripteur vis à vis du critère. On procède alors à un tri, par exemple, par ordre décroissant de ces contributions afin d'obtenir un ordre de prise en compte des descripteurs. Le choix de cet ordre a très peu d'influence sur la qualité du résultat (il peut y avoir quelques différences locales minimes). Cependant, prendre les classes engendrées par les descripteurs de meilleures contributions en premier, permet d'avoir une solution stable plus rapidement et donc d'accélérer le processus de calcul de la meilleure partition 41 issue de l'intersection entre la partition courante et celle engendrée par un descripteur.
Ce processus 41 consiste notamment à « fusionner » progressivement 42, une classe engendrée par un descripteur 40, et une partition courante (composée de plusieurs classes). Cette opération de « fusion » consiste à déterminer à partir de deux classes en intersection la meilleure opération (au sens du critère) parmi les 4 suivantes :
• « Cassage » de la première classe et formation de deux classes; ® « Cassage » de la deuxième classe et formation de deux classes;
• « Cassage » des deux classes pour former trois classes ;
® Réunion des deux classes en intersection pour former une unique classe. Ces opérations sont illustrées dans la figure 6 et les calculs permettant de décider de la meilleure opération dans la figure 7.
Ce processus revient à construire pas à pas une partition qui optimise localement et progressivement le critère global.
Une fois que tous les descripteurs sont utilisés, on considère la partition obtenue P0 comme une première partition finalisée des objets 43.
Pendant la phase de « fusion » (40, 41 , 42) des classes, on essaie de « fusionner » uniquement les classes qui possèdent des intersections. L'objet du traitement 44 est de fusionner, c'est-à-dire réunir des classes qui n'ont pas d'intersection si cette opération permet d'optimiser le critère (test de fusion des classes de la partition obtenue entre elles). Ceci conduit à une partition modifiée 45, pu partition de niveau 1 , qui constitue la partition finale du procédé de classification.
Cette partition 45 constitue l'entrée du processus d'agrégation des classes, 46, qui est décrit dans la figure 8. La figure 5 représente un exemple de schéma fonctionnel du traitement
41. Ce dernier consiste notamment à « fusionner » une nouvelle classe engendrée par un descripteur X notée Cx , 50, avec la partition courante P constituée de K classes 51. Le processus est le suivant : • Calcul des intersections entre les classes de la partition P et la classe Cx ,
52, • Tri de l'ensemble A des classes Cy de la partition P en intersection avec la classe Cx dans l'ordre décroissant du cardinal de leur intersection, 53, par exemple, • Pour chaque classe Cy , 55, de l'ensemble A , fusionner les deux classes
Cv et Cx , 54.
On parcourt toutes les intersections entre Cx et P et une fois que toutes les classes C de A ont été fusionnées avec Cx , 55, on obtient une nouvelle partition des objets qui améliore le critère global et qui devient alors la nouvelle partition courante 51. L'étape suivante consiste à passer à un nouveau descripteur, 42, et on répète ce processus jusqu'à ce que tous les descripteurs aient été parcourus.
Le cardinal des éléments de l'ensemble des intersections d'une classe Cx avec les classes d'une partition P, 52, peut être obtenu linéairement de la manière décrite ci-après.
On considère la classe Cx comme la classe dont on désire évaluer l'intersection avec une partition P . A cette classe, on associe une liste triée, par exemple, par ordre croissant des indices des objets qu'elle contient. En effet chaque objet est identifié par un entier unique qui est son indice. Pour trier les objets, on utilise par exemple un tri linéaire (par exemple le tri par base dont une référence est la suivante : Cormen et al (2002), Introduction à l'algorithmique, Dunod) puisque l'on connaît la borne supérieure des valeurs à trier. Pour l'opération de calcul du cardinal des intersections, on utilise un vecteur A de dimension n pour lequel chaque dimension i représente l'indice de la classe où est stocké l'individu O1.
Exemple de calcul de cardinaux d'intersections :
Si on prend une population de 6 objets O11O7,- - -,O6 et une partition courante de ces objets P, 51 , constituée de trois classes
Figure imgf000018_0001
Le vecteur A est égal à :
Figure imgf000018_0002
Ainsi si on « fusionne » la partition existante avec une classe Cx = [O2, 03, 04, 06] 50, on est capable de trouver rapidement le cardinal de l'ensemble intersection de la classe Cx avec les classes de la partition existante, en l'occurrence
Cαrd(lnter(Cx Cx )) = 1 , Cαrd(lnter{C2 Cx )) = 3 et Cαrd(lnter(Cχ Cx )) = 0. Le nombre d'opérations effectuées lors du calcul des intersections 52 est égal au nombre d'objets dans la classe Cx à fusionner avec la partition P . En effet, on regarde pour chaque objet de la nouvelle classe s'il appartient à une classe de la partition P , si oui on incrémente le compteur d'intersection de cette classe.
S'il existe plusieurs intersections entre une classe Cx et une partition P , on calcule comme indiqué ci-dessus, le cardinal des différentes intersections entre Cx et les différentes classes Cy de la partition P afin d'avoir un ordre de prise en compte.
A partir de l'intersection de Cx et d'une classe Cy de la partition P , on évalue quelle est la meilleure configuration parmi celles présentes dans la figure 6. Pour cela, on évalue les quantités identifiées dans la figure 7. Les figures 6 et 7 expliquent donc un exemple d'opérations de base de l'invention qui sont représentées par le traitement 54. Le processus de « fusion » de deux classes est par exemple le suivant.
Soient Rx et Ry les vecteurs représentant des classes Cx et Cy , on construit les vecteurs Ra , Rb et Rc définis par :
R" = Ry -Rc Rb = RX -RC où Cc -Cx
Figure imgf000019_0001
est la classe définie par l'intersection de Cx et C (les objets à la fois dans la classe Cx et dans Cy ) et Rc son représentant. R" représente donc les objets qui sont uniquement dans Cy et Rb ceux qui sont uniquement dans Cx .
Au définira respectivement CardA, CardB et CardC comme les cardinaux des classes représentées par R" , Rb et Rc .
Les deux listes d'objets contenus dans les classes Cy et Cx sont triées par ordre croissant de leur indice. On peut donc appliquer la procédure classique suivante pour calculer rapidement les trois vecteurs :
****************************************************************************************** Procédure de Calcul vecteurs (Classe Cx , Classe Cy)
Rα = Ry
Rb = RX
Rc = 0
CαrdA = CαrdB = CαrdC = 0
L1 = liste des objets de Cy e = tête de la liste Lx L2 = liste des objets de Cx / = tête de la liste L2
Tant que la liste L1 n'est pas parcourue Faire Tant que la liste L2 n'est pas parcourue Faire Si e = f Faire Re = Ô. R" = Ra - Re Rb = Rb - Re
Rc = RC + Re e = tête de la liste L1 f = tête de la liste L2 cardC = cardC + 1 Sinon Si e < /Faire e = tête de la liste L1 cardA = cardA + 1 Sinon
/ = tête de la liste L2 cardB = cardB + 1
Fin Si Fin Tant que
Fin Tant que
*********************************************************************************************** A partir de ces trois vecteurs, il est possible de choisir la meilleure solution parmi les quatre suivantes, ces dernières étant représentées sur un exemple dans la figure 6 :
© « casser » la classe Cy pour former les deux classes suivantes : Cy - Cx et
Cx ® « casser » la classe Cx pour former les deux classes suivantes : Cx - C1, et
® « casser » la classe Cx et « casser » la classe Cy pour former les trois classes suivantes : Cx - Cy , Cy - Cx et Cy n Cx • fusionner les deux classes pour former une unique classe : C u C( . Le choix de la meilleure des quatre solutions se base, par exemple, sur l'évaluation des « liens » entre les 3 différentes sous-classes mises en évidence ci- dessus. Le calcul général du « lien » entre deux classes Cq et Cq, est donné par la formule suivante :
Lien(Cq,C9. ) = ∑ ∑Contrib,,, =∑ ∑ (C11, - a x /(C1, , C,v ))
<sC/eCV !eC/eCV
Lorsque la mesure de similarité est un produit scalaire, et lorsque f (C1nC1,,,) - Min(Cπ, C lY) , on peut comme précédemment, linéariser le calcul du lien entre deux classes distinctes. Le procédé utilise pour cela les propriétés de linéarité du produit scalaire, ce qui donne la simplification suivante :
Lien(Cq,C , ) =< R" ,R9' > -a x ∑ ∑ Mm(C11, C1,,,) l≡Cqi'≡Cq'
On peut aussi utiliser la procédure suivante qui permet d'évaluer avec une complexité linéaire la quantité ∑ ∑jMin(C11,C1,1,) : leCqi'εCq' ***********************************************************************************************
Procédure MinCC (Classe C, Classe C)
Nécessite : CαrdC > 0
Nécessite : CαrdC '> 0 Nécessite : Liste triée d'individus pour les classes C et C
Entier : résultat - 0
Entier : nb _lignes = CardC
Entier : nb _cols = CardC
Entier : j = prochain élément de C Entier : f = prochain élément de C
Tant que la classe C n'est pas parcourue et la classe C n'est pas parcourue Faire
Si j < f faire résultat - résultat + nb_ cols x C j = prochain élément de C nb __ lignes — nb_ lignes — 1 Sinon
Si j'< j faire résultat = résultat + nb lig CJnes x C J .J , f = prochain élément de C nb ___ cols -nb _ cols — 1 Sinon résultat - résultat + (nb _ cols + nb__ lignes - 1) x C ff j = prochain élément de C f = prochain élément de C nb _ lignes = nb _ lignes — 1 nb _ cols -nb _ cols — 1 Fin Si
Fin Si
Fin tant que
******************************************************************************************
Dans le cadre de l'intersection entre deux classes, le procédé évalue les trois quantités suivantes qui sont représentées sur un exemple dans la figure 7 :
Lieni=Lien(Cy-Cc,Cx-Cc)=<Ra ,Rb >-ax ∑ ∑/(CU,C,,) i≡CyiΛieCc l'eCxnj'ïCc
Lien2 = Lien(Cy -CC,CJ=< R" ,RC >-ax ∑ ∑f(C,,,ClY) ifΞCymeCc l'eCc
Lien3=Lien(Cx-Cc,Cc)=<Rb,Rc>-ax ∑ ∑ /(Cn, C1,,) leCxmeCc l'eCc
Ainsi, pour maximiser localement le critère global :
• Si Lien, +Lien2 + Lien3 est la plus grande, on choisit la solution 4 (fusion des deux classes) ;
• Si Lien 2 est la plus grande, on choisit la solution 2 (« cassage » de Cx ) ;
• Si Lien3 est la plus grande, on choisit la solution 1 (« cassage » de C1 ) ; ® Si 0 est la plus grande, autrement dit que Lien} +Lien2 +Lien3 < 0, Lien, < 0 et Lien3 < 0 , alors on choisit la solution 3 (« cassages » de Cx et de Cv ). Une fois que la classe Cx , 50, est fusionnée avec la première classe C , , on continue le traitement avec les autres classes de la partition P en intersection avec la classe Cx , 55,. Pour cela, la classe Cx sera transformée en classe Cx, : @ Si Ia solution 1 est choisie, Cx, = Cx
• Si la solution 2 est choisie, Cx, = Cx ~ Cy
• Si la solution 3 est choisie, Cx, = Cx - Cv
• Si la solution 4 est choisie, Cx, = Cx vj Cy
Dans tous les cas, la nouvelle classe Cx, contient les objets qui peuvent appartenir aux autres classes de la partition P puisqu'on sait, par avance, qu'aucun objet de la classe Cy ne peut appartenir à une autre classe de la partition P .
Procédure de retrait d'objets à une classe
Pour retirer un ensemble d'objets Δ d'une classe, il suffit de retirer Δ de la liste d'objets de la classe et de retrancher le représentant RΔ du représentant de la dite classe. Par exemple, lors de l'opération Cx, = CX - CV , RA est égal à Rc .
En effet, on retranche à la classe Cx , les objets en intersection représentée par le représentant Rc . Ainsi Rx' = RX - Rc .
De cette manière, les opérations de « cassage » ne nécessitent pas de temps de calcul importants puisque la quantité retranchée au représentant de la classe est toujours égale au vecteur Rc qui est déjà calculé. D'autre part, le retrait des objets de la liste est une opération simple et linéaire.
Procédure de Réunion de deux classes Dans cette procédure, on connaît le représentant de l'intersection de C1 et C2 (défini par Rc ci-dessus) et le cardinal de l'intersection (défini par CαrdC ci- dessus). On cherche donc à créer la classe C1 u C2 , sans effectuer de tri linéaire complet. ***********************************************************************************************
Procédure Réunion (Classe C1 , Classe C2 , Représentant Inter, Entier
Cαrdlnter)
Vecteur temporaire de taille (CαrdC , + CαrdC 2 - Cαrdlnter) Entier position = 0
Lx = liste des objets de C1 e = tête de la liste Lx L2 = liste des objets de C2 / = tête de la liste L2 Tant que la liste L1 n'est pas parcourue Faire
Tant que la liste L2 n'est pas parcourue Faire Si e = f Faire el = e e = tête de la liste Lx / = tête de la liste L2
Sinon Si e < / Faire el = e e = tête de la liste L1 Sinon el = f f = tête de la liste L2 Fin Si
Temporaire[position] = el Position = position + 1 Fin Tant que
Fin Tant que Recopie Temporaire dans la liste des objets
Représentant = Représentant ( C1 ) + Représentant ( C0 ) - Inter *********************************************************************************************** Procédure Regrouper (Partition P) 44
Soit K le nombre de classes de la partition P
Pour chaque classe Cq de la partition P , on calcule Contrib(Cq )
Soit Cx la classe qui possède la contribution la plus forte Nous calculons le vecteur S de κ — \ valeurs définies par :
S = (sv s2,..., sk_, ) et où
[ LUm(C x,C, ) ά l < x
S' [Lien(C x, C1+1 ) si I > x
Pour toutes les valeurs de Lien positives de S , on va fusionner les classes correspondantes. L'ensemble de ces classes seront marquées comme affectées et ne pourront plus être fusionnées par la suite. On itère le processus avec l'ensemble
K' des classes non marquées.
Procédé d'agrégation hiérarchique des classes de l'invention Dans la figure 8, est représenté un exemple d'architecture du procédé d'agrégation hiérarchique des classes en méta-classes.
Ce procédé consiste, notamment, à regrouper sur plusieurs niveaux (le nombre de niveaux est à fixer par l'utilisateur) les classes entre elles. L'optimisation du critère global passe, par exemple, par la maximisation des liens entre les classes constituées. En d'autres termes, les classes obtenues doivent, in fine, avoir des liens négatifs. Or, le calcul des liens est fondé sur la définition de la contribution Contrit^, d'une paire (i,f) d'objets. On rappelle ci-dessous la définition de la contribution d'une paire d'objets lorsque la fonction / est la fonction Minimum : Contribu, = C11, - α x MIn(Cn , C,,,,) Le procédé d'agrégation des classes, proposé par l'invention, consiste alors à diminuer à chaque niveau, la valeur du seuil structurel 80, de sorte que les contributions faiblement négatives puissent devenir positives. De cette manière, le lien entre deux classes peut devenir positif ce qui permet de les regrouper 81 , et de mettre en évidence des relations entre les classes d'une partition. On répète ce processus autant de fois qu'il y a de niveaux 82. On obtient alors un ensemble de partitions emboîtées 83, qui permet de détecter des relations hiérarchiques et conceptuelles (sur plusieurs niveaux) entre les classes considérées initialement dans la partition 45. L'invention, par ce principe, permet ainsi de faire de la découverte de connaissances. La procédure d'agrégation hiérarchique des classes d'un niveau j à un niveau y + 1 est similaire à la procédure Regrouper décrite ci-dessus.
Calculs permettant l'évaluation de la qualité des résultats de classification de l'invention On donne ici les formules théoriques des indices de mesure de la qualité de la solution obtenue qui s'expriment en pourcentage. Plus l'indice est proche de 100%, plus la qualité de la solution étudiée (qualités partition, classe ou individu) est bonne.
On introduit tout d'abord quelques notations :
L'accord entre deux classes : A - ^ ]T C11,
Figure imgf000026_0001
L'accord maximal entre deux classes : AM cc, = ∑ ∑f (C111C1.,.) ιeC l'eC
Le désaccord entre deux classes : A ^rCrC, -~ A ΛM1V± rCrC. - A Λ rCrC,
La qualité finale de la partition obtenue est donnée par :
∑Acc +∑ ∑Âcc ∑Ac -∑ ∑Acσ + ∑ V∑A ΛMλ/t C, C
C=I C=I C'≠C _ C=I C=I C'≠C C=I C≠C
Q =
∑∑^cc ∑∑AMcc
C=I C=I C=I C=I où K est le nombre de classes de la partition.
La qualité d'une classe C est donnée par :
Acc + 2x ∑Âcc ACc -2x ∑Acc + 2x ∑AMt CC C'≠C _ C'≠C C≠C
Qc C = NbCl NbCl
AM cC + 2 x ^ AM AM cc +2^ γjA 4M λyf
CcC
C'≠C C'≠C La qualité d'un objet i appartenant à une classe C est donnée par :
ΣC«' +∑Q. ∑C, -∑Cπ, + ∑/(CB,C,,) p. _ i'eC t'tC _ l'eC (VC ι^C_
∑f(Cu,CιV) ∑/(CB,C,V)
,'=1 ,'=1 où Cn, = f(Cu,ClY) - Cn, est le désaccord entre l'individu i et l'individu i'.
Les sommes sur les termes A sont linéarisâmes lorsque les similarités Cn, sont des produits scalaires grâce aux propriétés de linéarité de ces derniers. On donne ci-dessous des exemples de procédures permettant de calculer linéairement les quantités suivantes intervenant dans les différentes formules de qualités lorsque
/(C,,,ClV) =M«(C,,,C,v) :
ClY)
Figure imgf000027_0001
• ∑Min(C,,,CιY) t'sC On note respectivement ces quantités SS'MinCC, S'MinC et MiniC :
***********************************************************************************************
Procédure SS'MinCC (Classe C, Classe C)
Nécessite ; K > 0 Entier : résultat = 0
Pour z = l jusqu'à n par incrément de 1 Faire résultat = résultat + ((n - i + V) x 2 - 1) x Cn Fin Pour
*********************************************************************************************** **************************************************************************
Procédure S'MinCC (Classe C, Classe C)
Nécessite : CαrdC > 0 Nécessite : K > 0
Nécessite ; Liste triée d'individus pour les classes C Entier : résultat - 0 Entier : nb _lignes = CardC Entier : nb _cols = n Entier : j = prochain élément de C
Entier : i = 1
Tant que la classe i ≤ n et C n'est pas parcourue Faire Si / = j faire résultat - résultat + (nb _ cols + nb_ lignes - 1) x Cn nb _ lignes = nb _ lignes - 1 nb _ cols = nb _cols - 1 i = i + l j = prochain élément de C Sinon résultat = résultat + nb_ lignes x C17
/ = / + 1 nb _cols = nb _cols - 1
Fin Si Fin tant que
***********************************************************************************************
******************************************************************************
Procédure MiniC (Classe C)
Nécessite : CαrdC > 0 Nécessite : Liste triée d'individus pour la classe C
Entier : résultat = 0 Entier : nb_cols = CardC Entier : j = prochain élément de C
Tant que la classe C n'est pas parcourue et nb _cols ≤ j Faire Si z = / Faire résultat = résultat + nb _ cols x Cn Sinon résultat = résultat + C j - prochain élément de C nb _cols = nb _cols -\
Fin Si
Fin Tant que
***********************************************************************************************

Claims

REVENDICATIONS
1 - Procédé de classification non supervisée linéaire permettant de structurer une base de données composée d'objets et de descripteurs, qui est stable sur l'ordre des objets comprenant une étape préalable de transformation des données qualitatives, quantitatives ou textuelles en données binaire de présence-absence caractérisé en ce qu'il comporte au moins les étapes suivantes :
• déterminer un seuil structurel as fonction des ri2 accords entre les objets à classifier, le seuil structurel définissant un critère d'optimisation adapté aux données,
• utiliser les descripteurs comme générateurs de structuration et de construction d'une partition ou ensemble de classes,
• fusionner progressivement une classe engendrée par un descripteur et une partition (40, 41 , 42), • pour un critère d'optimisation faisant intervenir une fonction f(Cu ,CιY) = Min(Cu ,Cιr) linéariser des sommes de fonctions Minimums.
2 - Procédé selon la revendication 1 , caractérisé en ce qu'il comporte une étape où l'on regroupe les classes de la partition entre elles.
3 - Procédé selon la revendication 1 , caractérisé en ce que l'étape de fusion comporte une étape où l'on détermine à partir de deux classes en intersection la meilleure opération (au sens de l'optimisation du critère) parmi les 4 suivantes :
• « Cassage » de la première classe et formation de deux classes; • « Cassage » de la deuxième classe et formation de deux classes;
• « Cassage » des deux classes pour former trois classes ;
• Réunion des deux classes en intersection pour former une unique classe.
4 - Procédé de classification selon la revendication 2, caractérisé en ce que le regroupement des classes d'une partition est effectué sur plusieurs niveaux hiérarchiques et comporte les étapes suivantes :
• diminuer à chaque niveau la valeur du seuil structurel (70) de sorte que les contributions faiblement négatives puissent devenir positives, • maximiser des liens entre les classes constituées où les liens sont déterminés en utilisant la contribution d'une paire d'objets
Lien(Cq,Cq,)= ∑ ∑Contrïbu, = ∑ ∑CU, -a'xf(Cu,CιV) i≡Cqi'≡Cq' i≡Cqi'≡Cq' avec a' la nouvelle valeur de a
• regrouper (71 ) deux classes dont le lien est positif, et réitérer ce processus sur tous les niveaux.
5 - Dispositif permettant la classification non supervisée linéaire permettant de structurer une base de données composées d'objets et de descripteurs, qui est stable sur l'ordre des objets comprenant une étape préalable de transformation des données qualitatives, quantitatives ou textuelles en données binaires de présence- absence, caractérisé en ce qu'il comporte au moins les éléments suivants : un calculateur (1 ) comprenant une mémoire (2), une base de données (4) et un processeur (3) adapté à mettre en œuvre les étapes du procédé selon l'une des revendications 1 à 4.
6 - Dispositif selon la revendication 2, caractérisé en ce qu'il comporte un moyen (7) de conduite d'actions en fonction des résultats de la classification.
PCT/EP2006/069726 2005-12-16 2006-12-14 Procede de classification non supervisee lineaire et stable sur l'ordre des objets WO2007068741A1 (fr)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US12/097,613 US8423549B2 (en) 2005-12-16 2006-12-14 Method for stable and linear unsupervised classification upon the command on objects
EP06841370A EP1960916A1 (fr) 2005-12-16 2006-12-14 Procede de classification non supervisee lineaire et stable sur l'ordre des objets
CN2006800528444A CN101410831B (zh) 2005-12-16 2006-12-14 对于对象的顺序稳定的分类的线性无监督方法

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0512844A FR2895110B1 (fr) 2005-12-16 2005-12-16 Procede de classification non supervisee lineaire et stable sur l'ordre des objets
FR0512844 2005-12-16

Publications (1)

Publication Number Publication Date
WO2007068741A1 true WO2007068741A1 (fr) 2007-06-21

Family

ID=37231300

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2006/069726 WO2007068741A1 (fr) 2005-12-16 2006-12-14 Procede de classification non supervisee lineaire et stable sur l'ordre des objets

Country Status (5)

Country Link
US (1) US8423549B2 (fr)
EP (1) EP1960916A1 (fr)
CN (1) CN101410831B (fr)
FR (1) FR2895110B1 (fr)
WO (1) WO2007068741A1 (fr)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2940694A1 (fr) * 2008-12-30 2010-07-02 Thales Sa Procede et systeme pour classifier des donnees issues de base de donnees.
KR101496179B1 (ko) * 2013-05-24 2015-02-26 삼성에스디에스 주식회사 데이터 부재 태깅 기반의 정보 검색 시스템 및 방법
EP2889783A1 (fr) 2013-12-31 2015-07-01 Thales Procédé de classification non supervisée d'une pluralité d'objets et le dispositif pour la classification non supervisée associé à ce procédé

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012138539A2 (fr) * 2011-04-08 2012-10-11 The Regents Of The University Of California Système interactif de collecte, d'affichage et de classement d'éléments sur la base d'une entrée quantitative et textuelle provenant de multiples participants

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1049030A1 (fr) * 1999-04-28 2000-11-02 SER Systeme AG Produkte und Anwendungen der Datenverarbeitung Méthode et appareil de classification

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
AH-PINE J ET AL: "Un nouvel outil de classification non supervisée de documents pour la découverte de connaissances et la détection de signaux faibles: RARES Text", JOURNÉES SUR LES SYSTÈMES D'INFORMATION ÉLABORÉE, 13 June 2005 (2005-06-13), Ile Rousse, France, pages 1 - 15, XP002407399, Retrieved from the Internet <URL:http://isdm.univ-tln.fr/PDF/isdm22/isdm22_ahpine.pdf> [retrieved on 20061114] *
AH-PINE; LEMOINE; BENHADDA, JOURNÉES SUR LES SYSTÈMES D'INFORMATION ÉLABORÉE, 13 June 2005 (2005-06-13), pages 1 - 15
BENHADDA H ET AL: "Introduction à la similarité régularisée en analyse relationnelle", REVUE DE STATISTIQUE APPLIQUÉE, vol. 46, no. 1, 1998, Paris, France, pages 45 - 69, XP002407400, Retrieved from the Internet <URL:http://archive.numdam.org/ARCHIVE/RSA/RSA_1998__46_1/RSA_1998__46_1_45_0/RSA_1998__46_1_45_0.pdf> [retrieved on 20061114] *
ERLICH Z ET AL: "Data Mining by Means of Binary Representation: A Model for Similarity and Clustering", INFORMATION SYSTEMS FRONTIERS, vol. 4, no. 2, July 2002 (2002-07-01), Netherlands, pages 187 - 197, XP002407401, ISSN: 1387-3326, Retrieved from the Internet <URL:http://www.springerlink.com/content/myjcjj1wcu0qa3p6/fulltext.pdf> [retrieved on 20061114] *
HARTIGAN, J.: "Clustering Algorithms", 1975, JOHN WILEY AND SONS
JF MARCOTORCHINO; P MICHAUD: "Agrégation des similarités en classification automatique", REVUE DE STATISTIQUE APPLIQUÉE, vol. 30, no. 2, 1981
LEBART ET AL., STATISTIQUE EXPLORATOIRE MULTIDIMENSIONNELLE, 1995
P. MICHAUD; JF MARCOTORCHINO: "Modèles d'optimisation en analyse de données relationnelles", MATHÉMATIQUES ET SCIENCES HUMAINES, 1979, pages 7 - 38
SAPORTA G., PROBABILITÉS, ANALYSE DE DONNÉES ET STATISTIQUE, TECHNIP, 1990
See also references of EP1960916A1 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2940694A1 (fr) * 2008-12-30 2010-07-02 Thales Sa Procede et systeme pour classifier des donnees issues de base de donnees.
WO2010076260A1 (fr) * 2008-12-30 2010-07-08 Thales Procede et systeme pour classifier des donnees issues de base de donnees
US8458182B2 (en) 2008-12-30 2013-06-04 Thales Method and system for clustering data arising from a database
KR101496179B1 (ko) * 2013-05-24 2015-02-26 삼성에스디에스 주식회사 데이터 부재 태깅 기반의 정보 검색 시스템 및 방법
EP2889783A1 (fr) 2013-12-31 2015-07-01 Thales Procédé de classification non supervisée d'une pluralité d'objets et le dispositif pour la classification non supervisée associé à ce procédé

Also Published As

Publication number Publication date
CN101410831B (zh) 2012-04-18
FR2895110B1 (fr) 2017-12-29
CN101410831A (zh) 2009-04-15
FR2895110A1 (fr) 2007-06-22
US8423549B2 (en) 2013-04-16
US20090287723A1 (en) 2009-11-19
EP1960916A1 (fr) 2008-08-27

Similar Documents

Publication Publication Date Title
Meng et al. Interpretability and fairness evaluation of deep learning models on MIMIC-IV dataset
Chen et al. Algorithms to estimate Shapley value feature attributions
Jang et al. Knowledge unlearning for mitigating privacy risks in language models
Charalampakis et al. A comparison between semi-supervised and supervised text mining techniques on detecting irony in greek political tweets
Li et al. A framework for automatic TRIZ level of invention estimation of patents using natural language processing, knowledge-transfer and patent citation metrics
Zhang et al. Predicting startup crowdfunding success through longitudinal social engagement analysis
WO2008115519A1 (fr) Système pour estimer une distribution de catégories de contenu de message dans des données de source
Sharma et al. Supervised machine learning method for ontology-based financial decisions in the stock market
CN112419029B (zh) 类金融机构风险监控方法、风险模拟系统及存储介质
Wang et al. Advertisement click-through rate prediction using multiple criteria linear programming regression model
EP2374075A1 (fr) Procede et systeme pour classifier des donnees issues de base de donnees
US20120117043A1 (en) Measuring Duplication in Search Results
EP3574462A1 (fr) Detection automatique de fraudes dans un flux de transactions de paiement par reseaux de neurones integrant des informations contextuelles
EP1960916A1 (fr) Procede de classification non supervisee lineaire et stable sur l&#39;ordre des objets
Salvatore Inference with non-probability samples and survey data integration: a science mapping study
Akila et al. Opinion mining on food services using topic modeling and machine learning algorithms
Mansouri et al. TextBlob and BiLSTM for Sentiment analysis toward COVID-19 vaccines
Mihov et al. Mentalnet: Heterogeneous graph representation for early depression detection
US20210097605A1 (en) Poly-structured data analytics
İş et al. A Profile Analysis of User Interaction in Social Media Using Deep Learning.
Almutairi et al. A Comparative Analysis for Arabic Sentiment Analysis Models In E-Marketing Using Deep Learning Techniques
Foote et al. A computational analysis of social media scholarship
Alegre Sepúlveda et al. Twitter sentiment analysis for the estimation of voting intention in the 2017 Chilean elections
Pradana et al. Sentiment Analysis of Nanovest Investment Application Using Naive Bayes Algorithm
Issa Linked data quality: completeness and conciseness

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
DPE1 Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101)
NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2006841370

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 6221/DELNP/2008

Country of ref document: IN

WWE Wipo information: entry into national phase

Ref document number: 200680052844.4

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2006841370

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 12097613

Country of ref document: US