Méthodes de clustering subspatial

In document Travail de session : Mémoire. Le clustering de données. Par Nicolas Sola & Mathieu Schmitt (Page 32-38)

Haute dimensionnalité des données

3.2 Méthodes de clustering subspatial

3.2.1 Présentation

Les méthodes de clustering subspatial effectuent des recherches de clusters dans divers sous-espaces. Dans ce contexte bien spécifique, le cluster peut être défini comme un sous-ensemble d’objets similaires entre eux dans un sous-espace.

La figure 3.2 représente les techniques de recherche de sous-espaces ainsi que les mesures utilisées.

Figure 3.2: Hiérarchie des algorithmes de clustering par sous-espaces

Une approche simple consisterait à rechercher les clusters dans tous les sous-espaces mais cette solution n’est pas à retenir puisque le problème reste insurmontable.

Il existe deux types de recherche subspatiale [7] :

1. Méthode de recherche ascendante présentée en 3.2.2 : Les algorithmes commencent leur recherche dans des sous-espaces à petites dimensions, puis sont en quête de sous-espaces plus grands susceptibles de contenir des clusters,

2. Méthode itérative de recherche descendante présentée en 3.2.3 : La recherche effectuée par les algorithmes englobe tout l’espace et cette fouille continue dans des sous-espaces de plus en plus petits.

3.2.2 Méthode de recherche ascendante

Le concept de la recherche ascendante consiste à s’approprier les avantages de la densité des fermetures pour réduire l’espace de recherche avec l’aide d’une approche de typeApriori. De manière plus concrète, si la dimensionkpossède une unité dense, nous trouvons impérativement des unités denses dans la dimension de niveau (k −1). L’algorithme CLIQUE utilise cette approche (3.2.2). Notons que l’approche ascendante conduit souvent à des clusters qui se chevauchent : un objet peut ainsi se retrouver dans un ou plusieurs clusters. Comme cette approche utilise des grilles (méthode étudiée en 1.4.2), nous devons au préalable configurer la taille de la grille et le paramètre de densité pour obtenir des résultats plausibles. Les algorithmes CLIQUE (3.2.2) et ENCLUS se fondent sur une grille statique. Cependant, ces valeurs pré-configurés se retrouvent au travers de toutes les dimensions du jeu de données ce qui peut provoquer quelques cheveux gris à nos éminents experts. Des chercheurs se sont penchés sur cette problématique et ont engendré une génération de grilles adaptées dans la stabilisation des résultats. Les algorithmes MAFIA (3.2.2) ou CLTree sont les fruits de leurs travaux.

Grille statique : algorithme CLIQUE

CLustering In QUEst est qualifié d’algorithme qui se fonde à la fois sur la densité et sur les grilles. Il identifie de manière automatique les sous-espaces contenus dans des espaces à haute-dimensionnalité de données. Ainsi, par essence, CLIQUE partitionne dans un premier temps chaque dimension dans le même nombre d’intervalles de longueur égale. Il s’inspire ici de l’algorithme Apriori : unekd cellule ne peut être dense si une de ses (k−1)−dprojection ne l’est.

Dans un deuxième temps, CLIQUE utilise la densité de chaque cellule contenue dans chaque sous-espace pour la création des clusters. Une cellule est dite dense si le nombre de points de données dans cette cellule excède un certain seuil. L’algorithme définit un cluster comme étant un ensemble de cellules hautement denses connectées au sein d’un même sous-espace.

Les avantages de CLIQUE sont multiples. Cet algorithme permet entre autres de déceler au-tomatiquement des sous-espaces dans un espace à haute dimensionnalité. De plus, il croît linéairement avec la taille des données ; de la même façon, il se comporte tout aussi bien vis-à-vis de l’accroissement du nombre de dimensions. Il présente néanmoins quelques problèmes : obtenir un cluster de bonne qualité dépend du réglage de la taille de la grille et du seuil de den-sité ; or, ces valeurs s’utilisent au travers de toutes les dimensions 3.3a. Nous relevons un point de contradiction entre la simplicité de la méthode et la dimensionnalité des données à analyser.

L’algorithme MAFIA présenté ci-dessous (3.2.2) permet de s’abstraire de ces contraintes.

Grille adaptative : algorithme MAFIA

MAFIA (Merging of Adaptative Finite Intervals (Algorithm)) est un algorithme qui utilise les grilles adaptatives 3.3b : celles-ci réduisent les calculs et améliorent la qualité des clusters. En effet, l’algorithme propose dans chaque dimension une technique de calcul adaptatif d’intervalles finis appelés "bins" en anglais ; ces intervalles fusionnent ensuite et explorent des clusters dans une plus grande dimension. MAFIA se différencie ici et améliore considérablement l’algorithme CLIQUE.

Retenons une autre divergence entre les deux algorithmes :

– MAFIA ne fait pas appel aux valeurs d’entrée fournies par l’utilisateur, la force des clusters qui sont à découvrir dans le jeu de données suffit à le satisfaire,

– MAFIA fournit une concentration optimale sur des espaces de données possédant le plus de points et par déduction la plus grande probabilité de détenir des clusters. MAFIA procure une taille d’intervalle adaptatif pour partitionner la dimension en fonction de la distribution des données dans cette dimension.

(a) (b)

Figure 3.3: Différence entre les grilles de type statique (3.3a) et adaptative (3.3b).

Images tirées de [5]

En premier lieu, l’algorithme opère une passe sur toutes les données et crée un histogramme qui détermine le nombre minimum de "bins" pour une dimension. Puis, les intervalles finis présentant un histogramme de valeurs similaires et qui sont contiguës font l’objet d’une fusion en vue de la création de plus larges intervalles (bins). Les "bins" et les cellules à faible densité sont élagués pour réduire les calculs.

MAFIA détient un atout dans le sens où les limites des intervalles finis ne sont pas rigides : les clusters formés sont plus précis dans chaque dimension ce qui implique une amélioration très significative de la qualité des résultats du clustering.

Une comparaison entre CLIQUE et MAFIA aboutit à la conclusion suivante : la technique employée par MAFIA rend cet algorithme 40 à 50 fois plus rapide que son homologue. De plus, MAFIA introduit la notion de parallélisme permettant d’obtenir un algorithme évolutif

3.2.3 Méthode itérative de recherche descendante

L’approche de recherche descendantei.e."Top-Down" s’emploie tout d’abord à trouver une approximation des clusters dans tout l’espace de données avec des dimensions de même pon-dération. Les prochaines dimensions se voient assigner un poids pour chaque cluster ; les poids mis à jour sont utilisés ensuite pour régénérer les clusters.

Cette approche cependant nécessite plusieurs itérations sur tout le jeu de données pour résoudre le problème, les algorithmes qui se servent de cette approche mettent à profit l’échantillonnage.

Ces méthodes d’échantillonnage nécessitent l’utilisation de la taille de l’échantillon en plus des deux paramètres obligatoires : le nombre de clusters et la taille de sous-espaces.

La notion de voisinage est définie par des approximations fondées sur le coefficient de pondéra-tion de la dimension obtenue précédemment. À titre d’exemple, les algorithmes PROCLUS et FINDIT 3.2.3 utilisent cette notion de pondération.

Algorithme avec coefficient de pondération : FINDIT

L’algorithme FINDIT (a Fast and Intelligent Subspace Clustering Algorithm using Dimension Voting) détermine la corrélation pour chaque cluster en s’appuyant sur deux facteurs :

1. Dimension-oriented Distance (dod) :Mesure la similarité entre deux points en comp-tant le nombre de dimensions pour lesquelles la différence des valeurs des deux points est plus petit que le seuilε,

2. Dimension voting policy : Détermine les dimensions importantes de manière proba-biliste par utilisation du "V nearest neighbors" choisi lors du processus de sélection des dimensions.

L’algorithme FINDIT utilise trois entrées pour fonctionner : 1. Le jeu de données,

2. Cminsize : La taille minimum du cluster,

3. Dmindist : La différence minimum entre deux clusters.

Par ailleurs, l’algorithme FINDIT œuvre selon trois phases illustrées sur la figure 3.4 : 1. La phase d’échantillonage :Deux échantillons dissemblables sont générés grâce à des

méthodes d’échantillonages aléatoires. Le premierS est un échantillon de la distribution bâti à partir du jeu de données, le deuxième M est aussi construit à partir du jeu de données et ses points sont représentatifs i.e.médoids des clusters originaux,

2. La phase de formation des clusters : Cette phase permet d’acquérir des clusters par l’exploitation des échantillons S et M générés lors de la première phase. Nous devons déterminer les dimensions corrélées1 en appliquant la méthode de vote présentée ci-dessus. Puis, les médoids proches les uns des autres sont regroupés pour donner naissance à des clusters médoids[6]. Enfin, FINDIT incrémente la valeur de ε et renouvelle cette opération jusqu’à stabilisation des clusters,

3. La phase d’assignement des données :Tous les points sont assignés à leur plus proche cluster médoid, les points sans affectation sont considérés comme valeur aberrante.

FINDIT se veut rapide grâce au processus de vote fondé sur l’échantillonnage : la sélection des dimensions ne requiert pas d’itération et de partitionnement de la dimension. De plus,

Figure 3.4: Étapes de l’algorithme FINDIT. Image tirée de [6]

3.2.4 Comparaison des méthodes ascendantes et descendantes

Dans cette sous-section, nous comparons les deux algorithmes représentatifs de chaque mé-thode de recherche par sous-espace à savoir : MAFIA (3.2.2) et FINDIT (3.2.3). Nous nous appuierons sur les résultats de l’article [12].

Le graphique 3.5 montre la supériorité de performance de MAFIA sur son homologue FINDIT dans la majorité des cas : nous observons une bonne résultante de l’approche ascendante qui évite de multiples passages sur les données. Devant un petit jeu de données (<500,000objets) et peu de dimensions MAFIA excelle ; ceci s’explique par le fait que les algorithmes utilisant la méthode ascendante nécessitent un petit nombre de dimensions significatives lors de leur recherche.

Une augmentation du nombre de données implique logiquement pour les deux algorithmes un temps d’exécution plus long. La figure 3.5b montre que FINDIT écrase MAFIA lorsque le jeu de données prend de l’importance (>4,000,000d’objets) : un K.O. au bénéfice de FINDIT qui fait appel à l’échantillonnage aléatoire et à ses avantages dans ce cas précis. Les performances de MAFIA s’estompent, l’algorithme est contraint de scanner à chaque passe toutes les données qui permettent de trouver des unités denses.

(a) (b)

Figure 3.5: Temps d’exécution pour les algorithmes MAFIA et FINDIT dans le cas d’un petit jeu de données (3.5a) et d’un grand jeu de données (3.5b).

Images tirées de [12]

La figure 3.6 effectue une autre comparaison : un petit jeu de données (100,000 objets) et un grand nombre de dimensions. Le jeu de données contient 5 clusters.

Figure 3.6: Étapes de l’algorithme FINDIT. Image tirée de [6]

Nous constatons que MAFIA réalise à nouveau une excellente performance (il croît linéaire-ment avec le nombre de dimensions) car l’approche ascendante projette les données sur de petits sous-espaces et ajoute uniquement les dimensions qui présentent un sens. L’approche d’échan-tillonnage aléatoire employé par FINDIT n’est d’aucun secours dans ce cas puisque l’algorithme doit pondérer chaque dimension, pour chaque cluster et sélectionner les plus significatifs.

In document Travail de session : Mémoire. Le clustering de données. Par Nicolas Sola & Mathieu Schmitt (Page 32-38)

Related documents