
ne donne pas des résultats très concluants avec des points éparses en plus des ag-
grégats. Pour surmonter cette difficulté, s’ils recherchent à classifier kaggrégats,
ils coupent l’arbre hierarchique pour avoir p×kaggrégats (p∈ {1,3,6}), puis
ils gardent les kles plus peuplés et effectuent le K-means dessus. La méthode
fonctionne le mieux en prenant p= 3.
3 Algorithme A
En seconde partie, les auteurs présent cet algorithme, qui sachant kpermet de
trouver des aggrégats stables. Pour cela, on applique le K-means sur Bsous-
échantillons des données à étudier (par exemple 70%). Ensuite, on applique la
classification aux données et pour chaque sous-échantillons on établit des ma-
trices de co-appartenance. La moyenne de ces matrices donne une estimation
de la probabilité de deux candidats d’appartenir au même aggrégats. A partir
de cette matrice, dont on seuille les valeurs à une valeur proche de 1, on obtient
des candidats d’aggregats resserés, les TightClusters, soit par recherche de com-
posante connexe (analogique au Single-linkage), soit par recherche des cliques
maximales (analogique au Complete-linkage).
Le sous-échantillonage permet de vérifier que les aggregats formés ne conti-
ennent pas de points éparpillés.
4 Recherche des TightClusters
On applique sur les données l’algorithme avec des valeurs successives de kpar-
tant de k0. On compare les qmeilleurs clusters de deux ksuccessifs et si on
trouve deux clusters de la série ket k+ 1 donc la similarités est proche de 1
alors on identifie un TightClusters et on recommence sur les données restantes,
en diminuant k0de 1. On s’arrête lorsque k0atteind une valeur seuil -par
exemple 5- ou bien lorsqu’on obtient le nombre de clusters désirés.
Comme la philosophie de la méthode est de sélectionner les aggrégats au
fur et à mesure, il est logique qu’on cherche à faire un algorithme dépendant le
moins possible du paramètre k, d’où la recherche de stabilité sur au moins deux
ksuccessifs.
5 Implémentation
Nous avons codé une implémentation complète en C++ (basée sur le K-means,
comme dans l’article). Seulement, les auteurs n’indiquent pas de méthode
calcul pour le passage de la matrice de coappartenance aux candidats. Nous
avons tenté d’implémenter les deux méthodes, mais la lenteur de la recherche
des cliques la rend inexploitable. Peut-être qu’une méthode génétique ou plus
avancée qu’un simple Backtracking récursif l’aurait rendu plus rapide.
Autant le fait d’incrémenter ksemble fondamental pour avoir un critère de
stabilité des aggrégats, autant le fait de décrémenter k0n’est pas forcément
justifié. On a donc rajouté dans notre implémentation un paramètre nkqui
désigne le nombre de fois qu’on peut repartir de k0avant de le décrémenter.
Ainsi le nombre d’aggrégats à trouver n’est plus forcément relié aux valeurs
initiales et finales de k0.
2
Master MVA - Traitement de l'Information en Biotechnologie