Clustering : Guide Essentiel et Applications
Clustering : Guide Essentiel et Applications
z Optimiser le regroupement
¾ Maximisation de la similarité intra-classe
¾ Minimisation de la similarité inter-classes
Maria Rifqi
z Principales applications
¾ Observer la distribution des données en identifiant
les groupes et leurs caractéristiques (découvrir des
corrélations)
¾ Préparation des données pour un autre algorithme
ou application
Applications du Clustering
z Reconnaissance de formes
Cj
z Analyse des données spatiales:
Ci z Traitement d’images
ωl
ωm z Market Research
ωk
z Recherche d’information
¾ Catégorisation de documents ou de termes
Les individus d’d’ une même Les individus de deux classes ¾ Visualisation de l’information et interfaces de recherche d’information
classe sont le « plus ressemblants » difféé rentes sont « le plus disse mblables »
diff
possible possible
z Web Mining
¾ Clustering des usages du web pour découvrir des groupes d’accès similaires
¾ Personalisation du Web
1
Qualité d’une méthode de clustering Le clustering est un problème mal posé
2
Mesure de similarité entre objets Variables numériques continues
z Similarité entre objets calculée selon leur caractéristiques (attributs z Souvent, les distances sont utilisées
possédés, valeurs des attributs, taille des objets, etc.) z Propriétés des distances :
¾ Souvent exprimée en termes de fonctions de distance : d(o1,o2) ¾ Symétrie : Pour tout A et tout B, D(A, B) ≥ 0, and D(A, B) = D(B, A)
¾ Pour tout A, D(A, A) = 0
¾ Fonction de distance différente pour les variables numériques continues,
booléennes, catégoriques, ordinales et de ratios ¾ Inégalité triangulaire : D(A, C) ≤ D(A, B) + D(B, C)
z Objets « suffisamment similaires » sont regroupés en clusters D(X,Y) = [(x1 –y1)2 + (x2 –y2)2 + ... + (xN –yN)2]1/2
¾ Définition de « suffisamment similaire » difficile, subjective
¾ Distance de Minkowski (généralisation de la distance euclidienne) :
z Mesure de qualité de chaque cluster D(X,Y) = [(x1 –y1)q + (x2 –y2)q + ... + (xN –yN)q]1/q , q entier positif non nul
¾ Selon la distance entre les objets appartenant au cluster et la distance
entre les clusters ¾ Distance de Manhattan (q=1) :
z Valeurs entre 0 et 1
x 'i =
xi − min xi z Standardiser les données
max xi − min xi
z Exemple ¾ Égaliser le poids des variables pour assurer
¾ max distance de l’âge: 100000-19000 = 79000
l’indépendance par rapport aux unités de mesures
¾ max distance de l’âge : 52-27 = 25 ¾ Calculer la déviation absolue moyenne :
ID Sexe Age Salaire ID Sexe Age Salaire sf = 1/n(|x1f - mf| + (|x2f - mf| +...+ (|xNf - mf| )
1 F 27 19 000 1 1 0,00 0,00
2 M 51 64 000 2 0 0,96 0,56 avec :
3 M 52 100 000 3 0 1,00 1,00
4 F 33 55 000 4 1 0,24 0,44
mf = 1/n(x1f+ x2f +...+ xNf)
5 M 45 45 000 5 0 0,72 0,32
¾ Puis calculer le z-score :
zif = (xif - mf)/sf
¾ dist(ID2, ID3) = SQRT( 0 + (0.04)2 + (0.44)2 ) = 0.44
¾ dist(ID2, ID4) = SQRT( 1 + (0.72)2 + (0.12)2 ) = 1.24
1 a b a +b où Oi a 1 et Oj a 1 0 (Absence) c d
3
Variables binaires Variables nominales
z Procédure adoptée :
¾ regrouper ensemble tous les éléments dont la distance est
inférieure ou égale à 3 et uniquement ceux-ci.
z Distance ultramétrique : au lieu de l’inégalité triangulaire,
on a :
¾ D(X,Y) <= max(D(X,Z), D(Y,Z))
4
Méthode hiérarchique : exemple Méthode hiérarchique : exemple
¾ On recalcule la matrice des distances ¾ Nous pouvons distinguer trois groupes ou agrégats, le
premier formé des jurés Tania et Ute distant de celui
D Xav, Ziad, Yves de Xav et Ziad de 2,5 unités et enfin au loin le juré
Tania, Ute Yves distant de 3,5 de ses voisins les plus proches. Il
Xav, Ziad, 0 semble que ce dernier devra être exclu du jury.
Tania,Ute
Yves 3,5 0
z La stratégie
d’agrégation de
l’exemple est une
3,5 stratégie du
2,5 “minimum”. Peut-on
2
en imaginer d’autres ?
1,5
¾ On peut en envisager au
moins 6 autres !
5
Méthodes par partitionnement Méthodes par partitionnement
z Partitionnement : les objets du jeu de données sont z But : partitionner un ensemble X de N objets {x1, x2, ... xN} en k
groupés en k clusters classes (k fixé par l'utilisateur)
z Chaque classe Ck ayant Nk membres est définie par un prototype ou
z Étant donnée une valeur k, trouver une partition de k centre
clusters qui optimise le critère de partionnement (fonction 1
de similarité) mk =
Nk
∑x
x∈Ck
z Approches heuristiques : z Critère de performance : à défaut de valeurs cibles, l'erreur est
¾ K-means : chaque cluster est représenté par son centre de définie comme la distance euclidienne entre individus et centres des
gravité groupes
¾ K-medoïds : chaque cluster est représenté par un objet du cluster K 2 K T
E 2 = ∑ ∑ x x − mk = ∑ ∑ ( x − mk ) ( x − mk )
k =1 x∈Ck k =1 x∈Ck
6
Indice de validité VRC K-means : bilan
z Force des k-means:
z Une trentaine d'indices de validité étudiés par Mulligan & Cooper 85
¾ Relativement efficaces : O(tkn), où n est le nb d’objets, k est le nb de clusters, et
z Meilleures performances obtenues par l'indice VRC (variance ratio t est le nb d’itérations. Normalement, k, t << n
criterion) ¾ Terminent souvent dans un optimum local
dispersion inter − groupes B z Faiblesse des k-means:
VRC = =
dispersion intra − groupes W ¾ Besoin de préciser k à l’avance
1 K ¾ Sensibles aux données bruitées et aux exceptions, aux cas aberrants
∑ N t mt − m
2
B=
K − 1 t =1 ¾ Sensibles à l’initialisation
2
z lancer plusieurs éxecutions avec différents états initiaux
K
1
∑ x−m
z retenir la configuration jugée la meilleure
W= ¾ marche mal lorsque les groupes se chevauchent => variante : K-means flou
N −K
t
t =1
z Les variantes des K-Means diffèrent dans :
m = grand centre (vecteur des moyennes prises sur toutes les N ¾ La sélection des k initiaux
données ) ¾ Calcul de la dissimilarité
m i = centre du groupe i ¾ Stratégies pour calculer la moyenne d’un cluster
z Cas particulier du k-means : chaque individu z Les individus à classifier sont des réalisations
appartient à un cluster avec un certain degré de indépendantes d’un vecteur aléatoire de loi f.
probabilité z Plusieurs approches :
¾ Classification bayésienne
¾ Estimation de densité de probabilité (méthodes non
paramétriques)
¾ Modèles fonctionnels à effet fixe
¾ Mélange fini de densités de probabilité
7
Modèle de mélange : exemple Fuzzy k-means
z Trouver les 5 paramètres : mA, sigmaA, mB, z Initialiser les moyennes m1, m2,..., mk
sigmaB, pA z Tant qu’il n’y a pas de changement dans les moyennes :
¾ m = x1 + ... + xn/n ¾ Utiliser les moyennes estimées pour trouver les degrés
d’appartenance u(j,i) de xj dans le Cluster i;
¾ sigma2= [(x1-m) 2 + ... + (xn-m) 2] /(n-1) par exemple, si a(j,i) = exp(- || xj - mi ||2 ), on peut utiliser u(j,i) =
a(j,i) / sum_j a(j,i)
¾ pA = nb d’exemples dans A / n
¾ For i = 1 to k
z Problème : on ne connait ni la classe des z Remplacer mi avec la moyenne floue de tous les exemples du
∑ u ( j , i) x
Cluster i 2
exemples ni les 5 paramètres j
mi =
j
¾ m = w1x1 + ... + wnxn/(w1+...+wn)
∑ u ( j, i) 2
z end_until
z self-organizing maps ou SOM, souvent appelés "réseaux z Les relations de voisinage entre les neurones définissent
de Kohonen" une topologie et donc un nouvel espace. 2 espaces :
z très proches des algorithmes de centres mobiles ¾ Un espace des entrées dans lequel peuvent être représentés les
¾ représentent les données par un nombre réduit de prototypes données et les vecteurs poids des neurones
(appelés neurones dans les SOM) ¾ Un espace de sortie (ou carte à une ou deux dimensions) qui
¾ méthode d'apprentissage compétitive : le "gagnant" = le prototype contient l’ensembles des neurones et sur lequel une topologie a
le plus proche de l'objet donné été définie.
z ce qui distingue les SOM de K-means : préservation de la z But de la cartographie associative :
topologie ¾ Associer chaque vecteur d’entrée à un neurone de la carte
¾ les objets les plus semblables seront plus proches sur la carte =>
¾ On espère que 2 vecteurs proches dans l’espace des entrées
visualisation claire des groupements
exciteront 2 neurones proches sur la carte.
8
Algorithme du SOM Paramètre 1 : le pas d'apprentissage
z Initialiser un ensemble de neurones ou prototypes suivant la topologie z Contrôle la vitesse d'apprentissage et le compromis
choisie
¾ Architecture de la carte spécifiée => revient à choisir le nb de neurones et définir
stabilité/plasticité
les relations de voisinage ¾ h trop petit : le modèle ne s'adapte pas assez aux données =>
z Boucle de base : apprentissage très lent
¾ 1. Lire un vecteur d'entrée x ¾ h trop grand : apprentissage rapide, mais risque d'instabilité =>
¾ 2. Repérer le neurone k le plus proche de x (dist. euclidienne) peut ne jamais converger
||x - wk|| < || x - wi|| pour tout i = k
¾ 3. Mise à jour : tirer vers x les neurones i = {le gagnant k et les autres neurones
du voisinage centré sur k} z L'idée : focaliser rapidement sur une région prometteuse
w'i = wi + h*L(wi , wk)(x - wi) de l'espace d'hypothèses, puis affiner la recherche dans
z L'importance du déplacement : régie par 2 paramètres: cette région
¾ le pas d'apprentissage h ¾ choisir h grand au départ et le réduire graduellement
¾ la fonction de voisinage L(.) (souvent gaussienne)
¾ l'apprentissage s'arrête dès que h = 0
z La fonction de voisinage entre le neurone gagnant m k et un neurone z Illustre la robustesse des SOM aux données manquantes
m i doit décroître monotoniquement avec la distance entre les deux. z Données : statistiques de la Banque Mondiale
z Caractérisée par une forme et une largeur sigma z 126 pays, 39 indicateurs économiques (relatifs à la population)
¾ 78 pays utilisés pour entraîner le SOM
¾ autres pays ( > 11 valeurs manquantes) : intégrés dans la carte après
apprentissage
z Visualisation des groupements dans les SOM
¾ sigma grand (grand voisinage) => beaucoup de neurones se rapprochent ¾ utiliser des niveaux de gris pour représenter les distances relatives entre
en même temps de la donnée actuelle vecteurs
9
SOM : bilan Clustering conceptuel
z Robuste aux données incomplètes z Le clustering est réalisé en fonction d’un modèle mathématique
z On construit le treillis de concepts fréquents
z Ajustable aux très grandes bases de données : ¾ Hiérarchie conceptuelle inhérente au données
¾ établissement d'une carte des 78 000 protéïnes de Swiss-Prot en ¾ Chaque concept est un couple : (Extension,Intension)
2000 z L’extension est un ensemble d’objets
z L’intention est l’ensemble maximal d’attributs communs aux objets
¾ regroupement d'environ 7 millions de documents (demandes de ¾ Les concepts sont déterminés par la fermeture de Galois
brevets) z Intension : ensemble fermé d’attributs (ensemble maximal d’attributs commun
aux objets)
z Essentiellement un outil d'analyse exploratoire et de z Extension : ensemble fermé d’objets (si on ajoute un objet, on diminue la taille
de l’extension)
visualisation. z Un concept est fréquent si son extension contient un nombre d’objets
supérieur à un seuil minsup
z Tentatives pour utiliser les SOM à des fin prédictives non
¾ Les concepts fréquents constituent les clusters
concluantes. cf. Michie et al. 1994 (Projet StatLog)
10