Classification ascendante hiérarchique
Transcription
Classification ascendante hiérarchique
Classification non supervisée hiérarchique 5MS04 - Analyse des donnees Master 2 spécialité Statistiques Université Pierre et Marie Curie B. Michel 1/14 Introduction I Données : X = {x1 , . . . , xn } xi ∈ X un espace muni d’une dissimilarité d. I Une des faiblesses de l’approche k -means : les partitions obtenues en faisant varier k n’ont a priori aucun lien (d’inclusion) entre les elles. I La classification hierarchique au contraire permet de “hiérarchiser les données", c’est à dire de les regrouper progressivement à l’aide d’une suite de partitions emboîtées . 7 6 5 4 3 2 1 d e a b c 2/14 Hiérarchie Définition : Hiérarchie Une hiérarchie H est un ensemble de parties de X satisfaisant : 1. ∀1 ≤ i ≤ n, {xi } ∈ H 2. X ∈ H 3. ∀A, B ∈ H, A ∩ B = ∅ ou A ⊂ B ou B ⊂ A Exemple : {{1}, {2}, {3}, {4}, {1, 2}, {3, 4}, {1, 2, 3, 4}} est une hiérarchie de {1, 2, 3, 4}. Définition : Hiérarchie indicée Une hiérarchie indicée est un couple (H, h) où H est une hiérarchie et h : H → R+ satisfait : 1. ∀A ∈ H, h(A) = 0 ⇔ A est un singleton 2. ∀A, B ∈ H, A 6= B, A ⊂ B ⇒ h(A) ≤ h(B) 3/14 Représentation par dendrogramme d’une hiérarchie indicée 7 H = {{a}, {b}, {c}, {d}, {e}, {d, e}, {a, b}, {a, b, d, e}, {a, b, c, d, e}} 6 5 h({x}) = 0, ∀x ∈ {a, b, c, d, e} 4 h({d, e}) = 0.5 h({a, b}) = 3 3 h({a, b, d, e}) = 4 2 h({a, b, c, d, e}) = 7 1 d e a b c 4/14 Algorithme général de CAH 1. Initialisation : on part de la partition en singletons Cn = {{x1 }, . . . , {xn }} 2. Étapes agrégatives : partant d’une partition CK = {C1 , . . . , CK } en K classes, on agrège les deux classes Ck et Ck 0 qui minimisent une mesure d’agrégation D(Ck , Ck 0 ) : Ck ∪k 0 = Ck ∪ Ck 0 . On obtient ainsi une partition en K − 1 classes 3. On recommence l’étape d’agrégation jusqu’à obtenir une partition en une seuleMéthodes classe hiérarchiques Les approches de type CAH (Classification Ascendante Hiérarchique) Hiérarchie (indicée) C10 i C8 C10 C5 C9 C2 C4 C9 C8 C6 C5 C3 C2 C6 C7 C3 C1 C7 C4 C1 5/14 Mesures d’agrégation entre classes Lien simple (Single linkage) D(Ck , Ck 0 ) = min i ∈ Ck , `∈ Ck 0 d(xi , x` ) I Classes avec des diamètres très différents I Effet de chaînage : tendance à l’agrégation plutôt qu’à la création de nouvelles classes I Sensibilité aux individus bruités 6/14 Mesures d’agrégation entre classes Lien complet (Complete linkage) D(Ck , Ck 0 ) = max d(xi , x` ) i ∈ Ck , `∈ Ck 0 I Crée des classes compactes (contrôle du diamètre) : cette fusion engendre l’accroissement le plus faible des diamètres I Pas de contrôle de la séparation : classes arbitrairement proches I Sensibilité aux individus bruités 7/14 Mesures d’agrégation entre classes Lien moyen (Average linkage) D(Ck , Ck 0 ) = XX 1 d(xi , x` ) |Ck ||Ck 0 | i ∈ C `∈ C k k0 I Compromis entre les deux liens précédents : bon équilibre entre séparation des classes et diamètre des classes I Tendance à produire des classes de variance proche 8/14 Mesures d’agrégation entre classes Distance de Ward dans le cas euclidien D(Ck , Ck 0 ) = |Ck ||Ck 0 | d(mk , mk 0 )2 n(|Ck | + |Ck 0 |) où mk (resp. mk 0 ) centre de gravité de Ck (resp. Ck 0 ) et d est une distance euclidienne. I Tendance à construire des classes ayant des effectifs égaux pour un niveau de hiérarchie donné I Favorise les classes sphériques 9/14 Méthode de Ward Dans le cas euclidien : Proposition Soit PK = {C1 , . . . , CK } une partition des données et soit k 6= k 0 . Si l’on rassemble les deux classes Ck et Ck 0 en une classe notée Ck ∪k 0 alors l’inertie interclasse diminue (l’inertie intraclasse augmente) de : |Ck ||Ck 0 | d(mk , mk 0 )2 . n(|Ck | + |Ck 0 |) La méthode de Ward consiste à choisir à chaque étape les deux classes dont le regroupement implique une augmentation minimale de l’inertie intraclasse. 10/14 Indicer la hiérarchie En général on indice la hiérarchie en utilisant la distance définie entre classes : ∀A, B ∈ H, h(A ∪ B) = D(A, B) Si (H, h) ainsi définie ne vérifie pas les propriétés d’une hiérarchie indicée, on peut toujours utiliser la relation suivante : ∀A, B ∈ H, h(A ∪ B) = max [D(A, B), h(A), h(B)] 11/14 Coupure du dendrogramme I La coupure du dendrogramme définit le clustering final : il suffit de considérer les sous arbres du dendrogramme ainsi défini. Animation I On peut définir la coupure du dendrogramme en déterminant à l’avance le nombre de classes dans lesquels on désire répartir l’ensemble des données I Critère de silhouettes (voir slides k-means). I Critères fondés sur les inerties. 12/14 Propriétés de la CAH I Méthode flexible pour le niveau de finesse de la classification I Les partitions successives sont emboîtées I Prise en compte facile de distances et d’indices de similarité de n’importe quel type I Il faut un critère pour choisir à quel niveau “couper" l’arbre I coût algorithmique élevé : de O(n2 ) à O(n3 ) pour les cas les plus défavorables. 13/14 gp2 gp2 gp2 gp2 gp2 gp2 gp2 gp2 gp2 gp2 gp4 gp4 gp4 gp4 gp4 gp4 gp4 gp4 gp4 gp4 gp1 gp1 gp1 gp1 gp1 gp1 gp1 gp1 gp1 gp1 gp3 gp3 gp3 gp3 gp3 gp3 gp3 gp3 gp3 gp3 0 Height 5 10 15 Cluster Dendrogram hclust (*, "ward") Quitter l’animation 14/14