Analyse de Flux d’Information par Classifications
Incrémentales : Bilan d'étape novembre 2007
1. Résumé des objectifs de l'opération
Lobjectif du projet est de développer des outils de veille prenant en compte le facteur
temps afin de suivre l’évolution des thématiques de recherche d’un domaine scientifique
donné en termes d’émergence ou de déclin. Notre choix se porte sur les méthodes de
classification non supervisée qui permettent d’extraire automatiquement des thématiques à
partir de corpus de documents. Si elles prennent en compte l’aspect incrémental de
l’information, elles permettent, en plus, la détection de convergences et divergences de
thématiques.
Nous proposons une approche en deux phases :
a. Comparaison de classifications « statiques »
Le corpus est découpé en différentes périodes de temps sur lesquelles nous appliquons
des classifications statiques. Afin de calculer le différentiel entre deux pas de temps
distincts, nous appliquons les mesures de consistance définies dans le cadre du
modèle « Multi-Viewpoint Data Analysis » (MVDA) [Al-Shehabi & Lamirel 2005].
Ce modèle considère chaque classification comme une vue, et exploite la
communication entre les vues en établissant de manière non supervisée un réseau
bayésien entres ces dernières.
b. Développement d'algorithmes de classification incrémentale
Nous étudions le fonctionnement de différents algorithmes de classification
incrémentale adaptés au traitement de l’information scientifique et technique. Ces
méthodes sont, d’une part, une approche basée sur la notion de densité (algorithme
GERMEN) [Lelu 2006], d’autre part, une nouvelle adaptation incrémentale de
l’algorithme « Growing Neural Gas » (GNG) [Fritske 1995].
Afin d’analyser le comportement des différents classifieurs définis dans le projet, nous
mettons en place un « observatoire des résultats » incluant des outils de mesures de qualité des
classifieurs et des outils de visualisation des résultats.
2. Travaux effectués durant le premier semestre : mars – octobre 2007
Une étude bibliographique sur les méthodes de classification statiques et dynamiques a permis
de situer le problème dans son contexte et d'appréhender différentes approches. Cette étude
dont nous exposons les principaux points ci-dessous sera complétée par l'analyse de
publications récentes tout au long du projet.
Le cadre expérimental de ce projet consiste en l’application des différentes méthodes
développées sur des données documentaires. Dans cette première phase du projet, nous avons
utilisé un corpus bibliographique test de la base PASCAL (www.inist.fr). Ce corpus, que nous
nommons ci-après « corpus de référence » rassemble 1541 notices du domaine de la
1
géotechnique publiées en 2003, signalant des documents de type article, congrès ou thèse.
Pour réaliser les classifications, nous utilisons les termes d’indexation présents dans les
notices.
Dans cette première période, nous avons plus particulièrement étudié deux approches de
classifications incrémentales.
D’une part, le programme de classification incrémentale non supervisée GERMEN, basé sur
la notion de densité, [Lelu et al. 2006] a été finalisé et corrigé. Nos travaux ont plus
particulièrement porté sur le pré-traitement des données avant classification. Nous avons
étudié une méthode de pré-traitement qui nous semble prometteuse (Tournebool) : elle permet
de déterminer de façon probabiliste les liens entre documents et calculer ainsi le graphe des
documents à classifier.
D’autre part, une méthode de classification dérivée des méthodes GNG et que nous nommons
I2GNG pour « Improved Incrmenetal GNG » a également été développée. I2GNG a d’abord
été testé de façon supervisée sur un corpus de données de type facture, et ensuite, de façon
non supervisée sur notre corpus documentaire de référence.
Afin d’outiller l’analyse des résultats obtenus par ces deux méthodes de classification, nous
avons développé, d’une part, des indices de qualité calculables à partir des résultats quelque
soit la méthode de classification utilisée, et d’autre part, une méthode de visualisation
hyperbolique des résultats de classification multidimensionnelle utilisant un algorithme de
classification hiérarchique original basé sur la densité associé à une nouvelle méthode
d’étiquetage des classes.
2.1. Etude bibliographique
Dans un premier temps nous nous sommes intéressés aux méthodes de classification
existantes afin de positionner et de finaliser les méthodes incrémentales que nous proposons.
Nous avons tout d'abord fait la synthèse des méthodes statiques non supervisées en étudiant
différentes familles de classifieurs. Plusieurs découpages sont possibles ([Beck 2006] ;
[Candillier 2004] ; [Turenne 2001]), nous avons choisi celui utilisé entre autre par N. Pasquier,
ou P. Leray [Leray 2004]:
Algorithmes de partitionnement
Algorithmes hiérarchiques
Algorithmes basés sur la densité
Algorithmes de grilles
Algorithmes autoadaptatifs
Nous avons ensuite étudiés les méthodes dynamiques existantes. Parmi ces méthodes, nous
avons repérés les suivantes :
des adaptations de la méthode des K-means pour la rendre incrémentale ([Lin & al.
2004] ; [Gaudin & Nicoloyannis 2005]),
des méthodes neuronales comme ART, CLASSPHERES, IGNG ([Aguilar &Ross
1994] ; [Puzenat 1995 ], [Prudent & Ennaji 2004] ; [Furaoa 2006])
des méthodes hiérarchiques comme JERARTOP, COBWEB ou CURE ([Pons-Porrata
et al. 2004] ; [Fisher 1987] ; [Talavera 2000] ; [Guha et al. 1998])
des méthodes par densité comme DBSCAN, CHAMELEON, OPTICS, DENCLUE
([Ester et al. 1998] ; [Karypis et al. 1999] ; [Ankerst et al. 1999] ; [Hinneburg & Keim
1998])
2
Cependant, ces algorithmes ne satisfont pas une ou plusieurs de nos exigences, à savoir :
Etre indépendant des conditions initiales,
Tenir compte d'un univers de description ouvert,
Etre indépendant de l'ordre d'arrivée des données,
• Dégager des individus isolés ou des petits groupes d'individus marginaux,
Pouvoir donner des classes recouvrantes,
Voir des classes apparaître, éclater, fusionner…
Il ressort de notre panorama, que les méthodes qui nous paraissent éligibles pour devenir
incrémentales sont les méthodes biomimétiques, ([Lee & Antonsson 2000] ; [Monmarché et
al. 2001] ; [Azzag et al. 2005] ; [Lavergne 2007]), les méthodes par densité ([Tremolières
1979] ; [Ester et al. 1998] ; [Karypis et al. 1999] ; [Ankerst 1999] ; [Hinneburg & Keim
1998]), et les méthodes basées sur les gaz de neurones évolutifs (GNG) ([Prudent & Ennaji
2004] ; [Furaoa 2006]).
2.2. Méthode de classification basée sur la densité (Germen)
L'algorithme GERMEN basé sur la notion de densité [Lelu 2006] [Lelu et al. 2006] est
développé en collaboration avec A. Lelu (Université de Franche-Comté). Le principe de cette
méthode est de localiser les maxima du paysage de densité des données à chaque instant t,
puis d’identifier les perturbations locales induites par chaque document présenté sur le
paysage à t-1, ainsi que les modifications de frontières de classes en résultant.
Les documents à classer sont décrits par leurs mots-clés (indexation manuelle), ils sont
organisés en un graphe, où chaque nœud représente un document, et où les arcs représentent
les liens de voisinage entre documents. Pour chaque documents ne sont conservés que les K
plus proches voisins (K étant un paramètre de la méthode). Ce graphe est orienté et valué. Le
partitionnement de ce graphe peut être vu comme le repérage deuds principaux ("chefs de
classe") localement plus denses que leur entourage, puis comme l’extension de leur zone
d’influence par rattachement unique ou partagé ("héritage" simple ou multiple) de leurs
voisins de plus en plus éloignés.
Le déroulement de l’algorithme permet de construire progressivement une structure de donnée
comportant pour chaque nœud : sa densité, son (ou ses) numéros de chef(s) de classe et enfin
la liste de ses voisins. Ces données sont constamment mises à jour : à chaque arrivée d’un
document (nœud) nouveau, les changements de densité induits dans son voisinage sont
calculés, ainsi que les changements de chef(s) de classe induits.
L'algorithme GERMEN que nous venons de décrire brièvement est programmé en python.
Les résultats actuels de l’algorithme ne correspondent pas encore à nos attentes, le réglage des
paramètres s'avérant délicat. Un test sur un petit jeu de données simples a permis de constater
que GERMEN donnait bien les classes attendues, mais le passage sur des données réelles pose
encore problèmes.
Une piste d’étude consiste à pré-traiter les données initiales : nous avons testés deux méthodes
de lissage des données et une nouvelle méthode de calcul du graphe des données (en
remplacement de la méthode des KPPV).
2.2.1.Les méthodes de lissage
3
Les données initiales peuvent être représentées sous la forme d'une matrice booléenne
documents mots très creuse. Le but des méthodes testées ici est de compléter chaque vecteur
document avec des mots qu'il ne contient pas mais qu'il aurait pu contenir. Au final nous
obtenons une matrice pleine valuée.
Matrice des coefficients de corrélation
Le principe de ce premier pré-traitement consiste à multiplier la matrice d’origine par la
matrice (M) des coefficients de corrélation entre mots-clés, donnés par la formule suivante:
 
2 2
( )*( )
( , ) ( ) * ( )
x x y y
M x y x x y y
 
 
Ou
x
et y sont les listes des valeurs des colonnes x et y,
x
et
y
sont les moyennes des valeurs
de
x
et
y
.
Partial Singular Value Décomposition (pSVD)
Cette méthode est dérivée du SVD (Singular Value Décomposition : décomposition en valeur
et vecteurs propres Elle permet de combler les informations manquantes (valeurs nulles) d’une
matrice par les valeurs qui auraient dû être présentes. Cet algorithme (que nous baptiserons
pSVD) a été défini par Simon Funk (http://sifter.org/~simon/journal/20061211.html) dans le
cadre du challenge Netflix (http://www.netflixprize.com).
Rappelons que la méthode SVD décompose une matrice M, de dimension m et n, en un
produit de trois matrices :
[M] = ([U].[S].[V]')
Où [U] et [V] sont des matrices orthogonales, [U] (m x m) est la matrice des vecteurs propres
de [M].[M]' et [V] (n x n) est la matrice des vecteurs propres de [M]'.[M], avec
[U]'.[U] = [V]'.[V]=1
[S] est une matrice diagonale (m x n) dont les termes ( sii>=0) sont les valeurs singulières de
[M]. Le rang de [M] est égal aux nombres de termes sii <>0
La méthode pSVD consiste à construire la décomposition (U et V) de manière itérative en
traitant la matrice M par parties [Maillet2007].
2.2.2.La méthode de validation Tournebool
Tournebool [Cadot 2006] est un algorithme de validation statistique. Il consiste dans un
premier temps à générer aléatoirement plusieurs centaines de matrices booléennes
S-équivalentes (qui ont des sommes marginales égales) de la matrice booléenne des données,
et, dans un second temps à rechercher les couples de données qui présentent un lien qui n’est
pas dû au hasard. Le mode de calcul de ces liens est le produit scalaire entre les deux données.
La figure 1 présente la courbe de répartition de l’ensemble des liens possibles entre deux
données. Pour chaque couple de données, la valeur maximale des liens possibles est calculée.
4
Si la valeur du lien dans la matrice des données (valeur réelle) est supérieure à 97.5% du
maximum, alors le lien est validé car il n’est pas dû au hasard. De même, si la valeur réelle est
inférieure à 2.5% de la valeur maximum, un antilien est validé. Les valeurs dans l’intervalle
compris entre ces bornes sont considérées comme dues au hasard (Figure 1).
Dans notre application, nous analysons la matrice booléenne documents mots-clés, le produit
scalaire entre deux documents correspond au nombre de mots-clés partagés par les deux
documents. Pour cette expérimentation nous n'avons pas utilisé la notion d'antilien.
Afin de filtrer les liens entre documents à conserver pour la classification, nous avons
introduit la notion de « degré de liaison dl ». Ce paramètre a d’abord été défini comme la
différence entre le seuil calculé S (97.5% de la valeur maximale) et la valeur réelle Vr, il a
donné des premiers résultats intéressants (figure 2a). Afin de normer ce paramètre, nous avons
ensuite opté pour une définition intégrant le nombre maximal possible de mots clés communs
à deux documents :
Vr S
dl Vmp S
et S = (1-α) * Vmax
avec :
Vr = Valeur réelle (nombre de mots clés communs à deux documents)
Vmp = Valeur maximale possible (nombre maximal possible de mots clés communs à deux
documents)
Vmax = Valeur maximale générée aléatoirement
α = risque de l’intervalle de confiance (0,025 dans l’exemple)
S = seuil calculé
Figure 1 : Exemple de répartition des valeurs possibles de liens entre les données d’une matrice.
2.2.3.Résultats
Les méthodes de lissage par matrice des coefficients de corrélation (Corcoef) et par pSVD
n'ont pas donné de bons résultats. La classification faite à partir des résultats de lissage
"Corcoef" multiplie le nombre de classes de façon importante et surtout le nombre de
documents isolés (tableau 1).
Sans lissage Lissé avec Corcoef
K=3
5
1 / 28 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !