SELF-TUNING SPECTRAL CLUSTERING
Transcription
SELF-TUNING SPECTRAL CLUSTERING
SELF-TUNING SPECTRAL CLUSTERING Introduction Hypothèses de la méthode Solutions adoptées Jeux de données traitées Perspectives pour ClasSpec Laurent BUSIN 1 INTRODUCTION Méthodes courrament utilisées : L'algorithme des K-means, Les modèles de mixtures EM. Domaine de validité de ces méthodes : Les données analysées sont correctement organisées. Limites de ces méthodes : La qualité des résultats diminue grandement lorsque les données analysées ont une structure complexe dans l'espace d'analyse. Méthodes de classification spectrale. 2 Hypothèses de la méthode Algorithme de Ng-Jordan-Weiss : l Soit un ensemble de n points S={s1,...,sn} à classer dans ℝ en C classes. n×n 1- Contruire la matrice d'affinité A∈ℝ définie par Aij=exp(-d2(si,sj)/σ2) pour i≠j et Aij=0, ou d(si,sj) est la distance euclidienne entre les vecteurs si et sj,et ou σ est un paramètre d'échelle. n 2- Définir la matrice diagonale D avecD ii =∑ j =1 Aijet on construire la matrice d'affinité normalisée L=D-1/2AD-1/2. 3- Fournir manuellement le nombre de classes C. 4- Trouver x1,...,xC, les C plus grands vecteurs propres de L et construire la matrice n×C X=[x1,...,xC]∈ℝ ] 5- Re-normaliser les lignes de X pour avoir la matrice Y ∈ℝ n ×C tel que Yij=Xij/(Σj x2ij)1/2 C 6- Traiter chaque ligne de Y comme un point dans ℝ et trouver les clusters en utilisant l'algorithme de k-means. 7- Assigner le point original si à la classe C si et seulement si la ième ligne de la matrice Y est assignée à la classe C. 3 Hypothèses de la méthode La méthode utilisée nécessite l'ajustement de 2 paramètres : σ : le paramètre d'échelle C : le nombre de classes Objectif de la publication : Estimer automatiquement ces deux paramètres afin de rendre la méthode de classification non paramétrique et par conséquent non supervisée. 4 SOLUTIONS ADOPTEES Estimation du paramètre d'échelle σ : Solution 1 : Ng et al. [5] proposent d'utiliser des σ croissants et de sélectionner l'itération pour laquelle les lignes de la matrice Y ont le moins de “distortion”. Inconvénients : Explosion du temps de calcul. Une seule valeur de σ n'est pas obligatoirement suffisante. 5 SOLUTIONS ADOPTEES Estimation du paramètre d'échelle σ : Solution 2 (celle de l'auteur): Calculer un σi local pour chaque point si. Calcul de la matrice d'affinité : Aij=exp(-d2(si,sj)/σ2) La distance entre les points si et sj peut être “vue” comme étant d(si,sj)/σi et la distance entre les points sj et si peut être “vue” comme étant d(sj,si)/σj. Matrice d'affinité reformulée : Aij=exp(-d2(si,sj)/σiσj). Evaluation du paramètre d'échelle local σi du point si : La sélection du paramètre d'échelle est déterminé à partir de l'analyse des voisins du point si avec la relation σi=d(si,sK) ou sK est le Kème voisin du point si. L'auteur préconise la valeur K=7. 6 SOLUTIONS ADOPTEES Evaluation du nombre de clusters C : Solution 1 : Analyse des λ En théorie : Compter le nombre de λ égales à 1. En pratique : Prendre toutes les λ au-dessus d'un seuil. Regarder la différence entre deux λ successives. (Inconvénient : le saut entre la Cème et la C+1ème λ peut-être grand ou petit. 7 SOLUTIONS ADOPTEES Evaluation du nombre de clusters C : Solution 2 : Analyse des vecteurs propres hypothèse : La matrice est C block-diagonale Les points transformés sont alignés sur C vecteurs propres orthogonaux. Il existe une base orthogonale dans cet espace tel que : les points d'une même classe n'ont qu'une coordonnée non nulle (sur 1 vecteur propre). Retrouver cette base à partir de rotation : Z=XR avec : X la matrice des vecteurs propres, 2 R la matrice de rotation. Z ij n C Déterminer C en minimisant la fonction coût : J =∑i =1 ∑ j =1 M 2i 8 JEUX DE DONNEES TRAITEES La méthode proposée a été utilisé pour : Classer des données synthétiques, http://www.vision.caltech.edu/lihi/Demos/SelfTuningClustering.html Segmenter des images à NdG. http://www.eecs.berkeley.edu/Research/Projects/CS/vision/grouping/segbench/B 9 PERSPECTIVES POUR CLASPEC Intéressant pour faire une méthode non supervisée. Amélioration : Déterminer K (=7) par un estimateur robuste 10