III. APPROCHES DE CLUSTERING
Selon la façon dont les clusters sont constitués, deux
approches ont été proposées :
A. Méthode hiérarchique [5] [6]
Ces méthodes constituent les classes graduellement sous
forme hiérarchique, autrement dit, un arbre appelé un
dendrogramme. Les algorithmes basés sur cette méthode
essaient de créer une hiérarchie de clusters, les objets les plus
similaires sont regroupés dans des clusters aux plus bas
niveaux, tandis que les objets les moins similaires sont
regroupés dans les clusters aux plus hauts niveaux. On
distingue deux sous types :
1) Agglomération (ascendant)
On commence en considérant chaque point comme une classe
et on essaye de fusionner deux ou plusieurs classes
appropriées selon une similarité pour former une nouvelle
classe. Le processus est itéré jusqu'à ce que les points se
trouvent dans une même classe.
2) Division ( descendant)
En considérant tous les points comme une seule classe au
départ, on divise successivement les classes en classes plus
raffinées. Le processus se réitère jusqu’à ce que chaque classe
contienne un seul point ou bien si le nombre de classe souhaité
est atteint.
Plusieurs algorithmes utilisant cette méthode ont été proposés,
on cite:
Algorithme BIRCH (Balanced Iterative Reducing and
Clsutering using Hierarchies)
L’idée principale de BIRCH est d’effectuer une
classification sur un résumé compact des données. Deux
phases principales caractérisent cette méthode :
Phase1 : construction en mémoire d’un arbre de sous
classes
Phase2 : application en mémoire d’une technique
classique de clustering sur les sous classes les plus fines
de l’arbre.
Algorithme ROCK (Robust Clustering using Link)
ROCK est un algorithme de classification hiérarchique qui
utilise un nouveau concept de liens entre les objets pour
mesurer la similarité entre ces points de données au lieu
des métriques pour les données numériques ou le
coefficient de Jaccard.
B. Méthode de partitionnement [1] [3]
Le partitionnement de données vise à diviser un ensemble
de données en différents clusters homogènes. Son principe
consiste à subdiviser l’ensemble des individus en un certain
nombre de classes en employant une stratégie d’optimisation
itérative dont le principe général est de générer une partition
initiale, puis de chercher à l’améliorer en réattribuant des
données d’une classe à l’autre.
Contrairement aux algorithmes hiérarchiques qui produisent
une structure de classes, les algorithmes de partitionnement
produisent quant à eux, une seule partition en recherchant
donc des maxima locaux en optimisant ainsi une fonction
objective traduisant le fait que les individus doivent être
similaires au sein d’une même classe et dissimilaires d’une
classe à une autre.
Les algorithmes de partitionnement sont divisés en trois sous
familles : la méthode k-means, k-medoids, k-nn.
1) Algorithme k-means
Est un algorithme de quantification vectorielle qui va chercher
à séparer un ensemble de points en K clusters.
K-means définit par McQueen est un des plus simples
algorithmes de classification automatique des données. L’idée
principale est de choisir aléatoirement un ensemble de centres
fixé à priori et de chercher itérativement la partition optimale.
Chaque individu est affecté au centre le plus proche en
utilisant la distance Euclidienne. Après l’affectation de toutes
les données, la moyenne de chaque groupe est calculée, elle
constitue les nouveaux représentants des groupes, lorsqu’ont
abouti à un état stationnaire (aucune donnée ne change de
groupe) l’algorithme s’arrête.
2) Algorithme k-medianes
Suivant le méme principe de algorithme k-means, l’algorithme
k-medianes (k-medoids) se basent sur le calcul des medianes
plutôt que sur les moyennes pour évaluer le centre du clusters.
3) Algorithme k plus proche voisin (Knn)
Afin de classer un point x, cet algorithme consiste à rechercher
dans un ensemble, les k points les plus proches de x par une
mesure de distance d, et attribue x à la classe qui est la plus
fréquente parmi ces k voisins.
IV. CLASSIFICATION NON SUPERVISEE DES
USAGERS WEB [4] [2]
L’analyse de cluster est considérée comme l'un des aspects
les plus importants dans le processus du Web Mining pour
découvrir des groupes significatifs (distributions intéressantes
ou des motifs sur les ensembles de données pris en compte)
ainsi que l'interprétation et la visualisation des comportements
clés présentés par les utilisateurs de chaque cluster. Le
partitionnement de ces données est une tâche importante en
analyse de données, elle divise les usagers en plusieurs sous-
ensembles, ces sous-ensembles appelés groupes ou clusters.
Le clustering peut alors être définie comme étant l'ensemble
des méthodes visant à découper un ensemble d'objets en
plusieurs groupes (clusters) en fonction des attributs qui les
décrivent. L'objectif du clustering est ainsi de regrouper dans
le même cluster les observations jugées similaires, selon une
certaine métrique, (homogénéité intra-classe) et de placer les
observations jugées dissimilaires dans des clusters distincts
(hétérogénéité inter-classe). Une bonne classification de